[gated on afi-governance #53] CAL-BENCHKIT-RETIRE: afi-econ: re-point --scores merit path to a synthetic merit-scores file - #4
Merged
Conversation
…merit-scores file
Implements the afi-econ act of CAL-GOV D-CAL-6(3), gated on afi-governance #53.
The merit path no longer depends on afi-benchkit (an ungoverned implementation):
- examples/merit_scores.synthetic.json: documented synthetic input, same shape
({reputation,poi,poinsight}.score, n, stamp); replaces tests/fixtures/scores_min.json
- cli/gauge/scenarios/schemas/params: "BenchKit scores" -> "merit scores (synthetic;
the protocol source is the CAL-GOV analyst calibration record -- not a scalar --
and any merit conversion is CHAIN-GOV reserved)"; _load_benchkit_scores ->
_load_merit_scores; provenance stamp key benchkit_stamp -> merit_stamp
- scripts/end_to_end_audit.py: no longer shells out to afi-bench; uses the synthetic file
- examples/README.md + pipeline_demo.sh: re-pointed and documented
- removed tracked generated artifacts (out*/ pointing at /Users/.../afi-benchkit,
stale egg-info) -- all already .gitignored; nothing new committed in their place
PoI / PoInsight are NOT retired (D-CAL-5(4)); the retired thing is afi-benchkit.
No score, hash, golden, or governed-schema byte moves.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Kilo Code Review could not run — your account is out of credits. Add credits or switch to a free model to enable reviews on this change. |
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.
Gate
This PR may merge only after afi-governance PR #53 (CAL-GOV,
analyst-calibration-record-v0.1) is merged with theCAL-BENCHKIT-RETIREslot expressly authorized. It is a DRAFT until then. Clause implemented: D-CAL-6(3), the afi-econ act — "re-point afi-econ's--scoresmerit path to synthetic inputs or retire it (research plane, MATH-GOV §3 non-canonical; proven by afi-econ's own tests)".PoI / PoInsight are NOT retired (D-CAL-5(4)). Proof-of-Intelligence and Proof-of-Insight remain reserved, preserved protocol reputation primitives (CONST-GOV D-CONST-5). The retired thing is afi-benchkit, an ungoverned implementation on reserved ground. The
poi/poinsightkeys in the synthetic file are placeholders that stand in for no protocol value.What changed
examples/merit_scores.synthetic.json(new) — the documented synthetic merit-scores input, same shape as before:{reputation:{score}, poi:{score}, poinsight:{score}, n, stamp};stamp.source = "synthetic". Replacestests/fixtures/scores_min.json.src/afi_econ_kit/cli.py—_load_benchkit_scores→_load_merit_scores;--scoreshelp onsimulate/replay/gaugenow reads: merit scores JSON file (optional; synthetic — see examples/merit_scores.synthetic.json). The protocol source is the CAL-GOV analyst calibration record — not a scalar — and any merit conversion is CHAIN-GOV reserved. Stdout line:Using merit scores (synthetic): ….scenarios.py/gauge.py/schemas.py/params/gauge_v0.yaml— wording; provenance stamp keybenchkit_stamp→merit_stamp(pass-through unchanged).scripts/end_to_end_audit.py— no longer locates a siblingafi-benchkitor shells out toafi-bench; reads the synthetic file; report keybenchkit_influence_ok→merit_influence_ok.tests/test_scores_ingest_with_file.py,examples/pipeline_demo.sh,examples/README.md— re-pointed; README's format block now shows the real file shape and documents the provenance boundary.out/,out_audit/,out_base/,out_with/(the latter three pointed at/Users/secretservice/afi-benchkit/out/scores.json) and the stalesrc/afi_econ_kit.egg-info/(a copy of a pre-harvest README naming afi-benchkit). All were already.gitignored;*.egg-info/added. Nothing new committed in their place.Slot gate (§8
CAL-BENCHKIT-RETIRE)afi-config/schemasor thesource-disclosure-profilesurface is touched.pytest tests→ 88 passed, 13 failed, 1 skipped (baseline onorigin/main: 86 passed, 15 failed). The 13 remaining failures are pre-existing and unrelated (missing siblingafi_emissionsmodule, missingdata/timeseries_rebuilt.csv). Both--scorestests and bothend_to_end_audittests pass.Note for the reviewer
The audit's previous synthetic fallback (0.62/0.68/0.65) tripped the audit's own
gauge_invariantscheck (with-scores shares summed to 1.0082 after smoothing) — a pre-existing merit-path defect that this PR does not touch (it would move a research-plane score). With the documented 0.58/0.55/0.60 file the check passes.🤖 Generated with Claude Code