Bundle ID
specassay
Bundle Name
SpecAssay
Version
0.4.12
Role or Team
developer
Description
Durable-ID promotion for stock Spec Kit: templates, Gate 2 refusal, and
trace-manifest emission.
Author
Rik Dryfoos
Repository URL
https://github.com/rdryfoos/specassay
Download URL
https://github.com/rdryfoos/specassay/releases/download/v0.4.12/specassay-0.4.12.zip
Documentation URL
https://github.com/rdryfoos/specassay/blob/main/README.md
License
MIT
Required Spec Kit Version
=0.14.0
Integration Target (optional)
No response
Components Provided
- extensions: specassay-check@0.4.12
- presets: specassay@0.4.12
Required Component Catalogs
Tags
traceability, governance, durable-ids, gate, sdd
Key Features
- Installs the durable-ID contract (preset) and the Gate that enforces it (extension) as one stack
- Gate 2 refuses silent acceptance-criterion gaps; every run emits trace-manifest.json, including refusals
- Thread Report: one CI briefing per PR, with restated-intent detection and optional human-ack gates
- Components pinned to release-tested versions; the artifact is built by
specify bundle build in CI through these same catalogs
- New in 0.4.x: uncovered-proof (report-only, ratcheted to blocking per project), domain-scoped orphan checks, and loud refusal on malformed config instead of a silent no-op
Testing Checklist
Submission Requirements
Testing Details
Tested on:
- macOS, Spec Kit CLI
specify 0.15.3.dev0
Test project: clean specify init project; full transcript in
https://github.com/rdryfoos/specassay/blob/main/docs/submission/test-evidence.md
Test scenarios:
- Downloaded the three release assets directly and verified their sha256 against the digests GitHub's API reports for the same release
- Added the three hosted catalogs (extensions, presets, bundles) as install-allowed
specify bundle validate --path <repo> at the exact tagged commit (git describe --tags --exact-match HEAD → v0.4.12) — valid
specify bundle build --path <repo> — produces the submitted artifact (same command CI runs for releases)
specify bundle install specassay by ID from the catalog stack in the clean project — 2 components installed, both reporting v0.4.12
- Verified with
specify bundle list, specify extension list, specify preset list
- Ran the installed Gate on the fresh project (real, loud FAIL — no registry minted yet — trace-manifest still written) and on a real project, HomesFlow (https://github.com/rdryfoos/HomesFlow) — ~81-row trace-manifest
Example Usage
# Add the component catalogs, then the bundle catalog (all install-allowed)
specify extension catalog add --name specassay --install-allowed \
https://raw.githubusercontent.com/rdryfoos/specassay/main/catalogs/extensions.json
specify preset catalog add --name specassay --install-allowed \
https://raw.githubusercontent.com/rdryfoos/specassay/main/catalogs/presets.json
specify bundle catalog add --id specassay --policy install-allowed \
https://raw.githubusercontent.com/rdryfoos/specassay/main/catalogs/bundles.json
# Install by bundle ID
specify bundle install specassay
# Or install the downloaded artifact directly
curl -L -o specassay-0.4.12.zip https://github.com/rdryfoos/specassay/releases/download/v0.4.12/specassay-0.4.12.zip
specify bundle install ./specassay-0.4.12.zip
Proposed Catalog Entry
{
"specassay": {
"name": "SpecAssay",
"id": "specassay",
"version": "0.4.12",
"role": "developer",
"description": "Durable-ID promotion for stock Spec Kit: templates, Gate 2 refusal, and trace-manifest emission.",
"author": "Rik Dryfoos",
"license": "MIT",
"download_url": "https://github.com/rdryfoos/specassay/releases/download/v0.4.12/specassay-0.4.12.zip",
"repository": "https://github.com/rdryfoos/specassay",
"requires": {
"speckit_version": ">=0.14.0"
},
"provides": {
"extensions": 1,
"presets": 1,
"steps": 0,
"workflows": 0
},
"tags": ["traceability", "governance", "durable-ids", "gate", "sdd"],
"verified": false
}
}
Additional Context
Updates #4059 (closed, merged as #4125 at v0.3.4). Component submissions for the two bundled components, each itself an update to its own closed 0.3.4 issue: extension #4252 (updates #4057), preset #4253 (updates #4058).
The emitted trace-manifest is deliberately vendor-neutral (format + schemaVersion are the contract); a v5 interop revision is in beta with a second emitter (docs/trace-manifest-schema.md). The walkthrough site (https://www.specassay.com) shows the Thread Report and intent-PR behavior on live PRs in this repository.
Bundle ID
specassay
Bundle Name
SpecAssay
Version
0.4.12
Role or Team
developer
Description
Durable-ID promotion for stock Spec Kit: templates, Gate 2 refusal, and
trace-manifest emission.
Author
Rik Dryfoos
Repository URL
https://github.com/rdryfoos/specassay
Download URL
https://github.com/rdryfoos/specassay/releases/download/v0.4.12/specassay-0.4.12.zip
Documentation URL
https://github.com/rdryfoos/specassay/blob/main/README.md
License
MIT
Required Spec Kit Version
Integration Target (optional)
No response
Components Provided
Required Component Catalogs
Tags
traceability, governance, durable-ids, gate, sdd
Key Features
specify bundle buildin CI through these same catalogsTesting Checklist
specify bundle validate --path <bundle-directory>specify bundle build --path <bundle-directory>and produces the submitted artifactSubmission Requirements
bundle.ymlmanifest includedTesting Details
Tested on:
specify 0.15.3.dev0Test project: clean
specify initproject; full transcript inhttps://github.com/rdryfoos/specassay/blob/main/docs/submission/test-evidence.md
Test scenarios:
specify bundle validate --path <repo>at the exact tagged commit (git describe --tags --exact-match HEAD→v0.4.12) — validspecify bundle build --path <repo>— produces the submitted artifact (same command CI runs for releases)specify bundle install specassayby ID from the catalog stack in the clean project — 2 components installed, both reporting v0.4.12specify bundle list,specify extension list,specify preset listExample Usage
Proposed Catalog Entry
{ "specassay": { "name": "SpecAssay", "id": "specassay", "version": "0.4.12", "role": "developer", "description": "Durable-ID promotion for stock Spec Kit: templates, Gate 2 refusal, and trace-manifest emission.", "author": "Rik Dryfoos", "license": "MIT", "download_url": "https://github.com/rdryfoos/specassay/releases/download/v0.4.12/specassay-0.4.12.zip", "repository": "https://github.com/rdryfoos/specassay", "requires": { "speckit_version": ">=0.14.0" }, "provides": { "extensions": 1, "presets": 1, "steps": 0, "workflows": 0 }, "tags": ["traceability", "governance", "durable-ids", "gate", "sdd"], "verified": false } }Additional Context
Updates #4059 (closed, merged as #4125 at v0.3.4). Component submissions for the two bundled components, each itself an update to its own closed 0.3.4 issue: extension #4252 (updates #4057), preset #4253 (updates #4058).
The emitted trace-manifest is deliberately vendor-neutral (
format+schemaVersionare the contract); a v5 interop revision is in beta with a second emitter (docs/trace-manifest-schema.md). The walkthrough site (https://www.specassay.com) shows the Thread Report and intent-PR behavior on live PRs in this repository.