@hunter-harness/workflow-harness 0.4.8 → 0.4.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/harness/bundles/general/claude-code/.harness-build.json +1 -1
- package/harness/bundles/general/claude-code/CONTEXT.md +1 -1
- package/harness/bundles/general/claude-code/README.md +36 -38
- package/harness/bundles/general/claude-code/contracts/workflow-policy.json +0 -50
- package/harness/bundles/general/claude-code/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/general/claude-code/harness-execute/SKILL.md +17 -17
- package/harness/bundles/general/{codex/harness-run/checklist.md → claude-code/harness-execute/coding-checklist.md} +9 -9
- package/harness/bundles/general/{codex/harness-run/reference.md → claude-code/harness-execute/coding-reference.md} +36 -36
- package/harness/bundles/general/{codex/harness-run → claude-code/harness-execute}/protocols.md +4 -4
- package/harness/bundles/general/{codebuddy/harness-test/checklist.md → claude-code/harness-execute/testing-checklist.md} +9 -10
- package/harness/bundles/general/claude-code/harness-execute/testing-pitfalls-java.md +21 -0
- package/harness/bundles/general/{codex/harness-test/pitfalls.md → claude-code/harness-execute/testing-pitfalls.md} +7 -7
- package/harness/bundles/general/claude-code/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/general/claude-code/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/general/claude-code/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-plan/SKILL.md +3 -3
- package/harness/bundles/general/claude-code/harness-plan/checklist.md +2 -1
- package/harness/bundles/general/claude-code/harness-plan/reference.md +8 -0
- package/harness/bundles/general/claude-code/harness-pull/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-push/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-review/SKILL.md +3 -3
- package/harness/bundles/general/claude-code/harness-review/checklist.md +1 -1
- package/harness/bundles/general/claude-code/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-submit/checklist.md +1 -1
- package/harness/bundles/general/claude-code/harness-submit/reference.md +1 -1
- package/harness/bundles/general/claude-code/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/general/claude-code/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/general/claude-code/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/general/claude-code/scripts/harness_context.py +71 -8
- package/harness/bundles/general/claude-code/scripts/harness_deploy.py +2 -2
- package/harness/bundles/general/claude-code/scripts/harness_events.py +17 -11
- package/harness/bundles/general/claude-code/scripts/harness_gate.py +95 -10
- package/harness/bundles/general/claude-code/scripts/harness_ledger.py +84 -4
- package/harness/bundles/general/claude-code/scripts/harness_profile.py +3 -3
- package/harness/bundles/general/codebuddy/.harness-build.json +1 -1
- package/harness/bundles/general/codebuddy/CONTEXT.md +1 -1
- package/harness/bundles/general/codebuddy/README.md +36 -38
- package/harness/bundles/general/codebuddy/contracts/workflow-policy.json +0 -50
- package/harness/bundles/general/codebuddy/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/general/codebuddy/harness-execute/SKILL.md +17 -17
- package/harness/bundles/general/{claude-code/harness-run/checklist.md → codebuddy/harness-execute/coding-checklist.md} +9 -9
- package/harness/bundles/general/codebuddy/{harness-run/reference.md → harness-execute/coding-reference.md} +36 -36
- package/harness/bundles/general/codebuddy/{harness-run → harness-execute}/protocols.md +4 -4
- package/harness/bundles/general/{codex/harness-test/checklist.md → codebuddy/harness-execute/testing-checklist.md} +9 -10
- package/harness/bundles/general/codebuddy/harness-execute/testing-pitfalls-java.md +21 -0
- package/harness/bundles/general/{claude-code/harness-test/pitfalls.md → codebuddy/harness-execute/testing-pitfalls.md} +7 -7
- package/harness/bundles/general/codebuddy/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/general/codebuddy/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/general/codebuddy/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-plan/SKILL.md +3 -3
- package/harness/bundles/general/codebuddy/harness-plan/checklist.md +2 -1
- package/harness/bundles/general/codebuddy/harness-plan/reference.md +8 -0
- package/harness/bundles/general/codebuddy/harness-pull/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-push/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-review/SKILL.md +3 -3
- package/harness/bundles/general/codebuddy/harness-review/checklist.md +1 -1
- package/harness/bundles/general/codebuddy/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-submit/checklist.md +1 -1
- package/harness/bundles/general/codebuddy/harness-submit/reference.md +1 -1
- package/harness/bundles/general/codebuddy/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/general/codebuddy/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/general/codebuddy/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/general/codebuddy/scripts/harness_context.py +71 -8
- package/harness/bundles/general/codebuddy/scripts/harness_deploy.py +2 -2
- package/harness/bundles/general/codebuddy/scripts/harness_events.py +17 -11
- package/harness/bundles/general/codebuddy/scripts/harness_gate.py +95 -10
- package/harness/bundles/general/codebuddy/scripts/harness_ledger.py +84 -4
- package/harness/bundles/general/codebuddy/scripts/harness_profile.py +3 -3
- package/harness/bundles/general/codex/.harness-build.json +1 -1
- package/harness/bundles/general/codex/CONTEXT.md +1 -1
- package/harness/bundles/general/codex/README.md +36 -38
- package/harness/bundles/general/codex/contracts/workflow-policy.json +0 -50
- package/harness/bundles/general/codex/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/general/codex/harness-execute/SKILL.md +17 -17
- package/harness/bundles/general/{cursor/harness-run/checklist.md → codex/harness-execute/coding-checklist.md} +9 -9
- package/harness/bundles/general/{cursor/harness-run/reference.md → codex/harness-execute/coding-reference.md} +36 -36
- package/harness/bundles/general/{claude-code/harness-run → codex/harness-execute}/protocols.md +4 -4
- package/harness/bundles/general/{cursor/harness-test/checklist.md → codex/harness-execute/testing-checklist.md} +9 -10
- package/harness/bundles/general/codex/harness-execute/testing-pitfalls-java.md +21 -0
- package/harness/bundles/general/{codebuddy/harness-test/pitfalls.md → codex/harness-execute/testing-pitfalls.md} +7 -7
- package/harness/bundles/general/codex/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/general/codex/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/general/codex/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-plan/SKILL.md +3 -3
- package/harness/bundles/general/codex/harness-plan/checklist.md +2 -1
- package/harness/bundles/general/codex/harness-plan/reference.md +8 -0
- package/harness/bundles/general/codex/harness-pull/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-push/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-review/SKILL.md +3 -3
- package/harness/bundles/general/codex/harness-review/checklist.md +1 -1
- package/harness/bundles/general/codex/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-submit/checklist.md +1 -1
- package/harness/bundles/general/codex/harness-submit/reference.md +1 -1
- package/harness/bundles/general/codex/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/codex/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/general/codex/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/general/codex/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/general/codex/scripts/harness_context.py +71 -8
- package/harness/bundles/general/codex/scripts/harness_deploy.py +2 -2
- package/harness/bundles/general/codex/scripts/harness_events.py +17 -11
- package/harness/bundles/general/codex/scripts/harness_gate.py +95 -10
- package/harness/bundles/general/codex/scripts/harness_ledger.py +84 -4
- package/harness/bundles/general/codex/scripts/harness_profile.py +3 -3
- package/harness/bundles/general/cursor/.harness-build.json +1 -1
- package/harness/bundles/general/cursor/CONTEXT.md +1 -1
- package/harness/bundles/general/cursor/README.md +36 -38
- package/harness/bundles/general/cursor/contracts/workflow-policy.json +0 -50
- package/harness/bundles/general/cursor/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/general/cursor/harness-execute/SKILL.md +17 -17
- package/harness/bundles/general/{codebuddy/harness-run/checklist.md → cursor/harness-execute/coding-checklist.md} +9 -9
- package/harness/bundles/general/{claude-code/harness-run/reference.md → cursor/harness-execute/coding-reference.md} +36 -36
- package/harness/bundles/general/cursor/{harness-run → harness-execute}/protocols.md +4 -4
- package/harness/bundles/general/{claude-code/harness-test/checklist.md → cursor/harness-execute/testing-checklist.md} +9 -10
- package/harness/bundles/general/cursor/harness-execute/testing-pitfalls-java.md +21 -0
- package/harness/bundles/general/cursor/{harness-test/pitfalls.md → harness-execute/testing-pitfalls.md} +7 -7
- package/harness/bundles/general/cursor/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/general/cursor/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/general/cursor/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-plan/SKILL.md +3 -3
- package/harness/bundles/general/cursor/harness-plan/checklist.md +2 -1
- package/harness/bundles/general/cursor/harness-plan/reference.md +8 -0
- package/harness/bundles/general/cursor/harness-pull/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-push/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-review/SKILL.md +3 -3
- package/harness/bundles/general/cursor/harness-review/checklist.md +1 -1
- package/harness/bundles/general/cursor/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-submit/checklist.md +1 -1
- package/harness/bundles/general/cursor/harness-submit/reference.md +1 -1
- package/harness/bundles/general/cursor/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/cursor/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/general/cursor/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/general/cursor/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/general/cursor/scripts/harness_context.py +71 -8
- package/harness/bundles/general/cursor/scripts/harness_deploy.py +2 -2
- package/harness/bundles/general/cursor/scripts/harness_events.py +17 -11
- package/harness/bundles/general/cursor/scripts/harness_gate.py +95 -10
- package/harness/bundles/general/cursor/scripts/harness_ledger.py +84 -4
- package/harness/bundles/general/cursor/scripts/harness_profile.py +3 -3
- package/harness/bundles/general/pi/.harness-build.json +1 -1
- package/harness/bundles/general/pi/CONTEXT.md +1 -1
- package/harness/bundles/general/pi/README.md +36 -38
- package/harness/bundles/general/pi/contracts/workflow-policy.json +0 -50
- package/harness/bundles/general/pi/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/pi/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/pi/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/general/pi/harness-execute/SKILL.md +17 -17
- package/harness/bundles/general/pi/harness-execute/coding-checklist.md +279 -0
- package/harness/bundles/general/pi/harness-execute/coding-reference.md +886 -0
- package/harness/bundles/general/pi/harness-execute/protocols.md +141 -0
- package/harness/bundles/general/pi/harness-execute/testing-checklist.md +358 -0
- package/harness/bundles/general/pi/harness-execute/testing-pitfalls-java.md +21 -0
- package/harness/bundles/general/pi/harness-execute/testing-pitfalls.md +307 -0
- package/harness/bundles/general/pi/harness-execute/testing-reference.md +880 -0
- package/harness/bundles/general/pi/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/general/pi/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/pi/harness-plan/SKILL.md +3 -3
- package/harness/bundles/general/pi/harness-plan/checklist.md +2 -1
- package/harness/bundles/general/pi/harness-plan/reference.md +8 -0
- package/harness/bundles/general/pi/harness-pull/SKILL.md +1 -1
- package/harness/bundles/general/pi/harness-push/SKILL.md +1 -1
- package/harness/bundles/general/pi/harness-review/SKILL.md +3 -3
- package/harness/bundles/general/pi/harness-review/checklist.md +1 -1
- package/harness/bundles/general/pi/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/pi/harness-submit/checklist.md +1 -1
- package/harness/bundles/general/pi/harness-submit/reference.md +1 -1
- package/harness/bundles/general/pi/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/pi/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/general/pi/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/general/pi/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/general/pi/scripts/harness_context.py +71 -8
- package/harness/bundles/general/pi/scripts/harness_deploy.py +2 -2
- package/harness/bundles/general/pi/scripts/harness_events.py +17 -11
- package/harness/bundles/general/pi/scripts/harness_gate.py +95 -10
- package/harness/bundles/general/pi/scripts/harness_ledger.py +84 -4
- package/harness/bundles/general/pi/scripts/harness_profile.py +3 -3
- package/harness/bundles/java/claude-code/.harness-build.json +1 -1
- package/harness/bundles/java/claude-code/CONTEXT.md +1 -1
- package/harness/bundles/java/claude-code/README.md +36 -38
- package/harness/bundles/java/claude-code/contracts/workflow-policy.json +0 -50
- package/harness/bundles/java/claude-code/harness-apidoc/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-archive/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/java/claude-code/harness-execute/SKILL.md +49 -17
- package/harness/bundles/java/claude-code/{harness-run/checklist.md → harness-execute/coding-checklist.md} +6 -6
- package/harness/bundles/java/claude-code/{harness-run/reference.md → harness-execute/coding-reference.md} +37 -37
- package/harness/bundles/java/claude-code/harness-execute/protocols.md +141 -0
- package/harness/bundles/java/claude-code/{harness-test/checklist.md → harness-execute/testing-checklist.md} +9 -9
- package/harness/bundles/java/claude-code/{harness-test/pitfalls-java.md → harness-execute/testing-pitfalls-java.md} +2 -1
- package/harness/bundles/java/claude-code/harness-execute/testing-pitfalls.md +307 -0
- package/harness/bundles/java/claude-code/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/java/claude-code/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/java/claude-code/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-package/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-package/checklist.md +7 -7
- package/harness/bundles/java/claude-code/harness-plan/SKILL.md +3 -3
- package/harness/bundles/java/claude-code/harness-plan/checklist.md +2 -1
- package/harness/bundles/java/claude-code/harness-plan/reference.md +8 -0
- package/harness/bundles/java/claude-code/harness-pull/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-push/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-review/SKILL.md +3 -3
- package/harness/bundles/java/claude-code/harness-review/checklist.md +1 -1
- package/harness/bundles/java/claude-code/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-submit/checklist.md +1 -1
- package/harness/bundles/java/claude-code/harness-submit/reference.md +1 -1
- package/harness/bundles/java/claude-code/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/java/claude-code/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/java/claude-code/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/java/claude-code/scripts/harness_context.py +71 -8
- package/harness/bundles/java/claude-code/scripts/harness_deploy.py +2 -2
- package/harness/bundles/java/claude-code/scripts/harness_events.py +17 -11
- package/harness/bundles/java/claude-code/scripts/harness_gate.py +95 -10
- package/harness/bundles/java/claude-code/scripts/harness_ledger.py +84 -4
- package/harness/bundles/java/claude-code/scripts/harness_profile.py +3 -3
- package/harness/bundles/java/codebuddy/.harness-build.json +1 -1
- package/harness/bundles/java/codebuddy/CONTEXT.md +1 -1
- package/harness/bundles/java/codebuddy/README.md +36 -38
- package/harness/bundles/java/codebuddy/contracts/workflow-policy.json +0 -50
- package/harness/bundles/java/codebuddy/harness-apidoc/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-archive/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/java/codebuddy/harness-execute/SKILL.md +49 -17
- package/harness/bundles/java/codebuddy/{harness-run/checklist.md → harness-execute/coding-checklist.md} +6 -6
- package/harness/bundles/java/codebuddy/{harness-run/reference.md → harness-execute/coding-reference.md} +37 -37
- package/harness/bundles/java/codebuddy/harness-execute/protocols.md +141 -0
- package/harness/bundles/java/codebuddy/{harness-test/checklist.md → harness-execute/testing-checklist.md} +9 -9
- package/harness/bundles/java/codebuddy/{harness-test/pitfalls-java.md → harness-execute/testing-pitfalls-java.md} +2 -1
- package/harness/bundles/java/codebuddy/harness-execute/testing-pitfalls.md +307 -0
- package/harness/bundles/java/codebuddy/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/java/codebuddy/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/java/codebuddy/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-package/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-package/checklist.md +7 -7
- package/harness/bundles/java/codebuddy/harness-plan/SKILL.md +3 -3
- package/harness/bundles/java/codebuddy/harness-plan/checklist.md +2 -1
- package/harness/bundles/java/codebuddy/harness-plan/reference.md +8 -0
- package/harness/bundles/java/codebuddy/harness-pull/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-push/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-review/SKILL.md +3 -3
- package/harness/bundles/java/codebuddy/harness-review/checklist.md +1 -1
- package/harness/bundles/java/codebuddy/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-submit/checklist.md +1 -1
- package/harness/bundles/java/codebuddy/harness-submit/reference.md +1 -1
- package/harness/bundles/java/codebuddy/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/java/codebuddy/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/java/codebuddy/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/java/codebuddy/scripts/harness_context.py +71 -8
- package/harness/bundles/java/codebuddy/scripts/harness_deploy.py +2 -2
- package/harness/bundles/java/codebuddy/scripts/harness_events.py +17 -11
- package/harness/bundles/java/codebuddy/scripts/harness_gate.py +95 -10
- package/harness/bundles/java/codebuddy/scripts/harness_ledger.py +84 -4
- package/harness/bundles/java/codebuddy/scripts/harness_profile.py +3 -3
- package/harness/bundles/java/codex/.harness-build.json +1 -1
- package/harness/bundles/java/codex/CONTEXT.md +1 -1
- package/harness/bundles/java/codex/README.md +36 -38
- package/harness/bundles/java/codex/contracts/workflow-policy.json +0 -50
- package/harness/bundles/java/codex/harness-apidoc/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-archive/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/java/codex/harness-execute/SKILL.md +49 -17
- package/harness/bundles/java/codex/{harness-run/checklist.md → harness-execute/coding-checklist.md} +6 -6
- package/harness/bundles/java/codex/{harness-run/reference.md → harness-execute/coding-reference.md} +37 -37
- package/harness/bundles/java/codex/harness-execute/protocols.md +141 -0
- package/harness/bundles/java/codex/{harness-test/checklist.md → harness-execute/testing-checklist.md} +9 -9
- package/harness/bundles/java/codex/{harness-test/pitfalls-java.md → harness-execute/testing-pitfalls-java.md} +2 -1
- package/harness/bundles/java/codex/harness-execute/testing-pitfalls.md +307 -0
- package/harness/bundles/java/codex/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/java/codex/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/java/codex/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-package/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-package/checklist.md +7 -7
- package/harness/bundles/java/codex/harness-plan/SKILL.md +3 -3
- package/harness/bundles/java/codex/harness-plan/checklist.md +2 -1
- package/harness/bundles/java/codex/harness-plan/reference.md +8 -0
- package/harness/bundles/java/codex/harness-pull/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-push/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-review/SKILL.md +3 -3
- package/harness/bundles/java/codex/harness-review/checklist.md +1 -1
- package/harness/bundles/java/codex/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-submit/checklist.md +1 -1
- package/harness/bundles/java/codex/harness-submit/reference.md +1 -1
- package/harness/bundles/java/codex/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/codex/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/java/codex/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/java/codex/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/java/codex/scripts/harness_context.py +71 -8
- package/harness/bundles/java/codex/scripts/harness_deploy.py +2 -2
- package/harness/bundles/java/codex/scripts/harness_events.py +17 -11
- package/harness/bundles/java/codex/scripts/harness_gate.py +95 -10
- package/harness/bundles/java/codex/scripts/harness_ledger.py +84 -4
- package/harness/bundles/java/codex/scripts/harness_profile.py +3 -3
- package/harness/bundles/java/cursor/.harness-build.json +1 -1
- package/harness/bundles/java/cursor/CONTEXT.md +1 -1
- package/harness/bundles/java/cursor/README.md +36 -38
- package/harness/bundles/java/cursor/contracts/workflow-policy.json +0 -50
- package/harness/bundles/java/cursor/harness-apidoc/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-archive/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/java/cursor/harness-execute/SKILL.md +49 -17
- package/harness/bundles/java/cursor/{harness-run/checklist.md → harness-execute/coding-checklist.md} +6 -6
- package/harness/bundles/java/cursor/{harness-run/reference.md → harness-execute/coding-reference.md} +37 -37
- package/harness/bundles/java/cursor/harness-execute/protocols.md +141 -0
- package/harness/bundles/java/cursor/{harness-test/checklist.md → harness-execute/testing-checklist.md} +9 -9
- package/harness/bundles/java/cursor/{harness-test/pitfalls-java.md → harness-execute/testing-pitfalls-java.md} +2 -1
- package/harness/bundles/java/cursor/harness-execute/testing-pitfalls.md +307 -0
- package/harness/bundles/java/cursor/{harness-test/reference.md → harness-execute/testing-reference.md} +13 -13
- package/harness/bundles/java/cursor/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/java/cursor/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-package/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-package/checklist.md +7 -7
- package/harness/bundles/java/cursor/harness-plan/SKILL.md +3 -3
- package/harness/bundles/java/cursor/harness-plan/checklist.md +2 -1
- package/harness/bundles/java/cursor/harness-plan/reference.md +8 -0
- package/harness/bundles/java/cursor/harness-pull/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-push/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-review/SKILL.md +3 -3
- package/harness/bundles/java/cursor/harness-review/checklist.md +1 -1
- package/harness/bundles/java/cursor/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-submit/checklist.md +1 -1
- package/harness/bundles/java/cursor/harness-submit/reference.md +1 -1
- package/harness/bundles/java/cursor/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/cursor/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/java/cursor/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/java/cursor/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/java/cursor/scripts/harness_context.py +71 -8
- package/harness/bundles/java/cursor/scripts/harness_deploy.py +2 -2
- package/harness/bundles/java/cursor/scripts/harness_events.py +17 -11
- package/harness/bundles/java/cursor/scripts/harness_gate.py +95 -10
- package/harness/bundles/java/cursor/scripts/harness_ledger.py +84 -4
- package/harness/bundles/java/cursor/scripts/harness_profile.py +3 -3
- package/harness/bundles/java/pi/.harness-build.json +1 -1
- package/harness/bundles/java/pi/CONTEXT.md +1 -1
- package/harness/bundles/java/pi/README.md +36 -38
- package/harness/bundles/java/pi/contracts/workflow-policy.json +0 -50
- package/harness/bundles/java/pi/harness-apidoc/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-archive/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-codebase-map/templates/TESTING.md +1 -1
- package/harness/bundles/java/pi/harness-execute/SKILL.md +49 -17
- package/harness/bundles/java/pi/harness-execute/coding-checklist.md +252 -0
- package/harness/bundles/java/pi/harness-execute/coding-reference.md +820 -0
- package/harness/bundles/java/pi/harness-execute/protocols.md +141 -0
- package/harness/bundles/java/pi/harness-execute/testing-checklist.md +320 -0
- package/harness/bundles/java/pi/harness-execute/testing-pitfalls-java.md +17 -0
- package/harness/bundles/java/pi/harness-execute/testing-pitfalls.md +307 -0
- package/harness/bundles/java/pi/harness-execute/testing-reference.md +792 -0
- package/harness/bundles/java/pi/harness-knowledge-ingest/SKILL.md +7 -1
- package/harness/bundles/java/pi/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-package/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-package/checklist.md +7 -7
- package/harness/bundles/java/pi/harness-plan/SKILL.md +3 -3
- package/harness/bundles/java/pi/harness-plan/checklist.md +2 -1
- package/harness/bundles/java/pi/harness-plan/reference.md +8 -0
- package/harness/bundles/java/pi/harness-pull/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-push/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-review/SKILL.md +3 -3
- package/harness/bundles/java/pi/harness-review/checklist.md +1 -1
- package/harness/bundles/java/pi/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/pi/harness-submit/checklist.md +1 -1
- package/harness/bundles/java/pi/harness-submit/reference.md +1 -1
- package/harness/bundles/java/pi/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/pi/protocols/evidence-based-reporting-protocol.md +1 -1
- package/harness/bundles/java/pi/protocols/ledger-protocol.md +8 -8
- package/harness/bundles/java/pi/protocols/sensitive-info-protocol.md +2 -2
- package/harness/bundles/java/pi/scripts/harness_context.py +71 -8
- package/harness/bundles/java/pi/scripts/harness_deploy.py +2 -2
- package/harness/bundles/java/pi/scripts/harness_events.py +17 -11
- package/harness/bundles/java/pi/scripts/harness_gate.py +95 -10
- package/harness/bundles/java/pi/scripts/harness_ledger.py +84 -4
- package/harness/bundles/java/pi/scripts/harness_profile.py +3 -3
- package/harness/manifests/general/claude-code.json +62 -70
- package/harness/manifests/general/codebuddy.json +62 -70
- package/harness/manifests/general/codex.json +62 -70
- package/harness/manifests/general/cursor.json +62 -70
- package/harness/manifests/general/pi.json +62 -70
- package/harness/manifests/java/claude-code.json +65 -73
- package/harness/manifests/java/codebuddy.json +65 -73
- package/harness/manifests/java/codex.json +65 -73
- package/harness/manifests/java/cursor.json +65 -73
- package/harness/manifests/java/pi.json +65 -73
- package/hunter-workflow-family.json +2 -2
- package/package.json +1 -1
- package/harness/bundles/general/claude-code/harness-run/SKILL.md +0 -207
- package/harness/bundles/general/claude-code/harness-test/SKILL.md +0 -270
- package/harness/bundles/general/claude-code/harness-test/pitfalls-java.md +0 -14
- package/harness/bundles/general/codebuddy/harness-run/SKILL.md +0 -188
- package/harness/bundles/general/codebuddy/harness-test/SKILL.md +0 -250
- package/harness/bundles/general/codebuddy/harness-test/pitfalls-java.md +0 -14
- package/harness/bundles/general/codex/harness-run/SKILL.md +0 -188
- package/harness/bundles/general/codex/harness-test/SKILL.md +0 -250
- package/harness/bundles/general/codex/harness-test/pitfalls-java.md +0 -14
- package/harness/bundles/general/cursor/harness-run/SKILL.md +0 -188
- package/harness/bundles/general/cursor/harness-test/SKILL.md +0 -250
- package/harness/bundles/general/cursor/harness-test/pitfalls-java.md +0 -14
- package/harness/bundles/general/pi/harness-run/SKILL.md +0 -188
- package/harness/bundles/general/pi/harness-run/checklist.md +0 -279
- package/harness/bundles/general/pi/harness-run/protocols.md +0 -141
- package/harness/bundles/general/pi/harness-run/reference.md +0 -886
- package/harness/bundles/general/pi/harness-test/SKILL.md +0 -250
- package/harness/bundles/general/pi/harness-test/checklist.md +0 -359
- package/harness/bundles/general/pi/harness-test/pitfalls-java.md +0 -14
- package/harness/bundles/general/pi/harness-test/pitfalls.md +0 -307
- package/harness/bundles/general/pi/harness-test/reference.md +0 -880
- package/harness/bundles/java/claude-code/harness-run/SKILL.md +0 -225
- package/harness/bundles/java/claude-code/harness-run/protocols.md +0 -141
- package/harness/bundles/java/claude-code/harness-test/SKILL.md +0 -284
- package/harness/bundles/java/claude-code/harness-test/pitfalls.md +0 -307
- package/harness/bundles/java/codebuddy/harness-run/SKILL.md +0 -206
- package/harness/bundles/java/codebuddy/harness-run/protocols.md +0 -141
- package/harness/bundles/java/codebuddy/harness-test/SKILL.md +0 -264
- package/harness/bundles/java/codebuddy/harness-test/pitfalls.md +0 -307
- package/harness/bundles/java/codex/harness-run/SKILL.md +0 -206
- package/harness/bundles/java/codex/harness-run/protocols.md +0 -141
- package/harness/bundles/java/codex/harness-test/SKILL.md +0 -264
- package/harness/bundles/java/codex/harness-test/pitfalls.md +0 -307
- package/harness/bundles/java/cursor/harness-run/SKILL.md +0 -206
- package/harness/bundles/java/cursor/harness-run/protocols.md +0 -141
- package/harness/bundles/java/cursor/harness-test/SKILL.md +0 -264
- package/harness/bundles/java/cursor/harness-test/pitfalls.md +0 -307
- package/harness/bundles/java/pi/harness-run/SKILL.md +0 -206
- package/harness/bundles/java/pi/harness-run/checklist.md +0 -252
- package/harness/bundles/java/pi/harness-run/protocols.md +0 -141
- package/harness/bundles/java/pi/harness-run/reference.md +0 -820
- package/harness/bundles/java/pi/harness-test/SKILL.md +0 -264
- package/harness/bundles/java/pi/harness-test/checklist.md +0 -320
- package/harness/bundles/java/pi/harness-test/pitfalls-java.md +0 -16
- package/harness/bundles/java/pi/harness-test/pitfalls.md +0 -307
- package/harness/bundles/java/pi/harness-test/reference.md +0 -792
- /package/harness/bundles/general/claude-code/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/general/codebuddy/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/general/codex/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/general/cursor/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/general/pi/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/java/claude-code/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/java/codebuddy/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/java/codex/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/java/cursor/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
- /package/harness/bundles/java/pi/{harness-test → harness-execute}/scripts/runtime-helpers.mjs +0 -0
|
@@ -2220,7 +2220,7 @@ def _validate_scenario_coverage(
|
|
|
2220
2220
|
is due by that phase are required to carry passing receipts. Scenarios
|
|
2221
2221
|
owned by a later phase (e.g. `ownerPhase=test` at `run` close) are
|
|
2222
2222
|
reported under `deferred` instead of blocking the close — this matches the
|
|
2223
|
-
documented hand-off rule in harness-
|
|
2223
|
+
documented hand-off rule in harness-execute/SKILL.md ("ownerPhase=test 按计划移交").
|
|
2224
2224
|
"""
|
|
2225
2225
|
manifest_path = change_dir / "meta" / "scenario-manifest.json"
|
|
2226
2226
|
if not manifest_path.is_file():
|
|
@@ -2594,6 +2594,64 @@ def _normalize_gate_phase(args: argparse.Namespace, as_json: bool) -> int | None
|
|
|
2594
2594
|
)
|
|
2595
2595
|
|
|
2596
2596
|
|
|
2597
|
+
def _verification_target_coverage_warning(
|
|
2598
|
+
change_dir: Path, phase: str
|
|
2599
|
+
) -> dict[str, Any] | None:
|
|
2600
|
+
"""E-5:场景表引用未声明的 verification target 时提前 WARN。
|
|
2601
|
+
|
|
2602
|
+
场景带 execution_level(unit/integration/…),但 build-profile 的
|
|
2603
|
+
verificationGraph.targets 未声明对应 target 时,问题要等到 ledger record
|
|
2604
|
+
才以 unsupported verification 报错——太迟。gate begin 提前列出待补清单。
|
|
2605
|
+
映射约定:unit → unitTest;其他 level → 任一以其名开头的 target。
|
|
2606
|
+
"""
|
|
2607
|
+
if phase != "execute":
|
|
2608
|
+
return None
|
|
2609
|
+
manifest_path = change_dir / "meta" / "scenario-manifest.json"
|
|
2610
|
+
profile_path = change_dir / "meta" / "build-profile.json"
|
|
2611
|
+
if not profile_path.is_file():
|
|
2612
|
+
# build-profile 常规位置在项目 .harness/config/;change meta 下优先
|
|
2613
|
+
profile_path = change_dir.parents[2] / ".harness" / "config" / "build-profile.json"
|
|
2614
|
+
if not manifest_path.is_file() or not profile_path.is_file():
|
|
2615
|
+
return None
|
|
2616
|
+
try:
|
|
2617
|
+
manifest = json.loads(manifest_path.read_text(encoding="utf-8-sig"))
|
|
2618
|
+
profile = json.loads(profile_path.read_text(encoding="utf-8-sig"))
|
|
2619
|
+
except (OSError, json.JSONDecodeError):
|
|
2620
|
+
return None
|
|
2621
|
+
content = manifest.get("content") if isinstance(manifest, dict) else None
|
|
2622
|
+
scenarios = content.get("scenarios") if isinstance(content, dict) else None
|
|
2623
|
+
if not isinstance(scenarios, list):
|
|
2624
|
+
return None
|
|
2625
|
+
levels = sorted({
|
|
2626
|
+
str(s.get("execution_level")).strip()
|
|
2627
|
+
for s in scenarios
|
|
2628
|
+
if isinstance(s, dict) and str(s.get("execution_level") or "").strip()
|
|
2629
|
+
})
|
|
2630
|
+
graph = profile.get("verificationGraph")
|
|
2631
|
+
targets = graph.get("targets") if isinstance(graph, dict) else None
|
|
2632
|
+
target_names = set(targets.keys()) if isinstance(targets, dict) else set()
|
|
2633
|
+
uncovered = [
|
|
2634
|
+
level for level in levels
|
|
2635
|
+
if level != "unit"
|
|
2636
|
+
and not any(name.lower().startswith(level.lower()) for name in target_names)
|
|
2637
|
+
]
|
|
2638
|
+
# unit 场景由 unitTest 覆盖;只在完全没有 unitTest 时才算缺口
|
|
2639
|
+
if "unit" in levels and "unitTest" not in target_names:
|
|
2640
|
+
uncovered.append("unit(→unitTest)")
|
|
2641
|
+
if not uncovered:
|
|
2642
|
+
return None
|
|
2643
|
+
return {
|
|
2644
|
+
"code": "VERIFICATION_TARGETS_UNDECLARED",
|
|
2645
|
+
"message": (
|
|
2646
|
+
"场景表涉及未声明的验证级别: " + ", ".join(uncovered) +
|
|
2647
|
+
";ledger record 将报 unsupported verification。请在 "
|
|
2648
|
+
".harness/config/build-profile.json 的 verificationGraph.targets "
|
|
2649
|
+
"声明对应 target(如 integrationTest)"
|
|
2650
|
+
),
|
|
2651
|
+
"uncoveredLevels": uncovered,
|
|
2652
|
+
}
|
|
2653
|
+
|
|
2654
|
+
|
|
2597
2655
|
def cmd_begin(args: argparse.Namespace) -> int:
|
|
2598
2656
|
as_json = bool(args.json)
|
|
2599
2657
|
normalized = _normalize_gate_phase(args, as_json)
|
|
@@ -2911,6 +2969,14 @@ def cmd_begin(args: argparse.Namespace) -> int:
|
|
|
2911
2969
|
)
|
|
2912
2970
|
raise
|
|
2913
2971
|
|
|
2972
|
+
coverage_warning = _verification_target_coverage_warning(change_dir, args.phase)
|
|
2973
|
+
if coverage_warning is not None:
|
|
2974
|
+
gate_warnings.append(coverage_warning)
|
|
2975
|
+
print(
|
|
2976
|
+
f"[harness-gate] WARNING {coverage_warning['code']}: "
|
|
2977
|
+
f"{coverage_warning['message']}",
|
|
2978
|
+
file=sys.stderr,
|
|
2979
|
+
)
|
|
2914
2980
|
payload = {
|
|
2915
2981
|
"ok": True,
|
|
2916
2982
|
"code": "PHASE_BEGUN",
|
|
@@ -3800,11 +3866,25 @@ def cmd_classify(args: argparse.Namespace) -> int:
|
|
|
3800
3866
|
payload["classifiedAt"] = classified_at
|
|
3801
3867
|
|
|
3802
3868
|
if change_dir is not None and change_dir.is_dir():
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3869
|
+
finalized = (change_dir / "meta" / "plan-profile.json").is_file()
|
|
3870
|
+
if finalized and not getattr(args, "force", False):
|
|
3871
|
+
# P1-1:classify 形态像只读查询,实际是写操作。已发布的 change
|
|
3872
|
+
# 被误跑 classify 会覆盖 configure-plan 写入的工作副本(2026-08-30
|
|
3873
|
+
# demo-datasource 实测 plannedPhases 被清)。默认拒写并显式提示。
|
|
3874
|
+
payload["policyPersisted"] = False
|
|
3875
|
+
payload["warning"] = (
|
|
3876
|
+
"change 已发布(meta/plan-profile.json 存在),classify 不再重写 "
|
|
3877
|
+
"meta/gate-policy.json 工作副本;确需重算请显式传 --force"
|
|
3878
|
+
)
|
|
3879
|
+
payload["writeGuarded"] = True
|
|
3880
|
+
else:
|
|
3881
|
+
policy_doc = gate_policy_document(payload)
|
|
3882
|
+
policy_path = change_dir / "meta" / "gate-policy.json"
|
|
3883
|
+
_write_json(policy_path, policy_doc)
|
|
3884
|
+
payload["policyPersisted"] = True
|
|
3885
|
+
payload["policyPath"] = str(policy_path)
|
|
3886
|
+
if finalized:
|
|
3887
|
+
payload["warning"] = "--force:已发布 change 的工作副本已被重写"
|
|
3808
3888
|
else:
|
|
3809
3889
|
payload["policyPersisted"] = False
|
|
3810
3890
|
payload["warning"] = (
|
|
@@ -3930,7 +4010,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3930
4010
|
|
|
3931
4011
|
p_begin = sub.add_parser("begin", parents=[shared])
|
|
3932
4012
|
p_begin.add_argument("--phase", required=True)
|
|
3933
|
-
p_begin.add_argument("--change", default=None)
|
|
4013
|
+
p_begin.add_argument("--change", "--change-dir", dest="change", default=None)
|
|
3934
4014
|
p_begin.add_argument(
|
|
3935
4015
|
"--project",
|
|
3936
4016
|
default=None,
|
|
@@ -3960,7 +4040,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3960
4040
|
help="关闭阶段门禁(关门只调本命令;上下文交接由 --to-phase 内联完成,不要再单独调 harness_context.py close)",
|
|
3961
4041
|
)
|
|
3962
4042
|
p_close.add_argument("--phase", required=True)
|
|
3963
|
-
p_close.add_argument("--change", default=None)
|
|
4043
|
+
p_close.add_argument("--change", "--change-dir", dest="change", default=None)
|
|
3964
4044
|
p_close.add_argument(
|
|
3965
4045
|
"--project",
|
|
3966
4046
|
default=None,
|
|
@@ -3985,7 +4065,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3985
4065
|
|
|
3986
4066
|
p_classify = sub.add_parser("classify", parents=[shared])
|
|
3987
4067
|
p_classify.add_argument("--project", default=None, type=Path, help=_PROJECT_ROOT_HELP)
|
|
3988
|
-
p_classify.add_argument("--change", default=None)
|
|
4068
|
+
p_classify.add_argument("--change", "--change-dir", dest="change", default=None)
|
|
3989
4069
|
p_classify.add_argument("--stage", required=True, choices=["plan", "post-run"])
|
|
3990
4070
|
p_classify.add_argument(
|
|
3991
4071
|
"--tier-override",
|
|
@@ -3993,13 +4073,18 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3993
4073
|
choices=["fast", "standard", "full"],
|
|
3994
4074
|
)
|
|
3995
4075
|
p_classify.add_argument("--override-by", default="user")
|
|
4076
|
+
p_classify.add_argument(
|
|
4077
|
+
"--force",
|
|
4078
|
+
action="store_true",
|
|
4079
|
+
help="已发布 change 也强制重写 gate-policy.json 工作副本",
|
|
4080
|
+
)
|
|
3996
4081
|
p_classify.set_defaults(func=cmd_classify)
|
|
3997
4082
|
|
|
3998
4083
|
p_checkpoint = sub.add_parser("checkpoint", parents=[shared])
|
|
3999
4084
|
p_checkpoint.add_argument("--project", default=None, type=Path, help=_PROJECT_ROOT_HELP)
|
|
4000
4085
|
p_checkpoint.add_argument("checkpoint_action", choices=["status", "approve"])
|
|
4001
4086
|
p_checkpoint.add_argument("--id", required=True)
|
|
4002
|
-
p_checkpoint.add_argument("--change", default=None)
|
|
4087
|
+
p_checkpoint.add_argument("--change", "--change-dir", dest="change", default=None)
|
|
4003
4088
|
p_checkpoint.add_argument("--reviewer", default=None)
|
|
4004
4089
|
p_checkpoint.set_defaults(func=cmd_checkpoint)
|
|
4005
4090
|
|
|
@@ -1624,6 +1624,15 @@ def evidence_summary(entry: dict[str, Any]) -> dict[str, Any]:
|
|
|
1624
1624
|
}
|
|
1625
1625
|
|
|
1626
1626
|
|
|
1627
|
+
def _is_relative_to(path: Path, base: Path) -> bool:
|
|
1628
|
+
"""Python 3.9 兼容的 is_relative_to。"""
|
|
1629
|
+
try:
|
|
1630
|
+
path.relative_to(base)
|
|
1631
|
+
return True
|
|
1632
|
+
except ValueError:
|
|
1633
|
+
return False
|
|
1634
|
+
|
|
1635
|
+
|
|
1627
1636
|
def _nonempty_str(value: Any) -> bool:
|
|
1628
1637
|
return isinstance(value, str) and bool(value.strip())
|
|
1629
1638
|
|
|
@@ -3056,6 +3065,12 @@ def cmd_record(args: argparse.Namespace) -> int:
|
|
|
3056
3065
|
"scenarioCoverage": entry.get("scenarioCoverage"),
|
|
3057
3066
|
"migrationReceipt": migration_receipt,
|
|
3058
3067
|
}
|
|
3068
|
+
zero_warn = _zero_tests_with_selector_warning(
|
|
3069
|
+
str(args.command), args.evidence, project_root
|
|
3070
|
+
)
|
|
3071
|
+
if zero_warn is not None:
|
|
3072
|
+
payload["warnings"] = [zero_warn]
|
|
3073
|
+
print(f"[harness-ledger] WARNING {zero_warn}", file=sys.stderr)
|
|
3059
3074
|
emit_compact_or_verbose(
|
|
3060
3075
|
payload, as_json=as_json, verbose=verbose,
|
|
3061
3076
|
compact_fn=_compact_record_payload,
|
|
@@ -3063,6 +3078,47 @@ def cmd_record(args: argparse.Namespace) -> int:
|
|
|
3063
3078
|
return 0
|
|
3064
3079
|
|
|
3065
3080
|
|
|
3081
|
+
def _zero_tests_with_selector_warning(
|
|
3082
|
+
command: str, evidence: str | None, project_root: Path | None
|
|
3083
|
+
) -> str | None:
|
|
3084
|
+
"""选择器存在却 0 命中 → WARN(E-2)。
|
|
3085
|
+
|
|
3086
|
+
surefire 插件级 ``<excludedGroups>`` 会压过命令行空值覆盖,
|
|
3087
|
+
`-Dgroups=X` 选择器 0 命中仍 exit 0——只看退出码就是假阳性
|
|
3088
|
+
(2026-08-30 demo-datasource 集成测试静默 0 执行实测)。
|
|
3089
|
+
证据文本出现 Tests run: 0 且命令含选择器时,record 给出醒目警告。
|
|
3090
|
+
"""
|
|
3091
|
+
if not evidence:
|
|
3092
|
+
return None
|
|
3093
|
+
selectors = ("-Dgroups=", "-Dtest=", "--groups", "--filter", "-DfailIfNoSpecifiedTests")
|
|
3094
|
+
if not any(selector in str(command) for selector in selectors):
|
|
3095
|
+
return None
|
|
3096
|
+
candidates = [Path(evidence)]
|
|
3097
|
+
if project_root is not None and not Path(evidence).is_absolute():
|
|
3098
|
+
candidates.insert(0, project_root / evidence)
|
|
3099
|
+
text: str | None = None
|
|
3100
|
+
for candidate in candidates:
|
|
3101
|
+
try:
|
|
3102
|
+
if candidate.is_file() and candidate.stat().st_size <= 4 * 1024 * 1024:
|
|
3103
|
+
text = candidate.read_text(encoding="utf-8", errors="replace")
|
|
3104
|
+
break
|
|
3105
|
+
except OSError:
|
|
3106
|
+
continue
|
|
3107
|
+
if text is None:
|
|
3108
|
+
return None
|
|
3109
|
+
zero = re.search(
|
|
3110
|
+
r"Tests run:\s*0,\s*Failures:\s*0,\s*Errors:\s*0", text
|
|
3111
|
+
)
|
|
3112
|
+
ran_something = re.search(r"Tests run:\s*[1-9]", text)
|
|
3113
|
+
if zero is not None and ran_something is None:
|
|
3114
|
+
return (
|
|
3115
|
+
"ZERO_TESTS_WITH_SELECTOR: 命令含测试选择器但 Tests run=0(exit 0 不代表通过);"
|
|
3116
|
+
"常见于 surefire 插件级 excludedGroups 压过命令行覆盖——检查 pom 是否写死 "
|
|
3117
|
+
"<excludedGroups>(应改为 ${excludedGroups} 属性占位)"
|
|
3118
|
+
)
|
|
3119
|
+
return None
|
|
3120
|
+
|
|
3121
|
+
|
|
3066
3122
|
def cmd_scenario_receipt_template(args: argparse.Namespace) -> int:
|
|
3067
3123
|
"""Emit a schema-v2 receipt skeleton built from the scenario manifest.
|
|
3068
3124
|
|
|
@@ -3202,8 +3258,32 @@ def cmd_scenario_receipt_template(args: argparse.Namespace) -> int:
|
|
|
3202
3258
|
return 0
|
|
3203
3259
|
out_path = Path(str(out_raw)).expanduser()
|
|
3204
3260
|
if not out_path.is_absolute():
|
|
3205
|
-
|
|
3261
|
+
# 防双重拼接(E-1):调用方按 CLI 惯例传 cwd 相对路径时(如
|
|
3262
|
+
# .harness/changes/<cn>/evidence/x.json),直接拼 change_dir 会产生嵌套
|
|
3263
|
+
# 幽灵目录。相对路径若以 change-dir 自身前缀开头,按 cwd 解析;否则按
|
|
3264
|
+
# 文档规则相对 change-dir 解析。
|
|
3265
|
+
cwd = Path.cwd().resolve()
|
|
3266
|
+
change_resolved = change_dir.resolve()
|
|
3267
|
+
if _is_relative_to(change_resolved, cwd):
|
|
3268
|
+
change_rel = change_resolved.relative_to(cwd)
|
|
3269
|
+
if out_path.parts[: len(change_rel.parts)] == change_rel.parts:
|
|
3270
|
+
out_path = cwd / out_path
|
|
3271
|
+
else:
|
|
3272
|
+
out_path = change_dir / out_path
|
|
3273
|
+
else:
|
|
3274
|
+
out_path = change_dir / out_path
|
|
3206
3275
|
out_path = out_path.resolve()
|
|
3276
|
+
change_resolved = change_dir.resolve()
|
|
3277
|
+
cwd = Path.cwd().resolve()
|
|
3278
|
+
if not (
|
|
3279
|
+
_is_relative_to(out_path, change_resolved)
|
|
3280
|
+
or _is_relative_to(out_path, cwd)
|
|
3281
|
+
):
|
|
3282
|
+
return emit_error(
|
|
3283
|
+
"--out 解析后越出项目目录: " + str(out_path),
|
|
3284
|
+
as_json=as_json,
|
|
3285
|
+
error_code="SCENARIO_RECEIPT_OUT_OF_PROJECT",
|
|
3286
|
+
)
|
|
3207
3287
|
try:
|
|
3208
3288
|
out_path.parent.mkdir(parents=True, exist_ok=True)
|
|
3209
3289
|
out_path.write_text(body, encoding="utf-8", newline="\n")
|
|
@@ -3321,7 +3401,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3321
3401
|
p_hash.set_defaults(func=cmd_hash)
|
|
3322
3402
|
|
|
3323
3403
|
p_reuse = sub.add_parser("can-reuse", parents=[shared_json], help="decide whether a verification can be reused")
|
|
3324
|
-
p_reuse.add_argument("--change-dir", required=True)
|
|
3404
|
+
p_reuse.add_argument("--change-dir", "--change", dest="change_dir", required=True)
|
|
3325
3405
|
p_reuse.add_argument(
|
|
3326
3406
|
"--verification",
|
|
3327
3407
|
required=True,
|
|
@@ -3389,7 +3469,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3389
3469
|
p_reuse.set_defaults(func=cmd_can_reuse)
|
|
3390
3470
|
|
|
3391
3471
|
p_record = sub.add_parser("record", parents=[shared_json], help="write validation result into ledger")
|
|
3392
|
-
p_record.add_argument("--change-dir", required=True)
|
|
3472
|
+
p_record.add_argument("--change-dir", "--change", dest="change_dir", required=True)
|
|
3393
3473
|
p_record.add_argument("--verification", required=True)
|
|
3394
3474
|
p_record.add_argument("--status", required=True)
|
|
3395
3475
|
p_record.add_argument("--command", required=True)
|
|
@@ -3515,7 +3595,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
3515
3595
|
"pre-filled from meta/scenario-manifest.json"
|
|
3516
3596
|
),
|
|
3517
3597
|
)
|
|
3518
|
-
p_receipt.add_argument("--change-dir", required=True)
|
|
3598
|
+
p_receipt.add_argument("--change-dir", "--change", dest="change_dir", required=True)
|
|
3519
3599
|
p_receipt.add_argument(
|
|
3520
3600
|
"--scenario-ids",
|
|
3521
3601
|
required=True,
|
|
@@ -854,13 +854,13 @@ def _node_commands(project: Path) -> dict[str, Any]:
|
|
|
854
854
|
"apps/*/tests/**/*.tsx",
|
|
855
855
|
]
|
|
856
856
|
# harness dogfood: canonical Python + .mjs sources feed npm run check (vitest
|
|
857
|
-
# imports harness-
|
|
857
|
+
# imports harness-execute/scripts; smoke:pack runs sync-harness.mjs).
|
|
858
858
|
if (project / "harness").is_dir():
|
|
859
859
|
inputs.extend(
|
|
860
860
|
[
|
|
861
861
|
"harness/scripts/*.py",
|
|
862
|
-
"harness/harness-
|
|
863
|
-
"harness/harness-
|
|
862
|
+
"harness/harness-execute/scripts/*.mjs",
|
|
863
|
+
"harness/harness-execute/scripts/tests/*.mjs",
|
|
864
864
|
"scripts/*.mjs",
|
|
865
865
|
]
|
|
866
866
|
)
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"files": [
|
|
26
26
|
{
|
|
27
27
|
"path": ".harness-build.json",
|
|
28
|
-
"sha256": "
|
|
28
|
+
"sha256": "1c99b6458ab4c9312a30d8e39d93bbff946c4aa48b7937771ad63d1be410a3c1"
|
|
29
29
|
},
|
|
30
30
|
{
|
|
31
31
|
"path": "agents/harness-evaluator.md",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
43
|
"path": "CONTEXT.md",
|
|
44
|
-
"sha256": "
|
|
44
|
+
"sha256": "e0df950dbf8fa834cf6856815491caa4b0d2ec25d0d08fa9353edf385d576d34"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
47
|
"path": "contracts/build-profile-v3.schema.json",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
"path": "contracts/workflow-policy.json",
|
|
84
|
-
"sha256": "
|
|
84
|
+
"sha256": "1ef3485226c512d6195cb6762065e0acdb27a2b8c101ed5b793474e033a2ac49"
|
|
85
85
|
},
|
|
86
86
|
{
|
|
87
87
|
"path": "harness-archive/checklist.md",
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
},
|
|
98
98
|
{
|
|
99
99
|
"path": "harness-archive/SKILL.md",
|
|
100
|
-
"sha256": "
|
|
100
|
+
"sha256": "96fb9b004e9339fb60a45355348b1a0f23acffa2878ce76d4eb86a5135cf2262"
|
|
101
101
|
},
|
|
102
102
|
{
|
|
103
103
|
"path": "harness-archive/templates/summary-data-template.json",
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
},
|
|
114
114
|
{
|
|
115
115
|
"path": "harness-codebase-map/SKILL.md",
|
|
116
|
-
"sha256": "
|
|
116
|
+
"sha256": "e83b1f4078f156510832ebf5976e76f5196052c6015dc0267aaaa7aac73c048b"
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
"path": "harness-codebase-map/templates/ARCHITECTURE.md",
|
|
@@ -149,23 +149,55 @@
|
|
|
149
149
|
},
|
|
150
150
|
{
|
|
151
151
|
"path": "harness-codebase-map/templates/TESTING.md",
|
|
152
|
-
"sha256": "
|
|
152
|
+
"sha256": "23ed1d9d408995821590c25b79910c54c3ccbf65af8b8b1059d928a0505f5cb4"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"path": "harness-execute/coding-checklist.md",
|
|
156
|
+
"sha256": "76f8e6c59d71318a1e8548b54fb79b99e440851ceee3d14f710f2fbdd498dbda"
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"path": "harness-execute/coding-reference.md",
|
|
160
|
+
"sha256": "999cd14732cb5e9a4ef8421b2c1aaf645aedbff4c75ace335c6bd42d5f1debd8"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"path": "harness-execute/protocols.md",
|
|
164
|
+
"sha256": "24f2740253c04a17ea6bf54fcb00063eb49518cf16a4eefa9dd60a030b140a2d"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"path": "harness-execute/scripts/runtime-helpers.mjs",
|
|
168
|
+
"sha256": "349fcdfb48bfbe4b16fcd4c349e14cd25dd6be0414d959a633eac9a06e5773c2"
|
|
153
169
|
},
|
|
154
170
|
{
|
|
155
171
|
"path": "harness-execute/SKILL.md",
|
|
156
|
-
"sha256": "
|
|
172
|
+
"sha256": "121334aec20ace1b2f69134fbdf9840f13ee052b09f4dc7b9126c8d65e1605c0"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"path": "harness-execute/testing-checklist.md",
|
|
176
|
+
"sha256": "7653196808466e2df5183376239be18c74ad9afaafea6122c04b017ccd29d46f"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"path": "harness-execute/testing-pitfalls-java.md",
|
|
180
|
+
"sha256": "2cf63f7b9adc55a39a110b83118b228fa0ce3c73571baff3a118e4960438b5f1"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"path": "harness-execute/testing-pitfalls.md",
|
|
184
|
+
"sha256": "fddf38f41c8af3544c0aebc5a02f830c08fdf30298621b5916aed8b8b38010b0"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"path": "harness-execute/testing-reference.md",
|
|
188
|
+
"sha256": "687a5f55c69799d60bcc484f2448a8c8fd2ddbfb354d3689d30a103155a44969"
|
|
157
189
|
},
|
|
158
190
|
{
|
|
159
191
|
"path": "harness-knowledge-ingest/SKILL.md",
|
|
160
|
-
"sha256": "
|
|
192
|
+
"sha256": "12a05d555091c6e98073bdec501679c2635afa11318eef85f6527e4f651f2345"
|
|
161
193
|
},
|
|
162
194
|
{
|
|
163
195
|
"path": "harness-knowledge-query/SKILL.md",
|
|
164
|
-
"sha256": "
|
|
196
|
+
"sha256": "c28edcedfc9e928b3bb46f807fd45d4f41d8bcee287ef229b1c2671beed9bb6c"
|
|
165
197
|
},
|
|
166
198
|
{
|
|
167
199
|
"path": "harness-plan/checklist.md",
|
|
168
|
-
"sha256": "
|
|
200
|
+
"sha256": "d35fb45fed952001fa2c68aa71c0eb890e368f024ac6579f01a61dfe411f7a17"
|
|
169
201
|
},
|
|
170
202
|
{
|
|
171
203
|
"path": "harness-plan/protocols.md",
|
|
@@ -173,23 +205,23 @@
|
|
|
173
205
|
},
|
|
174
206
|
{
|
|
175
207
|
"path": "harness-plan/reference.md",
|
|
176
|
-
"sha256": "
|
|
208
|
+
"sha256": "cfb4a4ec17582bd841d2975c2e6458f86f1109db8b9ade569ced6b40b991e032"
|
|
177
209
|
},
|
|
178
210
|
{
|
|
179
211
|
"path": "harness-plan/SKILL.md",
|
|
180
|
-
"sha256": "
|
|
212
|
+
"sha256": "32773c9ff16f7d98d58ed8d26dceceff66b9b52f44e3e27ef72e0245cad161a1"
|
|
181
213
|
},
|
|
182
214
|
{
|
|
183
215
|
"path": "harness-pull/SKILL.md",
|
|
184
|
-
"sha256": "
|
|
216
|
+
"sha256": "8bf37aafc4e2f33e10eb151b06dc54e93e6d839f80de113e2e884017ee4d10af"
|
|
185
217
|
},
|
|
186
218
|
{
|
|
187
219
|
"path": "harness-push/SKILL.md",
|
|
188
|
-
"sha256": "
|
|
220
|
+
"sha256": "8f567c8eeafd3a054f182a4488ae7bdf495933348fb0ef1bf4f0d792b74258f8"
|
|
189
221
|
},
|
|
190
222
|
{
|
|
191
223
|
"path": "harness-review/checklist.md",
|
|
192
|
-
"sha256": "
|
|
224
|
+
"sha256": "4c03059a5ae2d1ae52ca322136d77a6c3d4fc32765cc0d5b418fabf73076aa22"
|
|
193
225
|
},
|
|
194
226
|
{
|
|
195
227
|
"path": "harness-review/protocols.md",
|
|
@@ -201,35 +233,19 @@
|
|
|
201
233
|
},
|
|
202
234
|
{
|
|
203
235
|
"path": "harness-review/SKILL.md",
|
|
204
|
-
"sha256": "
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
"path": "harness-run/checklist.md",
|
|
208
|
-
"sha256": "3a184c988613c5c083767cc4f31f3670502e4810d0f8475c9a3aeec2acc7fe28"
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
"path": "harness-run/protocols.md",
|
|
212
|
-
"sha256": "0f68e5cf0be33203d6c1399147e6a6e46c9b3f21493644778a30cd929dbf60ab"
|
|
213
|
-
},
|
|
214
|
-
{
|
|
215
|
-
"path": "harness-run/reference.md",
|
|
216
|
-
"sha256": "0028be7ce9ccfe46c287cdaefa6545697f4012760d41b0e0d40a32c4b5cec9ac"
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
"path": "harness-run/SKILL.md",
|
|
220
|
-
"sha256": "b9a5b936b7a8ed15b5ac17c1efb7941bb4d288194ef210539f9471afc4645ad0"
|
|
236
|
+
"sha256": "1a2756f40c93aac9d70e0ddffe48b37e03db184b86bb2ff48eb08cca5475dcf0"
|
|
221
237
|
},
|
|
222
238
|
{
|
|
223
239
|
"path": "harness-submit/checklist.md",
|
|
224
|
-
"sha256": "
|
|
240
|
+
"sha256": "a32f9b72591d567318e83ecab53e4495b1b6bcae81609a4de62d9a3dcf8fee55"
|
|
225
241
|
},
|
|
226
242
|
{
|
|
227
243
|
"path": "harness-submit/reference.md",
|
|
228
|
-
"sha256": "
|
|
244
|
+
"sha256": "19f8ba9a1aa8921b5cccd39f2e5f634400c87d99032c0fc943916f1dd099fd04"
|
|
229
245
|
},
|
|
230
246
|
{
|
|
231
247
|
"path": "harness-submit/SKILL.md",
|
|
232
|
-
"sha256": "
|
|
248
|
+
"sha256": "3d8682974b686106c9f16370476bae01e952bf8f8ff4f697b6820fd495b7ab46"
|
|
233
249
|
},
|
|
234
250
|
{
|
|
235
251
|
"path": "harness-sync/reference.md",
|
|
@@ -237,31 +253,7 @@
|
|
|
237
253
|
},
|
|
238
254
|
{
|
|
239
255
|
"path": "harness-sync/SKILL.md",
|
|
240
|
-
"sha256": "
|
|
241
|
-
},
|
|
242
|
-
{
|
|
243
|
-
"path": "harness-test/checklist.md",
|
|
244
|
-
"sha256": "5e10dccc5445ed047187116c3d865c0b12e200f06bc24f1330afdb470a8de03e"
|
|
245
|
-
},
|
|
246
|
-
{
|
|
247
|
-
"path": "harness-test/pitfalls-java.md",
|
|
248
|
-
"sha256": "85c5ab2a2706960093954382265b5fbdfa63f794d857868322d4cebc36936908"
|
|
249
|
-
},
|
|
250
|
-
{
|
|
251
|
-
"path": "harness-test/pitfalls.md",
|
|
252
|
-
"sha256": "93ba0f76c4b182e0fbabd25d883dd2970c87040b97ff8c69f835ad6f2759f21d"
|
|
253
|
-
},
|
|
254
|
-
{
|
|
255
|
-
"path": "harness-test/reference.md",
|
|
256
|
-
"sha256": "b2445487ee14d96466641763870b44f01a29ab8d3cae1ec70d2a7c045e882b1e"
|
|
257
|
-
},
|
|
258
|
-
{
|
|
259
|
-
"path": "harness-test/scripts/runtime-helpers.mjs",
|
|
260
|
-
"sha256": "349fcdfb48bfbe4b16fcd4c349e14cd25dd6be0414d959a633eac9a06e5773c2"
|
|
261
|
-
},
|
|
262
|
-
{
|
|
263
|
-
"path": "harness-test/SKILL.md",
|
|
264
|
-
"sha256": "5f794306c6d55f86178514a56308f5cc34e28b87c2b12a18de095ec5fff495f3"
|
|
256
|
+
"sha256": "be2c998edb857f430eb8622197054ee8711fe547b092c0afb6b2c0573e8d0023"
|
|
265
257
|
},
|
|
266
258
|
{
|
|
267
259
|
"path": "protocols/archive-report-protocol.md",
|
|
@@ -273,7 +265,7 @@
|
|
|
273
265
|
},
|
|
274
266
|
{
|
|
275
267
|
"path": "protocols/evidence-based-reporting-protocol.md",
|
|
276
|
-
"sha256": "
|
|
268
|
+
"sha256": "d423e1d834c1cb22a6f162856221a9733764cab21137090052bd15a03040acec"
|
|
277
269
|
},
|
|
278
270
|
{
|
|
279
271
|
"path": "protocols/execution-session-protocol.md",
|
|
@@ -285,7 +277,7 @@
|
|
|
285
277
|
},
|
|
286
278
|
{
|
|
287
279
|
"path": "protocols/ledger-protocol.md",
|
|
288
|
-
"sha256": "
|
|
280
|
+
"sha256": "5f14402325ce73eca35132088fa58524fc47f5c7067427aab4b3c86b75062e94"
|
|
289
281
|
},
|
|
290
282
|
{
|
|
291
283
|
"path": "protocols/memory-closeout-protocol.md",
|
|
@@ -309,7 +301,7 @@
|
|
|
309
301
|
},
|
|
310
302
|
{
|
|
311
303
|
"path": "protocols/sensitive-info-protocol.md",
|
|
312
|
-
"sha256": "
|
|
304
|
+
"sha256": "86e2a63ce5ba1503e64b0685aeab740946f9074d7e4d510eac04011c9eac12bd"
|
|
313
305
|
},
|
|
314
306
|
{
|
|
315
307
|
"path": "protocols/state-layout-protocol.md",
|
|
@@ -325,7 +317,7 @@
|
|
|
325
317
|
},
|
|
326
318
|
{
|
|
327
319
|
"path": "README.md",
|
|
328
|
-
"sha256": "
|
|
320
|
+
"sha256": "3ba0b3745717d50543f0b4122996b24f069b0efb9eb0a0d4ccf8a838a689fbfa"
|
|
329
321
|
},
|
|
330
322
|
{
|
|
331
323
|
"path": "scripts/harness_adoption_metrics.py",
|
|
@@ -349,11 +341,11 @@
|
|
|
349
341
|
},
|
|
350
342
|
{
|
|
351
343
|
"path": "scripts/harness_context.py",
|
|
352
|
-
"sha256": "
|
|
344
|
+
"sha256": "397c2c6c37a40a6989fc6eec35371db7f17775f52714a2285fcc6e2071d1d02d"
|
|
353
345
|
},
|
|
354
346
|
{
|
|
355
347
|
"path": "scripts/harness_deploy.py",
|
|
356
|
-
"sha256": "
|
|
348
|
+
"sha256": "d3d65375cde5a14d957f80f9bc83d32856fc77f61a2c18317f534b1b11d424a3"
|
|
357
349
|
},
|
|
358
350
|
{
|
|
359
351
|
"path": "scripts/harness_efficiency.py",
|
|
@@ -369,7 +361,7 @@
|
|
|
369
361
|
},
|
|
370
362
|
{
|
|
371
363
|
"path": "scripts/harness_events.py",
|
|
372
|
-
"sha256": "
|
|
364
|
+
"sha256": "0745291af0c1012351c56dbfa4c23d29c3c72162e31f075d3981415fa87391b3"
|
|
373
365
|
},
|
|
374
366
|
{
|
|
375
367
|
"path": "scripts/harness_execution_contracts.py",
|
|
@@ -381,7 +373,7 @@
|
|
|
381
373
|
},
|
|
382
374
|
{
|
|
383
375
|
"path": "scripts/harness_gate.py",
|
|
384
|
-
"sha256": "
|
|
376
|
+
"sha256": "191f1f2025702e3af9891cf9a8e346d152800ba6c35c0576402f4048e1b0c380"
|
|
385
377
|
},
|
|
386
378
|
{
|
|
387
379
|
"path": "scripts/harness_headless.py",
|
|
@@ -397,7 +389,7 @@
|
|
|
397
389
|
},
|
|
398
390
|
{
|
|
399
391
|
"path": "scripts/harness_ledger.py",
|
|
400
|
-
"sha256": "
|
|
392
|
+
"sha256": "97e27a8d585f5af0034bb79caf71aff15231a779da2fc9f331cb2430359fb9dc"
|
|
401
393
|
},
|
|
402
394
|
{
|
|
403
395
|
"path": "scripts/harness_migration_head.py",
|
|
@@ -433,7 +425,7 @@
|
|
|
433
425
|
},
|
|
434
426
|
{
|
|
435
427
|
"path": "scripts/harness_profile.py",
|
|
436
|
-
"sha256": "
|
|
428
|
+
"sha256": "4485c61fd09f544d22dd324fcca6f848e8dc193e0382192e8cc7d0336c417139"
|
|
437
429
|
},
|
|
438
430
|
{
|
|
439
431
|
"path": "scripts/harness_report_model.py",
|