test(robosoft): cover the phase-artifact catalogue, which no robot touched - #135
Merged
Conversation
…uched
Closes CP-10 criterion 1.
Looking for what criterion 1 still needed surfaced a bigger gap: the phase
artifact catalogue is what CP-02 built and FOUR surfaces now read -- the
endpoint, the phase-record contrast, the payload sent to the Core and the
scorecard -- and no robot touched it. The most shared piece of the product had no
end-to-end coverage.
`phase-artifact-catalog` asserts, against the live deployment:
- the catalogue is served per phase and DECLARES its provenance (`core-sync` or
`core-standin`). A consumer must be able to tell a synced answer from a
mirrored one by reading the payload, not by trusting a sync happened;
- marking `not-applicable` does NOT delete the artifact -- it is served marked,
with `standardRequired` alongside, so an auditor can separate "the Core
requires it" from "this tenant requires it";
- REMOVING THE OVERLAY RETURNS THE BASE STANDARD UNTOUCHED. This is the
assertion that carries "without modifying the base standard": had the overlay
edited the Core's catalogue, it would still read false;
- an unknown applicability is refused on write and stores nothing.
It also refuses to run vacuously: if construction required no artifact, every
assertion below would be empty, so that case fails loudly instead.
UNLIKE `core-sdlc-parity` IT GOES IN THE CI LIST: it needs neither a machine key
nor the Core deployed. Added to `ROBOSOFT_ONLY` in `local-test.sh`, and the
generated roster regenerated (15 robots) rather than hand-edited.
Criterion 1 is met across three robots: `governance-journey` walks the five
phases, `core-sdlc-parity` exercises the gate decision with an attached deposit,
and this one covers the Core-derived artifacts.
Verified: 18 checks of its own, 0 failures; with the full CI list, 229 checks,
0 failures.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes CP-10 criterion 1.
The gap that looking for it surfaced
The phase-artifact catalogue is what CP-02 built, and four surfaces now read it — the endpoint, the phase-record contrast, the payload sent to the Core, and the scorecard.
No robot touched it. The most shared piece of the product had no end-to-end coverage.
What
phase-artifact-catalogasserts, against a live deploymentcore-sync/core-standin). A consumer must be able to tell a synced answer from a mirrored one by reading the payload, not by trusting a sync happened.not-applicabledoes not delete the artifact — it is served marked, withstandardRequiredalongside, so an auditor can separate "the Core requires it" from "this tenant requires it".It also refuses to run vacuously: if
constructionrequired no artifact, every assertion below would be empty — so that case fails loudly instead.Unlike
core-sdlc-parity, it goes in the CI listIt needs neither a machine key nor the Core deployed. Added to
ROBOSOFT_ONLYinlocal-test.sh; the generated roster was regenerated (15 robots), not hand-edited.Criterion 1 is met across three robots
governance-journeywalks the five phases ·core-sdlc-parityexercises the gate decision with an attached deposit · this one covers the Core-derived artifacts.Verification
18 checks of its own, 0 failures. With the full CI list: 229 checks, 0 failures.
🤖 Generated with Claude Code