Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions examples/claude-native/workflows/SHA256SUMS
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ ca62177687420fe22e03d0510a18e4f32b5d150e0156f6651c48367c3da506e1 check-syntax.m
75a6d74b07b62d8bb1be0ed37bcffece18781c9c1bdff4a94c23cd5ce9dbe60b child-usage.mjs
cd303779df6521c804070a319aa04c86ed2d6fe1c099c537836f037dec5f4e8b codex-cross-review.mjs
2e73ed523e115e6a1f55a4cc992bf052e157d9cdd85aeb09cf4ef93d3f996771 contract.config.json
2eb9c10d40db7dd058376d03c973c55433b30d6e0d86f72e563da6627d8e7fbb layer-verdict-lane.js
0d66c9a11ad017c1fa84678f010e72fd7492e9902829f9a9185516695a4a3a72 layer-verdict-lane.js
d0d5afb3f4f8d635d0a75e48b4c4cda4a074e842130d9c80eb6633a5bfe1701a readiness-audit.js
581300deaa95c6a2e097ec824cc01aca21ff17f87cb497327e4ddbc1cc37d65f review-changes.js
fd23f5c7d1118e4b67bd00fc6212f0db4b0f2cbac1f2aaa0c76ee5f07e780c56 test-child-usage.mjs
2617c081f606268ed20a6e00f6472495fad950db433ca3afbb44ea970aaac446 test-codex-envelope.mjs
f418a9da354cb766cbab4f779be754359797b110ac4f3c28cdcda5e319d3c0a1 test-contract-mutations.mjs
53e25add00eada875b792ae2179249958ae2d1dc10527c86bf6485ee9bf65251 test-envelope.mjs
2ed3323db76d0104327a0c0bb35f00cf6a05018bdd9f49982b0c279cf2540871 test-usage-receipts.mjs
804a5938c957eecf904b15b5c1de2e1ccac326f341f1a059caa8742dc1fcf21b vendored-lanes.json
50823ecbf7e5b82209013049eebb4bdb59cd82a80660fc8759762e5f6647d95c vendored-lanes.json
16 changes: 10 additions & 6 deletions examples/claude-native/workflows/layer-verdict-lane.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions examples/claude-native/workflows/vendored-lanes.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"files": [
{
"agentlab_commit": "e6953e50e2e80c381a182003d20e1340db304b16",
"agentlab_commit": "aacd93774f8aadfff4d650feeb5a15c074f8b2b0",
"path": "layer-verdict-lane.js",
"records_in_its_return": "model {name: 'opus', effort: 'high'} and, per layer, refutation {status, final_source, proposal_status, revision_status, votes} (both lens votes are required on the sealed object; final is null when it was refuted or a vote is missing); tools/sota-convergence/claude_lane.py writes <work-dir>/claude/<catalog>__<layer_id>.json from the workflow result, copying refutation and adding model.family 'anthropic', the resolved model name (--resolved-model, for example claude-opus-5-5 from child-usage.mjs) and provenance {workflow_path, workflow_sha256, agentlab_commit}, refusing workflow bytes that are uncommitted or differ from this SHA256SUMS entry, and lists every layer without a final in <work-dir>/claude/failures.json",
"sha256": "2eb9c10d40db7dd058376d03c973c55433b30d6e0d86f72e563da6627d8e7fbb",
"sha256": "0d66c9a11ad017c1fa84678f010e72fd7492e9902829f9a9185516695a4a3a72",
"source_path": ".claude/workflows/layer-verdict-lane.js",
"source_repository": "agent-lab",
"supersedes_sha256": "5cbf6becbc9cc5d15a070afebab322df895242b76f62a85a1aa620960984dd4a",
"verified_identical_at_agentlab_commit": "e6953e50e2e80c381a182003d20e1340db304b16"
"supersedes_sha256": "2eb9c10d40db7dd058376d03c973c55433b30d6e0d86f72e563da6627d8e7fbb",
"verified_identical_at_agentlab_commit": "aacd93774f8aadfff4d650feeb5a15c074f8b2b0"
}
],
"schema_version": 1,
Expand Down
6 changes: 3 additions & 3 deletions manifests/evidence.json
Original file line number Diff line number Diff line change
Expand Up @@ -14180,7 +14180,7 @@
},
{
"path": "examples/claude-native/workflows/SHA256SUMS",
"sha256": "6c806833c193c6ba7304672b8a8dd0058224417c29e78041c64bd25c23b28a1d",
"sha256": "cb039d7b829d2aa37307e1d3f021690c72cc3c5099d08c97dbbebe6fb027568c",
"bytes": 1129
},
{
Expand Down Expand Up @@ -15275,8 +15275,8 @@
},
{
"path": "tools/sota-convergence/README.md",
"sha256": "91dfee540be37f8efa4338b887d67df4430f9f9da8625f99e496d9883cf83d11",
"bytes": 79618
"sha256": "a2dafc0776d3bdf64a8948af1bebf5f904df8599ead296ea4f9440b947abd3f5",
"bytes": 82624
},
{
"path": "tools/sota-convergence/build_manifest.py",
Expand Down
28 changes: 28 additions & 0 deletions tests/test_blind_checkout.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@
it, but the fixture content, taxonomy and every catalog/blueprint shape are
synthetic, not a real repository checkout.
"""
import contextlib
import hashlib
import importlib.util
import io
import json
import shutil
import subprocess
Expand Down Expand Up @@ -372,5 +374,31 @@ def test_classified_texts_override_the_rules(self):
self.assertFalse(blind_checkout.is_label_value("top_20"))


class ExportTests(BlindCheckoutFixture):
"""2026-09-23 re-record: lanes get a copy without .git, whose history recovers every stripped value."""

def test_export_has_the_stripped_tree_without_git_or_the_manifest(self):
export = self.dest.parent / "export"
with contextlib.redirect_stdout(io.StringIO()):
self.assertEqual(blind_checkout.main(["--source", str(self.source), "--rev", "HEAD",
"--dest", str(self.dest), "--export", str(export)]), 0)
self.addCleanup(lambda: git(["worktree", "remove", "--force", str(self.dest)], self.source))
self.assertTrue((self.dest / ".git").exists())
self.assertFalse((export / ".git").exists())
self.assertFalse((export / "BLIND-MANIFEST.json").exists())
exported = json.loads((export / "catalogs/other/decisions.json").read_text(encoding="utf-8"))
self.assertNotIn("selection", json.dumps(exported))
self.assertEqual((export / "catalogs/other/decisions.json").read_bytes(),
(self.dest / "catalogs/other/decisions.json").read_bytes())

def test_an_existing_export_is_refused_before_anything_is_created(self):
export = self.dest.parent / "export"
export.mkdir()
with self.assertRaises(SystemExit):
blind_checkout.main(["--source", str(self.source), "--rev", "HEAD", "--dest", str(self.dest),
"--export", str(export)])
self.assertFalse(self.dest.exists())


if __name__ == "__main__":
unittest.main()
Loading
Loading