Objective
Finish a bounded cleanup pass, verify one integrated candidate, and prepare one consolidated owner acceptance session for the 0.9 testing release. The owner should not repeat the full manual suite after each implementation issue. External testers' feedback after 0.9 will define the remaining work for 1.0.
Work sequence
| Stage |
Issue |
Dependency |
| Consolidate duplicated write mechanics |
#51 |
Preserve delivered #28 behaviour |
| Reduce implementation-coupled tests |
#52 |
Finish publication-specific cases after #51 |
| Simplify duplicated CSS handling |
#53 |
Preserve #32 implementation and its evidence |
| Run and prepare complete acceptance workflows |
#54 |
Integrated #51–#53 and verified #32 |
| Reconcile release/API guidance and final evidence |
#55 |
Draft alongside cleanup; finalise after #54 |
Existing hardening tracker #23 remains the record of the earlier programme. Do not recreate completed children or treat stale checkboxes as proof that their code is missing. #55 reconciles those records.
Acceptance criteria
Scope control
This is the final bounded cleanup and acceptance preparation for 0.9, not a request for architectural perfection. Keep the shared canonical compiler, model-free core, native editing and existing proof gates. No new output modes, full CSS rewrite, filesystem transaction framework, benchmark/scorer work or automatic publication.
Implementation agents own automated verification and must retain their evidence. If a check is blocked, record the exact missing environment or input before handing work back. New findings only join this closeout when they prevent the stated 0.9 contract; broader improvements belong after the testing release.
Reviewed against remote main 2b26c9d37352f7fb7d1229ee717eaeb1185ff2df on 6 September 2026. Recheck the candidate when work starts.
Shared handoff: what is already known
This closeout is based on a read-only review of current source and GitHub evidence, not a newly executed local test suite. The reviewed local checkout was clean at e642d174; remote main was 2b26c9d37352f7fb7d1229ee717eaeb1185ff2df. Work from current main in an isolated checkout and preserve any subsequent concurrent changes.
The September 5–6 hardening work is already merged: full lock confirmation, complete skill workflow, analysis without uploads, emitted editor layout parity, lighter basic installs, accurate Node boundaries, recoverable publication, canonical public plan, native composition validation, source evidence independent of rules success, regeneration guards, capability-derived proof and styling ownership. Do not reimplement these from old handover notes or unchecked tracker text.
The five child issues now contain pinned function/file pointers, existing regression tests, compatibility constraints and known evidence limits. Their source links are starting points at the reviewed revision, not instructions to revert later work.
Review measurements and their limits
At 0.8 versus the reviewed main revision, tracked TypeScript source under src grew from 6,472 to 24,515 lines; tests from 2,963 to 10,963; TS/MJS scripts from 2,916 to 8,641. Counts include comments and exclude JSON lockfiles/fixture data. They justify looking for duplicated responsibilities, not a code-reduction quota.
Confirmed simplification opportunity: duplicated publication/recovery mechanics. CSS consolidation remains a targeted hypothesis; preserve separate semantics where sharing would add complexity. API contract/deprecation documentation already exists and must be reused.
No new paid benchmark was run, no local WordPress session was started, and the 13-fixture authoring corpus remains unscored. Historical 63-fixture conversion scores do not measure this authoring path. The prior successful CI and current running candidate are detailed in #55.
Completion standard for implementation handoffs
Each child should leave a short account of changed responsibilities, exact revision, checks actually run, remaining limitations and the next required check. Functional bugs found during cleanup get specific repro cases; broader opportunities do not silently enlarge this closeout.
The intended final handoff is a prepared 0.9 candidate and one owner acceptance session, followed by external testing. Do not close this tracker merely because code merged, or request that the owner repeatedly operate the automated suite. Do not launch implementation tasks or publish as a side effect of editing this tracker.
Execution update — 6 September 2026
The host storage and Docker blockers are resolved. Existing containers, images and volumes were preserved. Fresh native Heading and Paragraph controls passed on WordPress 7.1, with edit/save/reopen, Axe and visual artifacts retained.
Acceptance exposed a linked-stylesheet defect: compiled CSS supplied in configuration was also prepared as an image asset. A focused two-file local patch fixes exact local-file matching while retaining dependency evidence and preserving unmatched/symlink rejection. It is not committed or merged. Base revision: 51886e94824360a72162e5efd6013926dd9496b3; patch SHA-256: a377c61e28980d4c2d3caba36b9a7a59603be1d2a80458a7185f8e268e9b3160.
The patched candidate passed 613 tests with four skips (58 files passed, one skipped), build, pack checks, clean packed-consumer installation and shipped-skill installation. The stock verify command was interrupted before completion; the passing bounded-worker suite and individual gate results are recorded separately. Patched package SHA-256: e2a49604c091658da69af5cca2a3c757b557b5a4cc34f379811460ba74983c85. Earlier main CI does not certify this uncommitted patch.
Both repository-authored supplied fixtures now have generated, built, ZIP-checked standalone plugins. Original analysis failures and explicit plan/source corrections are retained. The local SVG matches the source bytes in the production ZIP; the responsive ZIP contains scoped one/two/four-column behavior and reduced-motion CSS. Existing-plugin source integration, unrelated user-file preservation and refusal of incompatible generated-save-markup regeneration passed.
The asset ZIP installs, activates and renders the SVG, text and CTA, with frontend Axe passing. Targeted native-attribute edits to heading, button text/URL and image alt/caption survived save/reload. Original generic field-targeting and empty-stylesheet mismatches remain retained separately. The editor image-caption Axe finding remains open; it is not covered by the Heading/Paragraph exception.
Responsive runtime exposed a topology conflict: native Columns picked up WordPress flex layout, defeating the authored grid. A separately recorded semantic-plan correction uses native Groups while preserving source IDs/hash, fields, styles and coverage. Corrected ZIP SHA-256: 523708647ca962a13fb4da9e4e0e955648b5ef6842076443c7555e5092427fd5. Fresh editor insertion/save/reopen and frontend checks passed: actual grid display, one/two/four columns at 500/640/800/1024/1200px, full-span header, no overflow, reduced motion and readable screenshots. The original failed version is preserved; this is not a saved-content migration. The wrapper has no wide/full alignment control, and the tested theme content width is about 645px.
The shared pattern runtime receipt test passed (one passed, six skipped), retaining raw editor Axe and blocked manual-review gates. Both working review pages and a 20–30 minute owner script are prepared locally. Source-patch integration, the open caption accessibility finding, the final release-matrix receipt and owner acceptance remain outstanding.
This is supplied-fixture evidence, not an unfamiliar real-project claim. No complete final release-matrix receipt, owner fidelity/editing/accessibility acceptance or publication is claimed. A short 20–30 minute owner session is prepared; #54, #55 and #56 remain open until their outstanding gates are accounted for.
Objective
Finish a bounded cleanup pass, verify one integrated candidate, and prepare one consolidated owner acceptance session for the 0.9 testing release. The owner should not repeat the full manual suite after each implementation issue. External testers' feedback after 0.9 will define the remaining work for 1.0.
Work sequence
Existing hardening tracker #23 remains the record of the earlier programme. Do not recreate completed children or treat stale checkboxes as proof that their code is missing. #55 reconciles those records.
Acceptance criteria
Scope control
This is the final bounded cleanup and acceptance preparation for 0.9, not a request for architectural perfection. Keep the shared canonical compiler, model-free core, native editing and existing proof gates. No new output modes, full CSS rewrite, filesystem transaction framework, benchmark/scorer work or automatic publication.
Implementation agents own automated verification and must retain their evidence. If a check is blocked, record the exact missing environment or input before handing work back. New findings only join this closeout when they prevent the stated 0.9 contract; broader improvements belong after the testing release.
Reviewed against remote main
2b26c9d37352f7fb7d1229ee717eaeb1185ff2dfon 6 September 2026. Recheck the candidate when work starts.Shared handoff: what is already known
This closeout is based on a read-only review of current source and GitHub evidence, not a newly executed local test suite. The reviewed local checkout was clean at
e642d174; remote main was2b26c9d37352f7fb7d1229ee717eaeb1185ff2df. Work from current main in an isolated checkout and preserve any subsequent concurrent changes.The September 5–6 hardening work is already merged: full lock confirmation, complete skill workflow, analysis without uploads, emitted editor layout parity, lighter basic installs, accurate Node boundaries, recoverable publication, canonical public plan, native composition validation, source evidence independent of rules success, regeneration guards, capability-derived proof and styling ownership. Do not reimplement these from old handover notes or unchecked tracker text.
The five child issues now contain pinned function/file pointers, existing regression tests, compatibility constraints and known evidence limits. Their source links are starting points at the reviewed revision, not instructions to revert later work.
Review measurements and their limits
At 0.8 versus the reviewed main revision, tracked TypeScript source under
srcgrew from 6,472 to 24,515 lines; tests from 2,963 to 10,963; TS/MJS scripts from 2,916 to 8,641. Counts include comments and exclude JSON lockfiles/fixture data. They justify looking for duplicated responsibilities, not a code-reduction quota.Confirmed simplification opportunity: duplicated publication/recovery mechanics. CSS consolidation remains a targeted hypothesis; preserve separate semantics where sharing would add complexity. API contract/deprecation documentation already exists and must be reused.
No new paid benchmark was run, no local WordPress session was started, and the 13-fixture authoring corpus remains unscored. Historical 63-fixture conversion scores do not measure this authoring path. The prior successful CI and current running candidate are detailed in #55.
Completion standard for implementation handoffs
Each child should leave a short account of changed responsibilities, exact revision, checks actually run, remaining limitations and the next required check. Functional bugs found during cleanup get specific repro cases; broader opportunities do not silently enlarge this closeout.
The intended final handoff is a prepared 0.9 candidate and one owner acceptance session, followed by external testing. Do not close this tracker merely because code merged, or request that the owner repeatedly operate the automated suite. Do not launch implementation tasks or publish as a side effect of editing this tracker.
Execution update — 6 September 2026
The host storage and Docker blockers are resolved. Existing containers, images and volumes were preserved. Fresh native Heading and Paragraph controls passed on WordPress 7.1, with edit/save/reopen, Axe and visual artifacts retained.
Acceptance exposed a linked-stylesheet defect: compiled CSS supplied in configuration was also prepared as an image asset. A focused two-file local patch fixes exact local-file matching while retaining dependency evidence and preserving unmatched/symlink rejection. It is not committed or merged. Base revision:
51886e94824360a72162e5efd6013926dd9496b3; patch SHA-256:a377c61e28980d4c2d3caba36b9a7a59603be1d2a80458a7185f8e268e9b3160.The patched candidate passed 613 tests with four skips (58 files passed, one skipped), build, pack checks, clean packed-consumer installation and shipped-skill installation. The stock verify command was interrupted before completion; the passing bounded-worker suite and individual gate results are recorded separately. Patched package SHA-256:
e2a49604c091658da69af5cca2a3c757b557b5a4cc34f379811460ba74983c85. Earlier main CI does not certify this uncommitted patch.Both repository-authored supplied fixtures now have generated, built, ZIP-checked standalone plugins. Original analysis failures and explicit plan/source corrections are retained. The local SVG matches the source bytes in the production ZIP; the responsive ZIP contains scoped one/two/four-column behavior and reduced-motion CSS. Existing-plugin source integration, unrelated user-file preservation and refusal of incompatible generated-save-markup regeneration passed.
The asset ZIP installs, activates and renders the SVG, text and CTA, with frontend Axe passing. Targeted native-attribute edits to heading, button text/URL and image alt/caption survived save/reload. Original generic field-targeting and empty-stylesheet mismatches remain retained separately. The editor image-caption Axe finding remains open; it is not covered by the Heading/Paragraph exception.
Responsive runtime exposed a topology conflict: native Columns picked up WordPress flex layout, defeating the authored grid. A separately recorded semantic-plan correction uses native Groups while preserving source IDs/hash, fields, styles and coverage. Corrected ZIP SHA-256:
523708647ca962a13fb4da9e4e0e955648b5ef6842076443c7555e5092427fd5. Fresh editor insertion/save/reopen and frontend checks passed: actual grid display, one/two/four columns at 500/640/800/1024/1200px, full-span header, no overflow, reduced motion and readable screenshots. The original failed version is preserved; this is not a saved-content migration. The wrapper has no wide/full alignment control, and the tested theme content width is about 645px.The shared pattern runtime receipt test passed (one passed, six skipped), retaining raw editor Axe and blocked manual-review gates. Both working review pages and a 20–30 minute owner script are prepared locally. Source-patch integration, the open caption accessibility finding, the final release-matrix receipt and owner acceptance remain outstanding.
This is supplied-fixture evidence, not an unfamiliar real-project claim. No complete final release-matrix receipt, owner fidelity/editing/accessibility acceptance or publication is claimed. A short 20–30 minute owner session is prepared; #54, #55 and #56 remain open until their outstanding gates are accounted for.