Skip to content

Commit 114d763

Browse files
denelonCopilot
andcommitted
Update attribution language: manifest author, not package publisher
Manifests in the WinGet community repository are frequently authored by community contributors rather than the software publisher. The attribution language throughout the spec now reflects this distinction. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent d06f500 commit 114d763

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

doc/specs/#3483 - UserMessages.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ Pre-action messages are displayed **before** the operation begins and represent
107107
**Interactive mode (default):**
108108

109109
```
110-
The following information has been provided by the package publisher:
110+
The following information has been provided by the manifest author:
111111
112112
This package requires 2 GB of disk space and will modify your PATH.
113113
@@ -121,15 +121,15 @@ The user is prompted to confirm. Entering `N` cancels the operation. Entering `Y
121121
The pre-action message is displayed (rendered to the output stream) but no prompt is shown and the operation proceeds automatically. This ensures automation pipelines see the message in logs without being blocked.
122122

123123
```
124-
The following information has been provided by the package publisher:
124+
The following information has been provided by the manifest author:
125125
126126
This package requires 2 GB of disk space and will modify your PATH.
127127
128128
Proceeding automatically (non-interactive mode)...
129129
```
130130

131131
> [!NOTE]
132-
> **Design rationale:** Pre-action messages are informational, not contractual agreements. Unlike license terms (which require explicit acceptance via `--accept-package-agreements`), user messages are publisher-authored guidance. The `--disable-interactivity` flag is the appropriate suppressor because it already governs all interactive prompts in WinGet. A new flag is not warranted.
132+
> **Design rationale:** Pre-action messages are informational, not contractual agreements. Unlike license terms (which require explicit acceptance via `--accept-package-agreements`), user messages are manifest-author-provided guidance. The `--disable-interactivity` flag is the appropriate suppressor because it already governs all interactive prompts in WinGet. A new flag is not warranted.
133133
134134
#### Post-Action Messages (PostInstall, PostUpgrade, PostUninstall)
135135

@@ -243,7 +243,7 @@ When running interactively in a PowerShell session, cmdlets follow the same patt
243243
```powershell
244244
PS> Install-WinGetPackage -Id Publisher.ExampleApp
245245
246-
The following information has been provided by the package publisher:
246+
The following information has been provided by the manifest author:
247247
248248
This package requires 2 GB of disk space and will modify your PATH.
249249
@@ -259,7 +259,7 @@ When running non-interactively (e.g., in a script with no host, or when the user
259259

260260
```powershell
261261
PS> Install-WinGetPackage -Id Publisher.ExampleApp -Force -Verbose
262-
VERBOSE: Publisher message (PreInstall): This package requires 2 GB of disk space and will modify your PATH.
262+
VERBOSE: Manifest author message (PreInstall): This package requires 2 GB of disk space and will modify your PATH.
263263
```
264264

265265
Post-action messages are written to the information stream (`Write-Information`) so they appear by default but can be suppressed with `-InformationAction SilentlyContinue`.
@@ -281,7 +281,7 @@ This allows scripts to programmatically inspect messages after an operation:
281281
```powershell
282282
$result = Install-WinGetPackage -Id Publisher.ExampleApp -Force
283283
if ($result.UserMessages.PostInstall) {
284-
Write-Host "Note from publisher: $($result.UserMessages.PostInstall)" -ForegroundColor Yellow
284+
Write-Host "Note from manifest author: $($result.UserMessages.PostInstall)" -ForegroundColor Yellow
285285
}
286286
```
287287

@@ -397,14 +397,14 @@ Existing manifests are unaffected. `UserMessages` is entirely optional.
397397

398398
### Pre-Action Message Display
399399

400-
Pre-action messages are displayed in a visually distinct block before the operation begins. The message is attributed to the package publisher to establish trust context.
400+
Pre-action messages are displayed in a visually distinct block before the operation begins. The message is attributed to the manifest author to establish trust context.
401401

402402
```
403403
Found Example App [Publisher.ExampleApp] v2.0.0
404404
This application is licensed to you by its owner.
405405
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
406406

407-
The following information has been provided by the package publisher:
407+
The following information has been provided by the manifest author:
408408

409409
This package requires 2 GB of disk space and will modify your PATH.
410410

@@ -423,7 +423,7 @@ Successfully installed Example App [Publisher.ExampleApp] v2.0.0
423423
424424
### Message Attribution
425425
426-
All messages include clear attribution language ("provided by the package publisher") to ensure users understand the content originates from the manifest author, not from Microsoft or WinGet. This is critical for trust and security.
426+
All messages include clear attribution language ("provided by the manifest author") to ensure users understand the content originates from the manifest author, not from Microsoft or WinGet. This distinction is important because in the WinGet community repository, manifests are frequently authored by community contributors rather than the software publisher. This is critical for trust and security.
427427
428428
### Localization
429429
@@ -441,7 +441,7 @@ Messages in locale manifests override those in the defaultLocale manifest on a p
441441
### Security
442442
443443
- **Phishing and social engineering:** Pre-action messages create a stronger social-engineering surface than post-action notes because they appear before the user commits to an action. A malicious manifest author could craft a message like "Enter your password at https://evil.example.com to continue." Mitigations:
444-
- Clear attribution language ("provided by the package publisher") helps users assess trust.
444+
- Clear attribution language ("provided by the manifest author") helps users assess trust.
445445
- Content validation in the winget-pkgs pipeline strips or rejects ANSI escape sequences and control characters.
446446
- The winget-pkgs community review process provides human review of manifest content.
447447
- Future enhancement: automated content moderation for suspicious URLs or social-engineering patterns.

0 commit comments

Comments
 (0)