feat(supply-chain): candidate generator + combined promotion gate (v0.1)#122
Merged
Davincc77 merged 1 commit intoJun 2, 2026
Conversation
… gate (v0.1) Adds the next two tool-backed supply-chain stages on top of the cumulative integration branch, both NON-NORMATIVE and internal-only: - scripts/generate_supply_chain_candidate.py: config-only build_request -> candidate skill in the internal v4.2 target shape. Deterministic ids derived only from input bytes; missing domain info -> requires_human_premium_pass (never hallucinated); sources only from build_request/source_manifest. - scripts/run_supply_chain_promotion_gate.py: orchestrates threat-model, source/license, logical-diff, candidate-shape, and forbidden-claim / public-private boundary tripwires. Classifies ACCEPT / ACCEPT_WITH_REVIEW / BLOCK (exit 0/0/1, 2 usage). Reports — never runs — the premium pass; not_run checks recorded honestly. Tests: 39 new (deterministic repeatability, anti-mirage premium-pass, blocked candidate, clean accept, forbidden-claim/leak/over-claim blocks). Full suite 283 passed. Example candidate + gate report checked in. ACTION_LOG added; README integration index updated (stages moved planned -> tool-backed with literal scope notes). No release/tag/DOI/publish/deploy. No merge to main. Public stays v4.1. Co-Authored-By: Claude Opus 4.7 <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.
Summary
Stacked on
integration/supply-chain-cumulative(PR #121). Implements the next two planned supply-chain stages as real, tool-backed, NON-NORMATIVE, internal-only automation:Candidate generator —
scripts/generate_supply_chain_candidate.pybuild_requestJSON (inlinesourcesand/or referencedsource_manifest)..internal-skills/supply-chain/candidates/or--out.skill_lifecycle(notsupply_chain);output_contract.graph_bindings; canonical interactions flow.candidate_id/candidate_hash/run_idderived only from canonical input bytes. No clock in the hashed core.requires_human_premium_passwith named gaps, never hallucinated. Sources come only from the build_request/source_manifest.Combined promotion gate —
scripts/run_supply_chain_promotion_gate.py--source-manifest), logical diff (--before), candidate shape checks, and forbidden-claim / public-private boundary tripwires.deterministic_gate_idexcludes the clock.not_runchecks recorded with a reason, never aspass. No compliance/security/benchmark claim.Example artefacts checked in:
candidates/xklickd-research-reader.json,promotion-gate/xklickd-research-reader.gate.{json,md}.ACTION_LOG.mdadded; README integration index updated (stages moved planned → tool-backed with literal scope notes).Claim boundaries (read literally)
artifact_loaded AND sha256_matches_manifest).Davincc77/klickd-aiuntouched.Testing
pytest tests/test_supply_chain_candidate.py tests/test_supply_chain_promotion_gate.py→ 39 passedpytest tests/→ 283 passed (1 unrelated jsonschema DeprecationWarning), 0 failuresverify_xklickd_skill_packs.py verify,validate_v4_schemas.py,validate_v4_1_candidate_mapping.py→ all rc 0internal_target--eval-date🤖 Generated with Claude Code