Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 6, 2026

Syncs manifest-format.mdx with changes from dotnet/docs-aspire#5317.

Changes

  • Encoded parameter resources: Added documentation for annotated.string type with filter support
    • Projection naming: {parameter}-{format}-encoded
    • Example: URI-encoded password projection with filter: "uri"
    • Original parameters preserved for secret metadata

Note: Both environment variable formats are present in the documentation:

  • Original format: APISERVICE_HTTP / APISERVICE_HTTPS
  • Protocol-scoped format: services__apiservice__http__0 / services__apiservice__https__0

Example

"redis-password-uri-encoded": {
  "type": "annotated.string",
  "value": "{redis-password.value}",
  "filter": "uri"
}
Original prompt

Please create a PR to update the manifest-format.mdx based on this PR: dotnet/docs-aspire#5317


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

- Remove deprecated APISERVICE_HTTP and APISERVICE_HTTPS environment variables
- Update environment variable keys to include protocol in the path (services__apiservice__http__0 and services__apiservice__https__0)
- Add documentation for encoded parameters with annotated.string type and filter support
- Add example showing URI-encoded password projection

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Copilot AI changed the title [WIP] Update manifest-format.mdx based on PR #5317 Update manifest format docs for protocol-scoped service bindings and encoded parameters Jan 6, 2026
Copilot AI requested a review from IEvangelist January 6, 2026 19:59
Copy link
Member

@IEvangelist IEvangelist left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please address my feedback

Per feedback, kept APISERVICE_HTTP/APISERVICE_HTTPS variables.
Only added new documentation for annotated.string type with filter support.

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 6, 2026

Please address my feedback

Addressed all feedback in commit b5f0344. Reverted socials.config.ts and kept the APISERVICE_HTTP/APISERVICE_HTTPS variables while adding only the new encoded parameters documentation.

Addresses feedback to undo the unintended formatting change.

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Copilot AI changed the title Update manifest format docs for protocol-scoped service bindings and encoded parameters Add encoded parameters documentation to manifest format Jan 6, 2026
Copilot AI requested a review from IEvangelist January 6, 2026 21:40
@IEvangelist IEvangelist marked this pull request as ready for review January 7, 2026 12:56
Copilot AI review requested due to automatic review settings January 7, 2026 12:56
@IEvangelist IEvangelist enabled auto-merge (squash) January 7, 2026 12:56
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds documentation for encoded parameter resources in the Aspire deployment manifest format, syncing with changes from dotnet/docs-aspire#5317. The documentation explains how filtered/encoded parameter values are represented in the manifest using the new annotated.string resource type.

Key changes:

  • Documents the annotated.string resource type for representing filtered parameter projections
  • Explains the naming convention for encoded parameters ({parameter}-{format}-encoded)
  • Provides an example of URI-encoded password projection

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- The resource type is `"annotated.string"`.
- `value` references the raw parameter value (`{parameter-name.value}`).
- `filter` names the formatter (e.g., `"uri"`, ...).
- The resource name is derived from the parameter name and format (`{parameter}-{format}-encoded`). Names are deduplicated if multiple projections share the same base.
Copy link

Copilot AI Jan 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The phrase "Names are deduplicated if multiple projections share the same base" is ambiguous and could confuse readers. It's unclear what happens during deduplication (e.g., are suffixes added like -1, -2?) and when this scenario would occur. Consider either removing this sentence if it's an edge case that rarely happens, or providing a concrete example showing how names are deduplicated.

Suggested change
- The resource name is derived from the parameter name and format (`{parameter}-{format}-encoded`). Names are deduplicated if multiple projections share the same base.
- The resource name is derived from the parameter name and format (`{parameter}-{format}-encoded`).

Copilot uses AI. Check for mistakes.

The preceding JSON snippet shows the `inputs` field for a resource that has a `connectionString` field. The `password` input parameter is a string type and is marked as a secret. The `default` field is used to specify a default value for the input parameter. In this case, the default value is generated using the `generate` field, with random string of a minimum length.

When a parameter is using a filter (for example `uri`), the manifest contains an additional resource that represents the filtered projection.
Copy link

Copilot AI Jan 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two clarity issues in this sentence:

  1. The term "projection" is introduced without explanation. Readers may not understand what "filtered projection" means in this context. Consider using simpler terminology like "filtered version" or "encoded representation", or add a brief explanation.
  2. The phrase "When a parameter is using a filter" could be clearer. Consider rephrasing to "When a filter is applied to a parameter" to more accurately describe the relationship.

Copilot uses AI. Check for mistakes.
@IEvangelist IEvangelist merged commit 10fc064 into main Jan 8, 2026
12 checks passed
@IEvangelist IEvangelist deleted the copilot/update-manifest-format-docs branch January 8, 2026 16:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants