Reconcile front-matter specs, add wizard namespace validation, and close scenario-coverage test gaps (16.4) - #461
Conversation
|
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
9aafdae to
6c0fd81
Compare
c91bf4f to
7c8b3c1
Compare
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit afec600. Configure here.
| } | ||
|
|
||
| return undefined | ||
| } |
There was a problem hiding this comment.
Incomplete skill/command namespace checks
Medium Severity
validateAssetNameInWizard now rejects skill/command name collisions in the create/edit TUI, matching FacetManifestSchema, but headless decideCreate still only runs validateAssetNameSegment. The same collision can still be scaffolded via flags, and addAsset/renameAsset still omit the sibling-namespace guard they already apply for same-type duplicates.
Reviewed by Cursor Bugbot for commit afec600. Configure here.
7c8b3c1 to
b48fb4b
Compare
afec600 to
ab25e67
Compare
…ose scenario-coverage test gaps (16.4) Scenario-by-scenario verification of the support-non-asset-files delta specs surfaced findings, resolved here: - Front-matter delta relaxation: the authoring specs required build to reject primary-asset front matter and edit to parse/strip it, but the implemented (and pre-existing) contract permits author front matter, archives it verbatim, and reconciles manifest-owned metadata over it at install time. Relaxed the build, 'manifest is source of truth for metadata', and edit requirements to match the implementation, and corrected the design.md drift-checking rationale. - Wizard shared-namespace validation: create and edit wizards validated within-type duplicates but not the skill/command shared namespace. Extracted a shared validateAssetNameInWizard helper, wired both views to it, and added unit coverage. - Missing-arm tests: added a RECONCILE_OWNED_PATH_SET run-install test and a single-file command lockfile-entry test. - Archive-format compatibility mapping: MINIMUM_RELEASE_FOR_FORMAT['0.2'] set to the projected activation release 0.31.0, with its test updated. The held agent-facets CLI activation Changeset is intentionally NOT here; it lives in a separate held draft PR stacked on top.
ab25e67 to
a2958c5
Compare
…ion (#462) **HELD — do not merge until authorized.** This draft is the sole activation lever for the `support-non-asset-files` change: a single CLI-only pre-1.0 minor Changeset for `agent-facets`. It contains exactly one file — `.changeset/activate-supplementary-files.md` — and nothing else. ## What merging this does Once merged and versioned, the released CLI flips to the already-implemented and already-merged behavior: - `facet build` emits archive `0.2` with a complete per-entry hash map - lockfiles/receipts use format `0.2` - skill companions materialize atomically with their owning skill - first-class `README` authoring in create/edit - the CLI supported adapter API becomes exactly `{0.1}` (positional `0.0` adapters fail closed with reinstall guidance) Projected release: **`agent-facets@0.29.0`**. No protocol or adapter changeset is included. ## Merge conditions (all required before this leaves draft) 1. The source/readiness stack through #461 is merged. 2. The adapter SDK + all three first-party adapters have published `facetAdapterApiVersion: 0.1` (16.6). 3. The deployed registry's dual-format behavior is verified (16.7). 4. A candidate `0.2` archive round-trips against the stage registry (16.8). 5. The full repository suite and strict OpenSpec validation pass (16.4/16.9). 6. **The user explicitly authorizes the Changesets version-and-publish sequence.** <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > No application code changes—only a release metadata file; operational risk is limited to timing of the version/publish sequence relative to the PR’s stated merge conditions. > > **Overview** > Adds a single **Changesets** entry (`.changeset/activate-supplementary-files.md`) that bumps **`agent-facets`** with a **pre-1.0 minor** and records the user-facing release notes for behavior already merged on `main`. > > Merging and running the version/publish flow is the **activation lever**: it does not change runtime code in this diff, but it schedules the next CLI release so shipped **`agent-facets`** documents and changelog reflect archive **`0.2`**, lockfile/receipt **`0.2`**, supplementary skill companions, default **`README.md`** in create/edit, stricter manifest naming, and **adapter API `0.1` only** (positional **`0.0`** adapters fail closed). The changeset text is the authoritative consumer-facing summary of that flip. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit d0025d6. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->



Release-readiness fixes surfaced by the scenario-by-scenario verification of the
support-non-asset-filesdelta specs (task 16.4). This is the source stack's final readiness layer; it carries no release Changeset.Changes
design.mddrift-checking rationale.validateAssetNameInWizardhelper, wired both views to it, and added unit coverage.RECONCILE_OWNED_PATH_SETrun-install test and a single-file command lockfile-entry test.MINIMUM_RELEASE_FOR_FORMAT['0.2']set to the projected activation release0.31.0, with its test updated.Not here
The held
agent-facetsCLI activation Changeset lives in a separate held draft PR (#462) stacked directly on top of this one, so this readiness PR can merge with the source stack while activation stays gated.Note
Low Risk
Documentation and authoring-spec updates plus CLI validation and test coverage; no changes to install/materialization logic beyond new regression tests.
Overview
Closes 16.4 readiness gaps from scenario-by-scenario delta verification: mostly spec ↔ implementation alignment, earlier wizard validation, and targeted tests—no held CLI Changeset.
OpenSpec / authoring contract. Build, edit, and metadata requirements no longer mandate rejecting or stripping YAML front matter on primary assets. They now state that author front matter is archived verbatim, the manifest wins on conflicts at install, and edit preserves primary bytes unless the author edits them.
design.mddrift-checking text is updated for the same reconciliation model.Create/edit wizards. Shared
validateAssetNameInWizardenforces the skill/command shared namespace (matching build-time collision rules) in addition to per-type duplicates; create and edit views use it. New unit tests cover grammar, duplicates, namespace collisions, and agent exemptions.Tests and compatibility messaging. Adds
RECONCILE_OWNED_PATH_SETinstall coverage and lockfile schema acceptance for single-file agent/command entries. Sets archive format0.2minimum CLI guidance to0.31.0(projected activation release).tasks.md marks 16.1–16.5 done and documents 16.6–16.8 as blocked on adapter publish and registry/stage access.
Reviewed by Cursor Bugbot for commit a2958c5. Bugbot is set up for automated code reviews on this repo. Configure here.