Skip to content

Migration skills state explicit template and upgrade conditions - #581

Open
Marius Storhaug (MariusStorhaug) wants to merge 2 commits into
mainfrom
migration-framing-prose
Open

Marius Storhaug (MariusStorhaug) wants to merge 2 commits into
mainfrom
migration-framing-prose

Conversation

@MariusStorhaug

@MariusStorhaug Marius Storhaug (MariusStorhaug) commented Nov 4, 2026 •

Copy link
Copy Markdown
Member

Migration skill readers can distinguish the selected immutable template layout from the requested documentation layout. The v8 and Zensical framing uses explicit present-tense conditions instead of time-dependent or authoring-session statements. Consumer upgrade behavior does not change, and no consumer action is required.

Fixed: Migration framing states its conditions

The v8 anatomy tree applies only when the selected immutable template revision has that layout. The documentation framing states the selected-template condition and the requested-v8-upgrade condition directly. The Zensical starter configuration is conditional on the selected immutable template revision; a docs/ tree remains possible or absent.

All supported layouts, paths, migration actions, optional-versus-required distinctions, and preserve/report alternatives remain unchanged. Documentation moves only when the existing requested-migration condition applies. The Zensical procedure still requires a successful site build before removal of obsolete active configuration. This change does not perform or authorize a consumer upgrade.

Technical details

Exact delivery and source evidence

The scope is limited to the linguistic handback in #561. Both complete skills are reviewed. Before editing, exact source spans, expected replacements, and protected-content checks were recorded in the issue and in session-local JSON evidence. All three target statements were absent before editing and match their recorded replacements at the final head.

Released source Before After
v8 anatomy, source line 57 The current template's default repository anatomy is: If the selected immutable template revision has this layout, its default repository anatomy is:
v8 framing, source lines 127-133 the current template uses and this v8 upgrade request uses If the selected immutable template revision uses the template configuration, and If the requested v8 upgrade uses the listed documentation paths. The optional asset distinction remains exact.
Zensical framing, source lines 79-83 The current ... repository historically stores If the selected immutable ... revision contains the starter configuration. The requested-layout and build-before-removal conditions remain exact.

Scoped comparison: base main at 64ffb1d87f86bd5d487891fdb140b78385a00531; final pushed head 21cc8b3c5f6f5bce6fe245ffd181fea5d0c496c4 on migration-framing-prose. The branch contains two small commits: c43c36e1012859388d378a838c27e318893d933c for the two v8 framing spans, then 21cc8b3c5f6f5bce6fe245ffd181fea5d0c496c4 for the two-line Zensical framing. This draft opened immediately after the first commit. Live issue ownership and unchanged main source blobs were rechecked before each commit.

Only these two files change, with 11 insertions and 8 deletions:

File Base blob Head blob
.github/plugin/psmodule/skills/psmodule-v8-upgrade/SKILL.md 0c27e026a451cccb60196bee04e398486d86aa0d be52d02d835f639786cff51122c3ecd873f98eb0
.github/plugin/psmodule/skills/psmodule-zensical-migration/SKILL.md b6e19feffb3afa6420b499f0166097c648d5ce2a c0f49052a8b25dde9be6f3cf60e45ed30926ca11

Protected content

A one-off comparison reverses only the three recorded framing replacements and compares every other source text byte exactly, with CRLF normalized to LF. All ordered front matter, headings, fenced blocks, inline literals, and links also compare exactly.

Skill Front matter Headings Fenced blocks Inline literals Links
v8 upgrade 1 11 6 62 13
Zensical migration 1 8 2 73 7

This protects the exact caller YAML, triggers, permissions, concurrency, v8 reference, secrets, TestData examples, template/version selection, anatomy tree, layout alternatives, optional source directories and test phases, optional assets, migration actions, validation procedures, stop conditions, and normative force. No example becomes universal. All other skills, proposal branches, metadata, site design, runtime, repository tests, and dependencies remain unchanged. No migration command runs.

Existing checks and limits

The repository Markdown configuration passes on both files with zero issues (markdownlint-cli2 0.24.0, markdownlint 0.42.0). The repository spelling configuration and git diff --check pass. The existing YAML parser accepts both unchanged front-matter maps; both unchanged plugin metadata JSON files parse. The one relative skill target resolves. All 20 links remain exact. No standalone plugin link/front-matter checker exists in this checkout; unchanged external URLs are not claimed as network-checked.

The plain textlint CLI reports no rules before edits and cannot resolve its configured rule packages on this host. After the actual missing-package failure, those tools were restored only in the npm cache. The existing textlint 15.8.0, terminology 5.2.16, and comments 1.3.0 rules pass through their installed API with the unchanged repository options and Markdown plugin: zero messages on both immutable source files and both final files. An anonymous incorrect-term probe confirms rule execution, and a comment probe confirms the existing filter. No repository tooling or dependency is added.

All hosted checks pass for this exact head: CodeQL, Analyze (actions), and Lint code base. Copilot review 5769461963 approves 21cc8b3c5f6f5bce6fe245ffd181fea5d0c496c4 with no inline comments. No hosted result is assumed from local checks.

Standards and completion boundary

The fixed MSX writing source supplies the Documentation Model, Natural Language, Writing Guide, Markdown, Documentation, guide template, and Task/PR formats. The official STE overview and FAQ, relevant Issue 9 rules and dictionary entries, and en-US inform only the released wording. The Issue 9 manual stays local; its PDF checksum matches the official record. No certified or full STE conformance is claimed.

Changed surface Standards checked Framework docs checked Result
Released v8 framing Fixed MSX writing/documentation sources; relevant STE guidance; en-US README, complete skill, plugin guide, and exact issue handback Fixed in this PR
Released Zensical framing Same fixed writing sources and applicable guide format Complete skill, plugin guide, and exact issue handback Fixed in this PR

The README, plugin structure, shared guides, headings, anchors, and metadata need no change for this bounded framing correction. Implementation, local checks, and hosted checks are complete. Independent current-head content review accepts 21cc8b3c5f6f5bce6fe245ffd181fea5d0c496c4: both skill diffs stay within the exact framing handback, and the selected-revision/requested-upgrade conditions preserve templates, paths, optional/required distinctions, scope, and procedure. No further source change is requested. The PR stays draft and the issue stays open until a separately authorized merge. No merge, ready transition, auto-merge, Agent merge, release-label, or lifecycle setting changes.

Issue-convergence scope: the exact handback and open migration-title issues. No additional issue is fully resolved by this two-file diff. Only #561 has a closing reference.

Related references

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approved

No active review issues block the documentation-only clarification of template-layout and requested-upgrade conditions.

No open issues 🎉

What changed in this PR

This documentation-only PR clarifies the conditions in the migration skills, distinguishing the selected immutable template layout from the requested documentation layout. Consumer upgrade behavior remains unchanged.

Changes:

  • Makes the v8 repository anatomy conditional on the selected template revision.
  • Separates template configuration from the requested v8 documentation contract.
  • Makes the Zensical starter-layout description conditional on the selected immutable revision.
File Description
.github/​plugin/​psmodule/​skills/​psmodule-zensical-migration/​SKILL.md Clarifies when the template starter-layout description applies.
.github/​plugin/​psmodule/​skills/​psmodule-v8-upgrade/​SKILL.md States explicit template-layout and requested-upgrade conditions.

Review effort: Balanced

@MariusStorhaug
Marius Storhaug (MariusStorhaug) marked this pull request as ready for review November 4, 2026 14:43

This branch has not been deployed

No deployments
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.

[documentation-writing-alignment] State migration skill conditions without session-specific wording

2 participants