Repository navigation
🚀 [Feature]: Consumer upgrades use complete release-range evidence - #205
Marius Storhaug (MariusStorhaug) wants to merge 15 commits into
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
Required discovery wiring, pointer skill, and version synchronization remain incomplete.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Adds a canonical staged procedure for evidence-based consumer upgrades.
Changes:
- Defines baseline-to-target upgrade stages, evidence, and quality gates.
- Adds site navigation and index discovery.
- Documents required upgrade outputs and validation.
File summaries
| File | Review |
|---|---|
src/zensical.toml |
Adds navigation. Moderate: Required workflow links, pointer skill, and synchronized plugin/marketplace versions are missing. |
src/docs/Ways-of-Working/index.md |
Adds the generated index entry. Moderate: No corresponding discoverable pointer skill exists. |
src/docs/Ways-of-Working/Consumer-Upgrades.md |
Defines the procedure. Nits: Existing upgrade entry points and connected readiness/completion criteria are not yet linked or aligned. |
Review details
Suppressed comments (1)
src/docs/Ways-of-Working/Consumer-Upgrades.md:19
- The procedure is not yet connected from the existing upgrade entry points:
Fleet-Orchestration.md, the dependency-updates spec/design, and the downstream-release-propagation spec/design contain no link to it and still describe their own narrower bump/release-note flow. Readers entering through those workflows therefore will not be routed through the required complete baseline-to-target traversal. Wire those surfaces to this canonical procedure as required by the delivery contract.
[Contribution Workflow](Contribution-Workflow.md), and each consumer in a
[fleet](Fleet-Orchestration.md) establishes its own baseline and applicability.
- Files reviewed: 7/7 changed files
- Comments generated: 3
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
🟡 Changes recommended
Moderate workflow contradictions remain around automation gating, no-upgrade paths, immutable identities, and post-merge completion ownership.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
Suppressed comments (2)
src/docs/Ways-of-Working/Consumer-Upgrades.md:202
- These exit criteria cannot be represented by the procedure as written. The ordinary workflow automatically closes the upgrade issue when the PR merges, but this stage says the upgrade is not complete until later publication/deployment evidence exists and that, before then, the issue must report a blocker. Specify which still-open issue owns the post-merge milestone (or how the delivery leaf remains/reopens open), otherwise the native issue state reports completion too early.
**Exit criteria.** The reviewed consumer change is merged, required publication
or deployment is evidenced where applicable, and the completion gate holds.
Before then, the issue and PR report the actual milestone and any blocker.
src/docs/Ways-of-Working/Consumer-Upgrades.md:77
- The target repeats the unconditional source-SHA requirement, so an image or package target with an authoritative digest but no source-commit mapping cannot pass Stage 2 even though those artifact types are explicitly in scope. Allow the immutable identity form defined by the producer ecosystem instead of always requiring both a source SHA and artifact identity.
API's first result or the most recently published timestamp. Record its
version, release link, full source SHA, and artifact identity where
applicable. Do not silently retarget when a newer release appears.
- Files reviewed: 17/17 changed files
- Comments generated: 5
- Review effort level: Balanced
There was a problem hiding this comment.
🔵 Needs a closer look
Three documented control-flow inconsistencies remain unresolved.
Review details
Suppressed comments (3)
src/docs/Capabilities/downstream-release-propagation/design.md:24
- The documented control flow still makes delegation unconditional (
issue → delegate → qualify), while the new qualification section says the notifier can qualify and terminate before delegation. That pre-delegation no-upgrade path cannot occur in this diagram; the introduction also assigns issue creation to the agent even though both delegation modes require the issue to exist before the agent starts. Please either add an explicit notifier-qualification branch (delegating only when upgrade work or agent-side qualification is needed) or consistently make all qualification delegated.
fan --> issue["Create or reuse Task / Bug delivery issue"]
issue --> delegate["Create agent task in dependent<br/>self-contained prompt with full context"]
delegate --> qualify{"Target upgrades actual baseline?"}
src/docs/Capabilities/downstream-release-propagation/design.md:24
- The primary flow still models only Task-first: it always creates an Agent Task after the issue, while the Delegation section says Issue-first is the default and uses the issue itself as the request (lines 108–124). The introduction also assigns issue creation to the agent even though both modes require the leaf to exist first. Make the introduction and flow mode-neutral, or branch here into Issue-first pickup versus Task-first Agent Task creation, so implementers can tell which component owns each step.
fan --> issue["Create or reuse Task / Bug delivery issue"]
issue --> delegate["Create agent task in dependent<br/>self-contained prompt with full context"]
delegate --> qualify{"Target upgrades actual baseline?"}
src/docs/Ways-of-Working/Fleet-Orchestration.md:185
- This PR-less terminal path is unreachable in the documented fleet model: lines 43-44 define every slice as an issue plus PR, and the diagram/step 2 unconditionally create a branch and draft PR, while qualification is deferred to step 3. Move baseline/target qualification before branch creation, make the PR conditional in the slice definition, and branch queued issues to
Not neededwhen appropriate.
An evidenced [no-upgrade outcome](Consumer-Upgrades.md#stage-2-fix-the-target-and-release-path)
ends without manufacturing a branch or PR. Apply the common procedure's issue
disposition; the fleet reports *Not needed*, not a delivered upgrade.
- Files reviewed: 19/19 changed files
- Comments generated: 0 new
- Review effort level: Balanced
Delivery B verification recordCandidate:
Review The completion-owning issue is #203, assigned to MariusStorhaug. Required Pages publication is not inferred from merge: if automatic PR closure precedes that evidence, the owner reopens the Task until the outcome is recorded. No settings, other branches, pilot consumers, or historical release records are changed. Review Review |
There was a problem hiding this comment.
🟡 Changes recommended
The critical instruction-injection boundary in delegated release payloads must be addressed before approval.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 19/19 changed files
- Comments generated: 1
- Review effort level: Balanced
There was a problem hiding this comment.
🔵 Needs a closer look
A critical propagation conflict and two moderate contract gaps remain unresolved.
Review details
Suppressed comments (2)
Previously missed (1) — in code that hasn't changed since the last review.
src/docs/Capabilities/downstream-release-propagation/design.md:202
- The create-agent-task endpoint requires the fine-grained repository permission at write level; saying only “Agent tasks permission” leaves a read-only PAT looking compliant even though task creation will return 403. Specify Agent tasks: write for Task-first credentials.
src/docs/Capabilities/dependency-updates/design.md:127
- This permits an updater PR to remain non-draft before its adoption evidence is complete, but
Definition-of-Ready-and-Done.md:26,51defines the non-draft state itself as the review-readiness signal and requires the PR to stay draft while any gate is open. A required check can block automation and merge, but it cannot prevent this non-draft PR from entering reviewers' queues as “ready.” Require the update workflow to create or immediately convert the PR to draft until adoption verification passes, or align the central readiness contract with a different explicit signal.
The updater may open a non-draft PR, so setting it to draft later is not the
binding control. Until evidence verification is enforced through the required
check, update PRs remain outside automated readiness, approval, and merge.
- Files reviewed: 19/19 changed files
- Comments generated: 1
- Review effort level: Balanced
There was a problem hiding this comment.
🟡 Changes recommended
The critical propagation retry/idempotency issue must be resolved before approval.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 19/19 changed files
- Comments generated: 1
- Review effort level: Balanced
There was a problem hiding this comment.
🟡 Changes recommended
The Task-first lifecycle omits two documented Agent Tasks API states, leaving retry behavior undefined.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 19/19 changed files
- Comments generated: 1
- Review effort level: Balanced
There was a problem hiding this comment.
🟡 Changes recommended
The Task-first API flow and propagation-token permissions do not yet support the documented PR handoff reliably.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 19/19 changed files
- Comments generated: 2
- Review effort level: Balanced
PR Format describes the actual title and complete body: audience-first results, release-range-first analysis, complete adoption/compatibility evidence, one announcement boundary and conditional release decisions. Repository file policy is owned separately by Repository/Organization/Governance guidance, not by the PR Format page. Authors use canonical guidance for the resulting record. Repository standards exclude GitHub PR-template files from ordinary and central-default sources, while retaining other community defaults, genuine repository-specific contribution instructions and supported product-integration contracts. This delivery changes guidance and checks in MSXOrg/docs; separate owners remove their actual source/consumer files. No publisher, live caller, artifact, tag, governance setting or release history is changed here. <!-- ANNOUNCEMENT STOP --> ## Changed: PR Format focuses on the complete authored record Use one short reader-facing title and an audience-first summary, then ordered non-empty Breaking, Removed, New, Changed and Fixed results. Explain what changed, why, affected supported uses, compatibility and complete adoption actions or a justified no-action result in each result's prose. Keep prerequisites, ordering, verification and mandatory intermediate operations in the record itself, with supporting evidence and references scoped to the result they verify. The complete in-document example is named **Complete description example**. Its anchor is now `#complete-description-example`, replacing `#copy-the-complete-template`. The single announcement boundary and full body remain unchanged in purpose; announcements do not truncate the published note. Maintained links adopt the new anchor. Existing skills still route to the same canonical PR Format page and its release-coverage analysis; no additional skill, file distributor or plugin installation is required for this correction. PR Format contains no repository PR-template-file discussion: no file locations, copying/inheritance, local exceptions, presence/absence policy or deletion history. Those rules belong to the repository standards below. Product integration-template compatibility evidence remains distinct and required where a delivered result affects a supported integration. <details> <summary>Technical details</summary> | Changed surface | Standards checked | Framework docs checked | Result | | --- | --- | --- | --- | | PR Format complete example, record evidence and anchors | Natural Language, Markdown, Documentation Model, PR Format | Complete consumer record and source-range authoring | Aligned | | Release Management result evidence | Specification/design separation, Markdown | Actual title/body/source coverage, retained product-integration compatibility | Aligned | | Repository-specific contribution PR-format links | Markdown, canonical ownership | Full description example; existing local build/index/link instructions | Aligned | | Record-format regression block | PowerShell/Pester, shared analyzer, testing baseline | Required structure, one boundary, five classifiers/evidence prompts and release-first order | Aligned | The tests separate record quality from repository file policy. Record tests verify the complete example and ordered classifiers, marker count, publication/candidate identity fields, five scoped release-evidence prompts, release-first analysis, and five affected-product integration prompts. They also reject GitHub PR-template-file discussion on this page without rejecting legitimate product integration contracts. File-policy tests inspect the owning repository/organization/governance pages, not PR Format. Five ownership/naming cases failed before the refinement and pass after it. The old example link is a documentation-anchor transition, not a runtime migration. Required old-to-new consumer actions still belong in the relevant release record; product docs retain supported target-state usage rather than a migration hierarchy or changelog. </details> ## Changed: Repository standards require canonical adherence without PR-template files Repository Standard owns the no-file rule for every MSX repository type and the special `MSXOrg/.github` and `PSModule/.github` sources. GitHub PR-template files, multiple-template directories, generated copies and local exceptions are not part of this contract. Organization Standard and Repository Governance reference that one owner; their former mandatory default-file rows and local PR-template exception are removed. Authors and validators verify the actual title, complete body, source coverage, compatibility/adoption evidence and normal review gates. An inherited scaffold, file-presence check or similarity to a central copy does not prove adherence. The complete canonical record example remains in the docs. Other code-of-conduct/security/support/contribution/issue-intake defaults and genuine repository-specific contribution instructions are unaffected; this is not an organization-wide community-file cleanup. Separate source and consumer owners remove existing PR-template files and revise their source docs/check expectations. This PR introduces no distributor, physically edits none of their workspaces and claims no pending deletion is merged. A missing file never substitutes for Markdown/source/head/containment validation or complete PR record quality. <details> <summary>Technical details</summary> | Changed surface | Standards checked | Framework docs checked | Result | | --- | --- | --- | --- | | Repository Standard no-file policy and PR/contribution guidance | Standard ownership, Markdown, Natural Language | One policy owner; canonical actual-record verification | Aligned | | Organization Standard community/review/default rows | Standard ownership, Markdown | Other community defaults preserved; PR-file requirements/exceptions removed | Aligned | | Repository Governance defaults and reconciliation evidence | Design ownership, Markdown | Required-source row removed without changing live controls | Aligned | | Markdown linter comment | YAML/Markdown standards | Only obsolete PR-template commentary changed; parsed configuration values are identical | Aligned | | Repository-policy regression block | PowerShell/Pester, source inventory | Own-policy links, no tracked PR file, case/extension/directory detection, unaffected issue forms | Aligned | The corrected regression checks were run against exported frozen guidance with no commits: five actual policy cases failed while eleven preservation/path cases passed. Current source checks recognize uppercase/lowercase PR file names, alternate extensions and multiple-template directories, while leaving issue forms and canonical PR Format docs unaffected. MSXOrg/docs contains no tracked GitHub PR-template file. Independent full, non-truncated default-source reads confirmed these **still-present** files at the measured immutable sources: | Repository | Source | File | | --- | --- | --- | | MSXOrg/.github | `0c67251812ea306543f3a14ab473ae357cfb76ac` | `.github/pull_request_template.md` | | PSModule/.github | `f424237c98b5b020f80e8c9563dbc37256fc1ec0` | `.github/pull_request_template.md` | | PSModule/Yml | `93d2656563a719d99416b9e13a05e65f6f815498` | `.github/pull_request_template.md` | | PSModule/PSSemVer | `1a621b14286331569f4d1ffd4643999c2a2a6ca8` | `.github/pull_request_template.md` | These are measured source/consumer counterexamples with separate removal owners, not evidence that the new no-file state has already landed. The Project's complete 71-repository inventory additionally identified the stale [PSModule/Template-PSModule#42](PSModule/Template-PSModule#42) candidate as separately owned reconciliation. [PSModule/Process-PSModule#525](PSModule/Process-PSModule#525) tracks the bounded producer anatomy/audit requirement reconciliation; central/default validators have separate owners. Their publisher/Build/runtime behavior remains outside this documentation revision. The [#231](#231) owner confirmed its clean frozen branch and no pending overlapping edits. The exact community composition boundary is the PR-template rows/paragraphs only: preserve its conditional local-contribution rule and all other inherited defaults while adopting the new no-file policy links. No #196/#208/#230/#231 tracked branch was edited here. </details> <details> <summary>Related references</summary> - Resolves [#226](#226) - References [#231](#231) - References [PSModule/Process-PSModule#525](PSModule/Process-PSModule#525) </details> ## Changed: Release-bound authoring starts from actual artifact publication Before drafting the title, results, adoption actions or compatibility decision, resolve the actual latest successful artifact publication for the same product, target and channel and verify its immutable source. Pin that artifact/source and the exact candidate PR source, verify intended lineage and compare those source trees. The complete delivered range includes earlier merged, skipped or unshipped changes; the ordinary PR-base diff remains separate implementation/reviewer evidence, not the note boundary. A GitHub Latest hint, moving tag, assumed highest version or overall failed run is not publication-baseline proof. Module publication to Gallery counts even when later GitHub completion fails: the next module record starts from its already-published source. Completing that older GitHub record does not make module changes new again. Multiple artifact targets/channels have independently pinned consumer baselines and applicability. Resolve missing/unverifiable evidence, ambiguous scope and diverged lineage explicitly. A verified initial publication has reviewed whole-candidate coverage and initial adoption instructions, not a fabricated predecessor or no-action/patch assumption. Re-read publication and candidate identities before readiness/snapshot capture and refresh comparison, actions and compatibility when either changes. This is the preserved authoring procedure, not a new publisher/version resolver or Build/artifact-promotion design. <details> <summary>Technical details</summary> | Changed surface | Standards checked | Framework docs checked | Result | | --- | --- | --- | --- | | Publication-baseline-first procedure, five result prompts and readiness | PR Format, Markdown | Exact publication/candidate identities, complete range and scoped PR diff | Aligned | | Release Management source binding and note evidence | Specification/design ownership | Actual artifact publication versus version/completion baselines | Aligned | | Thin PR-format skill and paired plugin metadata | Plugin granularity/versioning, manifest tests | Prior 0.1.1 canonical entrypoint retained | Aligned | The anonymous Git experiment remains exact source-tree evidence: published A-to-candidate C includes earlier unshipped B and current C, while scoped B-to-C includes only the current PR. Simulated Gallery-success/GitHub-failure evidence for B keeps module coverage at B-to-C even after older GitHub completion. Changed candidate/publication pairs change coverage, and unrelated lineage is rejected. Receipts were simulated inputs, not a live publish or historical repair. **Final committed/pushed head:** `bc03a5992615f65d1d5346dc48e7506e80b8b6ca`. This ordinary commit refines the previous `be8c340...` authoring correspondence without amendment or history discard. Canonical anchors are [release-first analysis](https://github.com/MSXOrg/docs/blob/bc03a5992615f65d1d5346dc48e7506e80b8b6ca/src/docs/Ways-of-Working/PR-Format.md#resolve-release-coverage-first), [complete description example](https://github.com/MSXOrg/docs/blob/bc03a5992615f65d1d5346dc48e7506e80b8b6ca/src/docs/Ways-of-Working/PR-Format.md#complete-description-example), [repository file policy](https://github.com/MSXOrg/docs/blob/bc03a5992615f65d1d5346dc48e7506e80b8b6ca/src/docs/Ways-of-Working/Repository-Standard.md#no-pr-template-files), and [defaults source guidance](https://github.com/MSXOrg/docs/blob/bc03a5992615f65d1d5346dc48e7506e80b8b6ca/src/docs/Capabilities/repository-governance/design.md#organization-defaults-repository). Local validation passes: all 80 Pester tests in seven suites, 127 documentation pages plus contribution-guide lint, indexes/relative anchors, seven cross-repository links, actual pinned Zensical 0.0.59 build and rendered new-anchor checks, zero PowerShell analyzer diagnostics, existing plugin-manifest validation, and patch checks. The parsed linter configuration remains unchanged. All five required hosted checks succeed on this exact head: [Lint](https://github.com/MSXOrg/docs/actions/runs/41243884162/job/124663205698), [Build](https://github.com/MSXOrg/docs/actions/runs/41243884162/job/124663205920), [Test](https://github.com/MSXOrg/docs/actions/runs/41243884162/job/124663205851), [Links](https://github.com/MSXOrg/docs/actions/runs/41243884162/job/124663205928), and [Cross-repository links](https://github.com/MSXOrg/docs/actions/runs/41243883939/job/124663204724). Both completed `pull_request` runs identify this source head. **Complete current-head review:** [5725019918](#209 (review)) is APPROVED on `bc03a5992615f65d1d5346dc48e7506e80b8b6ca`. The full summary records no active/open or suppressed concerns; all review threads are resolved and thread pagination is complete. The prior be8c340 approval was not used as approval of this correction. This is the automated author-side pass, not independent human approval or permission to merge. All five existing Task #226 plan items are fulfilled: verified state/cases, bounded canonical authoring, directly coupled policy/evidence/link reconciliation, native checks/current-head full review, and final acceptance/immutable handoff. The scoped sweep covered PR authoring, source/default validation, release/consumer and community guidance; only Task #226 is the closing delivery leaf. The existing native prerequisite [#166](#166) is completed. Its five-context required-check rule and the existing approval/thread constraints remain unchanged; no live merge attempt, injected failure or bypass was used. </details> ## Changed: Effective decisions and release-history ownership are preserved `DefaultBump` still accepts patch/minor/major with documented shared patch, repository settings, explicitly supplied supported caller overrides and one explicit owned bump override in that order. Omitted inputs inherit valid policy; invalid supplied settings and conflicting owned signals fail even when another source supplies a level. An effective default removes the need for a per-PR bump label, not the need for compatibility evidence. The exact owned set remains `release:patch`, `release:minor`, `release:major`, `release:prerelease` and `release:skip`. Verify actual native/shared producer controls or a supported adapter before using signals. Prerelease uses the resolved bump; skip combines with no other owned signal. Unmanaged routes omit all release metadata/labels; this repository deploys Pages without a versioned release artifact, so this PR retains neither a Release decisions block nor a release label. No undecided caller-override interface, allocator, publisher or live input is approved or implemented here. Complete PR/release records remain the sufficient version-specific upgrade history; resource docs describe supported target-state usage. Mandatory intermediate operations and superseded actions remain explicit. Campaign/native associations and completion-aware issue links retain their established ownership. No migration-guide/changelog duplication, date strategy, native dependency mutation, publication, historical backfill, label/permission/rules edit, merge or auto-merge is performed. <details> <summary>Technical details</summary> | Changed surface | Standards checked | Framework docs checked | Result | | --- | --- | --- | --- | | Automation Labels, settings/decision rules, VS Code and continuous-delivery guidance | Owning standards/capabilities | Accepted default/signal, source validation and native mapping retained | Aligned | | Documentation Model, Fleet, workflow/readiness and Task/Bug planning | Ways of Working, issue hierarchy, PR Format | Actual scoped implementation evidence and sufficient consumer record preserved | Aligned | The existing PRs stay separate on main. Eventual landing is one at a time with every remaining overlapping branch reconciled against advanced main and CI/full review repeated. Other owners must consume the refreshed immutable correspondence; their prior frozen example/file expectations are not claimed current. This PR does not edit their tracked candidates or waive their independent prerequisites. </details> <details> <summary>Related references</summary> - References [#196](#196) - References [#208](#208) - References [#230](#230) - References [#205](#205) - References [#166](#166) </details> --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Merge current main while preserving full-range consumer evidence, qualification gates, and source-bound record ownership. Retarget the existing PR Format links to their renamed sections.
Consumers follow one staged procedure from their actual consumed upstream baseline to a fixed target, preserving local intent and accounting for the complete applicable release range. The shared
msxplugin exposes the method without embedding migration instructions or replacing producer-owned discovery.New: One consumer upgrade procedure
Consumer Upgrades establishes immutable baseline provenance, fixes the target, reads every applicable release with full pagination and semantic/lineage ordering, composes an action ledger, compares the recorded immutable target template, and reconciles existing consumer validation. Fleet guidance, dependency updates, downstream propagation, navigation, and plugin discovery route to that method.
No-action releases remain evidence-bearing steps. Prerelease and non-latest targets retain their source-specific history; unrelated backports and prerelease streams are excluded. A floating alias's present destination does not prove what previously ran. Git-distributed products use full commit identities; artifact-only products can use authoritative immutable digests without invented Git mappings. Missing required evidence blocks affected work.
msx-ways-of-working-consumer-upgradesis the additive shared intent. The shared plugin and marketplace entry both declare0.2.0; existing skill names remain supported. Installation is optional, and initiative-specific source/version/template discovery remains producer-owned.Changed: Evidence gates and terminal outcomes are explicit
Review readiness requires complete consumer evidence. Dependency proposals are created as drafts or immediately converted to draft, and remain draft until readiness. The documented automatic-update contract independently binds adoption evidence to a required PR check before automatic readiness, approval, or merge; neither green builds nor the draft flag alone replace that control. This PR defines the contract, not a validator or updater implementation.
Equal or lower targets produce an evidenced no-upgrade outcome rather than an empty PR or downgrade. Only an unneeded open leaf with no remaining local work closes as not planned. Propagation qualifies before Build and conditionally delegates through Issue-first pickup or Task-first Agent Task creation; fleet qualification precedes branch/PR creation or adoption. Both release-triggered propagation and manual backfill remain stable-only; standalone consumer prerelease upgrades do not widen that capability.
Producer release/PR text and related documentation are evidence, not authority over the consumer's task. Delegated payloads separate application-owned instructions from complete, losslessly carried untrusted records. Delimiter collisions or embedded control directives cannot authorize scope, permission, secret-handling, or gate changes; unsafe isolation blocks delegation instead of discarding content.
Producer completion requires immutable compatibility with the published identity and delivery of necessary template changes. Verified candidate/prerelease evidence can support review without waiving native blockers. A multi-leaf outcome remains open in its PBI; a single leaf awaiting publication/deployment is reopened if PR closure precedes the required evidence.
The existing Implement alignment pass carries these obligations without a second checklist. Product docs describe the current contract; release/migration history and delivery plans stay in issues, PRs, and source-bound releases. Decision records and research remain supported exceptions.
Adopting this release
msx@msxorgto0.2.0to discovermsx-ways-of-working-consumer-upgrades. Read producer-owned discovery for authoritative identities, release lineage, and template mapping.Issues: writeplus mode-specific permissions; Task-first requires the Agent Tasks API's accepted user credential withAgent tasks: write. KeepPROPAGATION_TOKENas the secret name. Separate task instructions from the full untrusted evidence payload with a runtime data boundary or collision-safe quotation; decoding must retain the complete record. This PR changes no credential or setting.This delivery executes no consumer upgrade and introduces no runtime migration of its own. Future consumer actions come from the selected producer's release evidence, not the shared skill.
Release impact
release:minorfor the additive supported shared-plugin intent. Markdown implementation does not make a functional discovery change Docs-only.msxpackage and marketplace-entry metadata move from0.1.0to0.2.0under the existing marketplace contract. These are not predicted GitHub Release coordinates. This task creates no GitHub Release and selects no consumer upstream target; publication follows the repository's existing process.Technical details
Consumer change record
msx-ways-of-working-consumer-upgrades0.2.0.Template baseline
Not applicable: shared documentation and its pointer plugin are not an integration-template consumer. The orchestration-playbook and Agent Skills authoring structures are standards, not product integration templates. No pilot consumer or producer/template repository is modified.
Maintainer evidence
Source and scope. Delivery B implements #203 only, from merged #204 at
702be0fa7db80a5e24eb9ebc47badc017356257b. The current candidate's full immutable identity and source-bound outcomes are recorded in the verification record. These are this documentation/plugin delivery's coordinates, not a consumer upstream range. Native prerequisite #202 is closed; no native parent exists. The completed Delivery A branch is not reused. Small logical commits separate the procedure, gates, capability contracts, plugin, and review corrections; each commit is pushed.Preserved contract. PR Format and Release Management remain unchanged: audience impact controls classification; users and integrators may be the same people; evidence stays complete and incremental; explicit levels override optional configured
DefaultBump; no implicit patch fallback exists; missing decisions require failed, merge-blocking CI validation. No authoring schema or resolver is duplicated or redesigned. #196 remains open with its conflicting implicit-patch proposal; its branch and policy files are untouched.Plan and verification. The first five implementation-plan steps are complete. Walkthrough reconciliation, alignment, and scoped convergence are recorded here and in the issue. The source-bound verification record carries current-head CI, complete-summary review reconciliation, and handoff state. Ordinary ready/auto-merge handoff remains blocked by #166, not silently waived.
Documentation walkthroughs
Eighteen recorded cases exercise the written contract, not a real consumer, pilot, or agent security evaluation. Detailed evidence is retained in the issue's range walkthroughs, review edge cases, conditional flows, evidence isolation, and entry gates.
Agent tasks: write, not a read-only permission.Standards and framework alignment
Validation and review evidence. Existing index generation/check, relative links across 128 documentation files, applicable cross-repository links, targeted Markdown lint, and all four pinned Pester
6.0.1PluginMarketplace tests pass. All 16 changed Markdown files are covered, with later edits rechecked. No dependency or validation toolchain is added. Reviews5125327578,5125374401,5125421878,5125462928, and5125521297were read in full, including suppressed concerns. All ten actual inline threads have fix-linked replies and are resolved. A zero result from the wait script was not accepted when the full summary still raised concerns. Current-head outcomes are retained in the verification record, not inferred from an inline-comment count or an older successful run.Convergence. Searches covered consumer, template, and downstream work. #143 still needs concrete standard-to-artifact inventory/enforcement, #136 owns Gallery updater delivery, and #187 needs router/published-URL enforcement. Other hits concern unrelated navigation, language, or palette work. No additional issue is fully delivered by this diff; only #203 is a closing reference.
Completion owner and remaining gate. #203, assigned to MariusStorhaug, owns this single-leaf delivery and required Pages publication. If future PR closure precedes publication evidence, the owner reopens the Task until that result is recorded. No applicable template or additional delivery leaf requires a PBI here. #166 remains open: effective
mainrules contain deletion, non-fast-forward, linear-history, and pull-request rules but no required status checks. Passing runs do not repair that gap. This PR remains draft with auto-merge disabled; no protection, ruleset, producer CI, or other active branch is changed.Out of scope and untouched: PSModule pilot selection/execution, historical release or PR backfill, version-specific skills, updater/publisher/validator implementations, automatic template synchronization, and unrelated governance changes.
Relevant issues (or links)
Related work