@hunter-harness/workflow-harness 0.3.1 → 0.4.1
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/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-archive/reference.md +30 -1
- package/harness/bundles/general/claude-code/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/general/claude-code/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-execute/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-knowledge-ingest/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/general/claude-code/harness-run/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/harness-test/SKILL.md +1 -1
- package/harness/bundles/general/claude-code/scripts/harness_archive.py +146 -8
- package/harness/bundles/general/claude-code/scripts/harness_deploy.py +1 -1
- package/harness/bundles/general/claude-code/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/general/codebuddy/.harness-build.json +1 -1
- package/harness/bundles/general/codebuddy/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-archive/reference.md +30 -1
- package/harness/bundles/general/codebuddy/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/general/codebuddy/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-execute/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-knowledge-ingest/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/general/codebuddy/harness-run/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/harness-test/SKILL.md +1 -1
- package/harness/bundles/general/codebuddy/scripts/harness_archive.py +146 -8
- package/harness/bundles/general/codebuddy/scripts/harness_deploy.py +1 -1
- package/harness/bundles/general/codebuddy/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/general/codex/.harness-build.json +1 -1
- package/harness/bundles/general/codex/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-archive/reference.md +30 -1
- package/harness/bundles/general/codex/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/general/codex/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-execute/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-knowledge-ingest/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/general/codex/harness-run/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/codex/harness-test/SKILL.md +1 -1
- package/harness/bundles/general/codex/scripts/harness_archive.py +146 -8
- package/harness/bundles/general/codex/scripts/harness_deploy.py +1 -1
- package/harness/bundles/general/codex/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/general/cursor/.harness-build.json +1 -1
- package/harness/bundles/general/cursor/harness-archive/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-archive/reference.md +30 -1
- package/harness/bundles/general/cursor/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/general/cursor/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-execute/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-knowledge-ingest/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-knowledge-query/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/general/cursor/harness-run/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-submit/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-sync/SKILL.md +1 -1
- package/harness/bundles/general/cursor/harness-test/SKILL.md +1 -1
- package/harness/bundles/general/cursor/scripts/harness_archive.py +146 -8
- package/harness/bundles/general/cursor/scripts/harness_deploy.py +1 -1
- package/harness/bundles/general/cursor/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/general/pi/.harness-build.json +6 -0
- package/harness/bundles/general/pi/CONTEXT.md +98 -0
- package/harness/bundles/general/pi/README.md +478 -0
- package/harness/bundles/general/pi/contracts/build-profile-v3.schema.json +302 -0
- package/harness/bundles/general/pi/contracts/ci-metrics.schema.json +36 -0
- package/harness/bundles/general/pi/contracts/doctor-capability.schema.json +43 -0
- package/harness/bundles/general/pi/contracts/external-platform-observation.schema.json +62 -0
- package/harness/bundles/general/pi/contracts/fixtures/managed-execution.json +341 -0
- package/harness/bundles/general/pi/contracts/process-identity.schema.json +132 -0
- package/harness/bundles/general/pi/contracts/run-session.schema.json +142 -0
- package/harness/bundles/general/pi/contracts/service-retirement-receipt.schema.json +85 -0
- package/harness/bundles/general/pi/contracts/service-session.schema.json +147 -0
- package/harness/bundles/general/pi/contracts/workflow-policy.json +574 -0
- package/harness/bundles/general/pi/harness-archive/SKILL.md +322 -0
- package/harness/bundles/general/pi/harness-archive/checklist.md +71 -0
- package/harness/bundles/general/pi/harness-archive/reference.md +150 -0
- package/harness/bundles/general/pi/harness-archive/scripts/gen-manifest.ps1 +31 -0
- package/harness/bundles/general/pi/harness-archive/templates/summary-data-template.json +218 -0
- package/harness/bundles/general/pi/harness-codebase-map/SKILL.md +116 -0
- package/harness/bundles/general/pi/harness-codebase-map/checklist.md +126 -0
- package/harness/bundles/general/pi/harness-codebase-map/reference.md +364 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/CONCERNS.md +49 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/CONVENTIONS.md +57 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/STACK.md +55 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/STRUCTURE.md +69 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/TESTING.md +64 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/map-manifest.schema.json +73 -0
- package/harness/bundles/general/pi/harness-codebase-map/templates/map-summary.md +64 -0
- package/harness/bundles/general/pi/harness-execute/SKILL.md +170 -0
- package/harness/bundles/general/pi/harness-knowledge-ingest/SKILL.md +103 -0
- package/harness/bundles/general/pi/harness-knowledge-query/SKILL.md +97 -0
- package/harness/bundles/general/pi/harness-plan/SKILL.md +158 -0
- package/harness/bundles/general/pi/harness-plan/checklist.md +243 -0
- package/harness/bundles/general/pi/harness-plan/protocols.md +133 -0
- package/harness/bundles/general/pi/harness-plan/reference.md +468 -0
- package/harness/bundles/general/pi/harness-pull/SKILL.md +55 -0
- package/harness/bundles/general/pi/harness-push/SKILL.md +83 -0
- package/harness/bundles/general/pi/harness-review/SKILL.md +175 -0
- package/harness/bundles/general/pi/harness-review/checklist.md +124 -0
- package/harness/bundles/general/pi/harness-review/protocols.md +69 -0
- package/harness/bundles/general/pi/harness-review/reference.md +114 -0
- package/harness/bundles/general/pi/harness-run/SKILL.md +188 -0
- package/harness/bundles/general/pi/harness-run/checklist.md +279 -0
- package/harness/bundles/general/pi/harness-run/protocols.md +141 -0
- package/harness/bundles/general/pi/harness-run/reference.md +886 -0
- package/harness/bundles/general/pi/harness-submit/SKILL.md +182 -0
- package/harness/bundles/general/pi/harness-submit/checklist.md +452 -0
- package/harness/bundles/general/pi/harness-submit/reference.md +152 -0
- package/harness/bundles/general/pi/harness-sync/SKILL.md +72 -0
- package/harness/bundles/general/pi/harness-sync/reference.md +176 -0
- package/harness/bundles/general/pi/harness-test/SKILL.md +250 -0
- package/harness/bundles/general/pi/harness-test/checklist.md +359 -0
- package/harness/bundles/general/pi/harness-test/pitfalls-java.md +14 -0
- package/harness/bundles/general/pi/harness-test/pitfalls.md +307 -0
- package/harness/bundles/general/pi/harness-test/reference.md +880 -0
- package/harness/bundles/general/pi/harness-test/scripts/runtime-helpers.mjs +216 -0
- package/harness/bundles/general/pi/protocols/archive-report-protocol.md +196 -0
- package/harness/bundles/general/pi/protocols/ci-layering-protocol.md +22 -0
- package/harness/bundles/general/pi/protocols/evidence-based-reporting-protocol.md +134 -0
- package/harness/bundles/general/pi/protocols/execution-session-protocol.md +52 -0
- package/harness/bundles/general/pi/protocols/external-platform-protocol.md +27 -0
- package/harness/bundles/general/pi/protocols/ledger-protocol.md +365 -0
- package/harness/bundles/general/pi/protocols/memory-closeout-protocol.md +21 -0
- package/harness/bundles/general/pi/protocols/model-routing-protocol.md +22 -0
- package/harness/bundles/general/pi/protocols/powershell-protocol.md +238 -0
- package/harness/bundles/general/pi/protocols/registry-governance-protocol.md +31 -0
- package/harness/bundles/general/pi/protocols/report-pipeline-protocol.md +172 -0
- package/harness/bundles/general/pi/protocols/sensitive-info-protocol.md +110 -0
- package/harness/bundles/general/pi/protocols/state-layout-protocol.md +209 -0
- package/harness/bundles/general/pi/protocols/submit-protocol.md +78 -0
- package/harness/bundles/general/pi/protocols/verification-graph-protocol.md +32 -0
- package/harness/bundles/general/pi/scripts/harness_adoption_metrics.py +391 -0
- package/harness/bundles/general/pi/scripts/harness_apidoc.py +53 -0
- package/harness/bundles/general/pi/scripts/harness_archive.py +11345 -0
- package/harness/bundles/general/pi/scripts/harness_change.py +1626 -0
- package/harness/bundles/general/pi/scripts/harness_check_gate.py +113 -0
- package/harness/bundles/general/pi/scripts/harness_context.py +1774 -0
- package/harness/bundles/general/pi/scripts/harness_deploy.py +968 -0
- package/harness/bundles/general/pi/scripts/harness_efficiency.py +443 -0
- package/harness/bundles/general/pi/scripts/harness_environment.py +1690 -0
- package/harness/bundles/general/pi/scripts/harness_events.py +2234 -0
- package/harness/bundles/general/pi/scripts/harness_events_sync.py +1425 -0
- package/harness/bundles/general/pi/scripts/harness_execution_contracts.py +596 -0
- package/harness/bundles/general/pi/scripts/harness_fixback.py +1975 -0
- package/harness/bundles/general/pi/scripts/harness_gate.py +3816 -0
- package/harness/bundles/general/pi/scripts/harness_headless.py +37 -0
- package/harness/bundles/general/pi/scripts/harness_integration.py +2564 -0
- package/harness/bundles/general/pi/scripts/harness_knowledge_candidates.py +796 -0
- package/harness/bundles/general/pi/scripts/harness_ledger.py +3556 -0
- package/harness/bundles/general/pi/scripts/harness_migration_head.py +220 -0
- package/harness/bundles/general/pi/scripts/harness_orchestration.py +344 -0
- package/harness/bundles/general/pi/scripts/harness_paths.py +676 -0
- package/harness/bundles/general/pi/scripts/harness_phase.py +1726 -0
- package/harness/bundles/general/pi/scripts/harness_plan_aggregate.py +249 -0
- package/harness/bundles/general/pi/scripts/harness_plan_finalize.py +1016 -0
- package/harness/bundles/general/pi/scripts/harness_preflight.py +650 -0
- package/harness/bundles/general/pi/scripts/harness_process.py +1065 -0
- package/harness/bundles/general/pi/scripts/harness_profile.py +1817 -0
- package/harness/bundles/general/pi/scripts/harness_report_model.py +442 -0
- package/harness/bundles/general/pi/scripts/harness_retry.py +175 -0
- package/harness/bundles/general/pi/scripts/harness_review.py +631 -0
- package/harness/bundles/general/pi/scripts/harness_runtime.py +2243 -0
- package/harness/bundles/general/pi/scripts/harness_service.py +3355 -0
- package/harness/bundles/general/pi/scripts/harness_state.py +365 -0
- package/harness/bundles/general/pi/scripts/harness_sync.py +407 -0
- package/harness/bundles/general/pi/scripts/harness_test_cleanup.py +175 -0
- package/harness/bundles/general/pi/scripts/harness_test_guard.py +1899 -0
- package/harness/bundles/general/pi/scripts/harness_test_runner.py +1586 -0
- package/harness/bundles/general/pi/scripts/harness_verification.py +593 -0
- package/harness/bundles/general/pi/scripts/harness_workflow_policy.py +266 -0
- package/harness/bundles/java/claude-code/.harness-build.json +1 -1
- 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-archive/reference.md +30 -1
- package/harness/bundles/java/claude-code/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/java/claude-code/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-execute/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-knowledge-ingest/SKILL.md +1 -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-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/java/claude-code/harness-run/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/harness-test/SKILL.md +1 -1
- package/harness/bundles/java/claude-code/scripts/harness_archive.py +146 -8
- package/harness/bundles/java/claude-code/scripts/harness_deploy.py +1 -1
- package/harness/bundles/java/claude-code/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/java/codebuddy/.harness-build.json +1 -1
- 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-archive/reference.md +30 -1
- package/harness/bundles/java/codebuddy/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/java/codebuddy/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-execute/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-knowledge-ingest/SKILL.md +1 -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-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/java/codebuddy/harness-run/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/harness-test/SKILL.md +1 -1
- package/harness/bundles/java/codebuddy/scripts/harness_archive.py +146 -8
- package/harness/bundles/java/codebuddy/scripts/harness_deploy.py +1 -1
- package/harness/bundles/java/codebuddy/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/java/codex/.harness-build.json +1 -1
- 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-archive/reference.md +30 -1
- package/harness/bundles/java/codex/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/java/codex/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-execute/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-knowledge-ingest/SKILL.md +1 -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-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/java/codex/harness-run/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/codex/harness-test/SKILL.md +1 -1
- package/harness/bundles/java/codex/scripts/harness_archive.py +146 -8
- package/harness/bundles/java/codex/scripts/harness_deploy.py +1 -1
- package/harness/bundles/java/codex/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/java/cursor/.harness-build.json +1 -1
- 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-archive/reference.md +30 -1
- package/harness/bundles/java/cursor/harness-archive/templates/summary-data-template.json +1 -0
- package/harness/bundles/java/cursor/harness-codebase-map/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-execute/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-knowledge-ingest/SKILL.md +1 -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-plan/SKILL.md +1 -1
- 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 +1 -1
- package/harness/bundles/java/cursor/harness-run/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-submit/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-sync/SKILL.md +1 -1
- package/harness/bundles/java/cursor/harness-test/SKILL.md +1 -1
- package/harness/bundles/java/cursor/scripts/harness_archive.py +146 -8
- package/harness/bundles/java/cursor/scripts/harness_deploy.py +1 -1
- package/harness/bundles/java/cursor/scripts/harness_knowledge_candidates.py +538 -4
- package/harness/bundles/java/pi/.harness-build.json +6 -0
- package/harness/bundles/java/pi/CONTEXT.md +98 -0
- package/harness/bundles/java/pi/README.md +478 -0
- package/harness/bundles/java/pi/contracts/build-profile-v3.schema.json +302 -0
- package/harness/bundles/java/pi/contracts/ci-metrics.schema.json +36 -0
- package/harness/bundles/java/pi/contracts/doctor-capability.schema.json +43 -0
- package/harness/bundles/java/pi/contracts/external-platform-observation.schema.json +62 -0
- package/harness/bundles/java/pi/contracts/fixtures/managed-execution.json +341 -0
- package/harness/bundles/java/pi/contracts/process-identity.schema.json +132 -0
- package/harness/bundles/java/pi/contracts/run-session.schema.json +142 -0
- package/harness/bundles/java/pi/contracts/service-retirement-receipt.schema.json +85 -0
- package/harness/bundles/java/pi/contracts/service-session.schema.json +147 -0
- package/harness/bundles/java/pi/contracts/workflow-policy.json +574 -0
- package/harness/bundles/java/pi/harness-apidoc/SKILL.md +97 -0
- package/harness/bundles/java/pi/harness-apidoc/checklist.md +142 -0
- package/harness/bundles/java/pi/harness-apidoc/reference.md +233 -0
- package/harness/bundles/java/pi/harness-archive/SKILL.md +322 -0
- package/harness/bundles/java/pi/harness-archive/checklist.md +71 -0
- package/harness/bundles/java/pi/harness-archive/reference.md +150 -0
- package/harness/bundles/java/pi/harness-archive/scripts/gen-manifest.ps1 +31 -0
- package/harness/bundles/java/pi/harness-archive/templates/summary-data-template.json +218 -0
- package/harness/bundles/java/pi/harness-codebase-map/SKILL.md +116 -0
- package/harness/bundles/java/pi/harness-codebase-map/checklist.md +126 -0
- package/harness/bundles/java/pi/harness-codebase-map/reference.md +364 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/CONCERNS.md +49 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/CONVENTIONS.md +57 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/STACK.md +55 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/STRUCTURE.md +69 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/TESTING.md +64 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/map-manifest.schema.json +73 -0
- package/harness/bundles/java/pi/harness-codebase-map/templates/map-summary.md +64 -0
- package/harness/bundles/java/pi/harness-execute/SKILL.md +170 -0
- package/harness/bundles/java/pi/harness-knowledge-ingest/SKILL.md +103 -0
- package/harness/bundles/java/pi/harness-knowledge-query/SKILL.md +97 -0
- package/harness/bundles/java/pi/harness-package/SKILL.md +94 -0
- package/harness/bundles/java/pi/harness-package/checklist.md +322 -0
- package/harness/bundles/java/pi/harness-package/reference.md +210 -0
- package/harness/bundles/java/pi/harness-plan/SKILL.md +158 -0
- package/harness/bundles/java/pi/harness-plan/checklist.md +243 -0
- package/harness/bundles/java/pi/harness-plan/protocols.md +133 -0
- package/harness/bundles/java/pi/harness-plan/reference.md +468 -0
- package/harness/bundles/java/pi/harness-pull/SKILL.md +55 -0
- package/harness/bundles/java/pi/harness-push/SKILL.md +83 -0
- package/harness/bundles/java/pi/harness-review/SKILL.md +175 -0
- package/harness/bundles/java/pi/harness-review/checklist.md +124 -0
- package/harness/bundles/java/pi/harness-review/protocols.md +69 -0
- package/harness/bundles/java/pi/harness-review/reference.md +114 -0
- package/harness/bundles/java/pi/harness-run/SKILL.md +206 -0
- package/harness/bundles/java/pi/harness-run/checklist.md +252 -0
- package/harness/bundles/java/pi/harness-run/protocols.md +141 -0
- package/harness/bundles/java/pi/harness-run/reference.md +820 -0
- package/harness/bundles/java/pi/harness-submit/SKILL.md +189 -0
- package/harness/bundles/java/pi/harness-submit/checklist.md +452 -0
- package/harness/bundles/java/pi/harness-submit/reference.md +152 -0
- package/harness/bundles/java/pi/harness-sync/SKILL.md +72 -0
- package/harness/bundles/java/pi/harness-sync/reference.md +176 -0
- package/harness/bundles/java/pi/harness-test/SKILL.md +264 -0
- package/harness/bundles/java/pi/harness-test/checklist.md +320 -0
- package/harness/bundles/java/pi/harness-test/pitfalls-java.md +16 -0
- package/harness/bundles/java/pi/harness-test/pitfalls.md +307 -0
- package/harness/bundles/java/pi/harness-test/reference.md +792 -0
- package/harness/bundles/java/pi/harness-test/scripts/runtime-helpers.mjs +216 -0
- package/harness/bundles/java/pi/protocols/archive-report-protocol.md +196 -0
- package/harness/bundles/java/pi/protocols/ci-layering-protocol.md +22 -0
- package/harness/bundles/java/pi/protocols/evidence-based-reporting-protocol.md +134 -0
- package/harness/bundles/java/pi/protocols/execution-session-protocol.md +52 -0
- package/harness/bundles/java/pi/protocols/external-platform-protocol.md +27 -0
- package/harness/bundles/java/pi/protocols/ledger-protocol.md +365 -0
- package/harness/bundles/java/pi/protocols/memory-closeout-protocol.md +21 -0
- package/harness/bundles/java/pi/protocols/model-routing-protocol.md +22 -0
- package/harness/bundles/java/pi/protocols/powershell-protocol.md +238 -0
- package/harness/bundles/java/pi/protocols/registry-governance-protocol.md +31 -0
- package/harness/bundles/java/pi/protocols/report-pipeline-protocol.md +172 -0
- package/harness/bundles/java/pi/protocols/sensitive-info-protocol.md +110 -0
- package/harness/bundles/java/pi/protocols/state-layout-protocol.md +209 -0
- package/harness/bundles/java/pi/protocols/submit-protocol.md +78 -0
- package/harness/bundles/java/pi/protocols/verification-graph-protocol.md +32 -0
- package/harness/bundles/java/pi/scripts/harness_adoption_metrics.py +391 -0
- package/harness/bundles/java/pi/scripts/harness_apidoc.py +53 -0
- package/harness/bundles/java/pi/scripts/harness_archive.py +11345 -0
- package/harness/bundles/java/pi/scripts/harness_change.py +1626 -0
- package/harness/bundles/java/pi/scripts/harness_check_gate.py +113 -0
- package/harness/bundles/java/pi/scripts/harness_context.py +1774 -0
- package/harness/bundles/java/pi/scripts/harness_deploy.py +968 -0
- package/harness/bundles/java/pi/scripts/harness_efficiency.py +443 -0
- package/harness/bundles/java/pi/scripts/harness_environment.py +1690 -0
- package/harness/bundles/java/pi/scripts/harness_events.py +2234 -0
- package/harness/bundles/java/pi/scripts/harness_events_sync.py +1425 -0
- package/harness/bundles/java/pi/scripts/harness_execution_contracts.py +596 -0
- package/harness/bundles/java/pi/scripts/harness_fixback.py +1975 -0
- package/harness/bundles/java/pi/scripts/harness_gate.py +3816 -0
- package/harness/bundles/java/pi/scripts/harness_headless.py +37 -0
- package/harness/bundles/java/pi/scripts/harness_integration.py +2564 -0
- package/harness/bundles/java/pi/scripts/harness_knowledge_candidates.py +796 -0
- package/harness/bundles/java/pi/scripts/harness_ledger.py +3556 -0
- package/harness/bundles/java/pi/scripts/harness_migration_head.py +220 -0
- package/harness/bundles/java/pi/scripts/harness_orchestration.py +344 -0
- package/harness/bundles/java/pi/scripts/harness_paths.py +676 -0
- package/harness/bundles/java/pi/scripts/harness_phase.py +1726 -0
- package/harness/bundles/java/pi/scripts/harness_plan_aggregate.py +249 -0
- package/harness/bundles/java/pi/scripts/harness_plan_finalize.py +1016 -0
- package/harness/bundles/java/pi/scripts/harness_preflight.py +650 -0
- package/harness/bundles/java/pi/scripts/harness_process.py +1065 -0
- package/harness/bundles/java/pi/scripts/harness_profile.py +1817 -0
- package/harness/bundles/java/pi/scripts/harness_report_model.py +442 -0
- package/harness/bundles/java/pi/scripts/harness_retry.py +175 -0
- package/harness/bundles/java/pi/scripts/harness_review.py +631 -0
- package/harness/bundles/java/pi/scripts/harness_runtime.py +2243 -0
- package/harness/bundles/java/pi/scripts/harness_service.py +3355 -0
- package/harness/bundles/java/pi/scripts/harness_state.py +365 -0
- package/harness/bundles/java/pi/scripts/harness_sync.py +407 -0
- package/harness/bundles/java/pi/scripts/harness_test_cleanup.py +175 -0
- package/harness/bundles/java/pi/scripts/harness_test_guard.py +1899 -0
- package/harness/bundles/java/pi/scripts/harness_test_runner.py +1586 -0
- package/harness/bundles/java/pi/scripts/harness_verification.py +593 -0
- package/harness/bundles/java/pi/scripts/harness_workflow_policy.py +266 -0
- package/harness/manifests/general/claude-code.json +19 -19
- package/harness/manifests/general/codebuddy.json +19 -19
- package/harness/manifests/general/codex.json +19 -19
- package/harness/manifests/general/cursor.json +19 -19
- package/harness/manifests/general/pi.json +475 -0
- package/harness/manifests/java/claude-code.json +21 -21
- package/harness/manifests/java/codebuddy.json +21 -21
- package/harness/manifests/java/codex.json +21 -21
- package/harness/manifests/java/cursor.json +21 -21
- package/harness/manifests/java/pi.json +499 -0
- package/hunter-workflow-family.json +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"corpusHash": "sha256:31fe3f111d35e37b7c0f067d2757d2e1b7bf7969fcee81f66276e87b321680d5",
|
|
4
|
+
"fixtures": [
|
|
5
|
+
{
|
|
6
|
+
"id": "process-valid-complete",
|
|
7
|
+
"contract": "process-identity",
|
|
8
|
+
"valid": true,
|
|
9
|
+
"payload": {
|
|
10
|
+
"schemaVersion": 1,
|
|
11
|
+
"pid": 4200,
|
|
12
|
+
"alive": true,
|
|
13
|
+
"createdAt": "2026-07-31T12:00:00Z",
|
|
14
|
+
"executable": "C:\\Python\\python.exe",
|
|
15
|
+
"argvHash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
16
|
+
"workingDirectory": "C:\\工作区\\managed run",
|
|
17
|
+
"parentIdentity": {
|
|
18
|
+
"pid": 4100,
|
|
19
|
+
"createdAt": "2026-07-31T11:59:59Z",
|
|
20
|
+
"executable": "C:\\PowerShell\\pwsh.exe"
|
|
21
|
+
},
|
|
22
|
+
"ownerTokenHash": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
23
|
+
"treeIdentity": {
|
|
24
|
+
"platform": "WINDOWS",
|
|
25
|
+
"proofKind": "NAMED_JOB",
|
|
26
|
+
"memberPids": [4200, 4210],
|
|
27
|
+
"complete": true
|
|
28
|
+
},
|
|
29
|
+
"fieldProvenance": {
|
|
30
|
+
"pid": "OBSERVED",
|
|
31
|
+
"createdAt": "OBSERVED",
|
|
32
|
+
"executable": "OBSERVED",
|
|
33
|
+
"argvHash": "ATTESTED",
|
|
34
|
+
"workingDirectory": "ATTESTED",
|
|
35
|
+
"parentIdentity": "OBSERVED",
|
|
36
|
+
"ownerTokenHash": "ATTESTED",
|
|
37
|
+
"treeIdentity": "OBSERVED"
|
|
38
|
+
},
|
|
39
|
+
"capabilities": {
|
|
40
|
+
"canObserveCreateTime": true,
|
|
41
|
+
"canObserveExecutable": true,
|
|
42
|
+
"canObserveArgv": false,
|
|
43
|
+
"canObserveWorkingDirectory": false,
|
|
44
|
+
"canObserveParent": true,
|
|
45
|
+
"canEnumerateTree": true,
|
|
46
|
+
"canVerifyOwnership": true
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"id": "process-invalid-self-attested-pid",
|
|
52
|
+
"contract": "process-identity",
|
|
53
|
+
"valid": false,
|
|
54
|
+
"payload": {
|
|
55
|
+
"schemaVersion": 1,
|
|
56
|
+
"pid": 4200,
|
|
57
|
+
"alive": true,
|
|
58
|
+
"createdAt": null,
|
|
59
|
+
"executable": null,
|
|
60
|
+
"argvHash": null,
|
|
61
|
+
"workingDirectory": null,
|
|
62
|
+
"parentIdentity": null,
|
|
63
|
+
"ownerTokenHash": null,
|
|
64
|
+
"treeIdentity": null,
|
|
65
|
+
"fieldProvenance": {
|
|
66
|
+
"pid": "ATTESTED",
|
|
67
|
+
"createdAt": "UNAVAILABLE",
|
|
68
|
+
"executable": "UNAVAILABLE",
|
|
69
|
+
"argvHash": "UNAVAILABLE",
|
|
70
|
+
"workingDirectory": "UNAVAILABLE",
|
|
71
|
+
"parentIdentity": "UNAVAILABLE",
|
|
72
|
+
"ownerTokenHash": "UNAVAILABLE",
|
|
73
|
+
"treeIdentity": "UNAVAILABLE"
|
|
74
|
+
},
|
|
75
|
+
"capabilities": {
|
|
76
|
+
"canObserveCreateTime": false,
|
|
77
|
+
"canObserveExecutable": false,
|
|
78
|
+
"canObserveArgv": false,
|
|
79
|
+
"canObserveWorkingDirectory": false,
|
|
80
|
+
"canObserveParent": false,
|
|
81
|
+
"canEnumerateTree": false,
|
|
82
|
+
"canVerifyOwnership": false
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"id": "run-valid-ok",
|
|
88
|
+
"contract": "run-session",
|
|
89
|
+
"valid": true,
|
|
90
|
+
"payload": {
|
|
91
|
+
"schemaVersion": 1,
|
|
92
|
+
"sessionId": "run-valid-ok",
|
|
93
|
+
"status": "OK",
|
|
94
|
+
"reasonCode": "CHILD_EXIT_ZERO",
|
|
95
|
+
"exitCode": 0,
|
|
96
|
+
"processIdentity": null,
|
|
97
|
+
"heartbeat": null,
|
|
98
|
+
"logs": {
|
|
99
|
+
"stdout": {
|
|
100
|
+
"cursor": 12,
|
|
101
|
+
"rawDigest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
102
|
+
"decodeStatus": "OK"
|
|
103
|
+
},
|
|
104
|
+
"stderr": {
|
|
105
|
+
"cursor": 0,
|
|
106
|
+
"rawDigest": "sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
107
|
+
"decodeStatus": "OK"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"cleanup": {
|
|
111
|
+
"complete": true,
|
|
112
|
+
"reasonCode": null
|
|
113
|
+
},
|
|
114
|
+
"resultDigest": "sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"id": "run-invalid-terminal-exit",
|
|
119
|
+
"contract": "run-session",
|
|
120
|
+
"valid": false,
|
|
121
|
+
"payload": {
|
|
122
|
+
"schemaVersion": 1,
|
|
123
|
+
"sessionId": "run-invalid-terminal-exit",
|
|
124
|
+
"status": "FAIL",
|
|
125
|
+
"reasonCode": "CHILD_EXIT_NONZERO",
|
|
126
|
+
"exitCode": null,
|
|
127
|
+
"processIdentity": null,
|
|
128
|
+
"heartbeat": null,
|
|
129
|
+
"logs": {
|
|
130
|
+
"stdout": {
|
|
131
|
+
"cursor": 0,
|
|
132
|
+
"rawDigest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
133
|
+
"decodeStatus": "OK"
|
|
134
|
+
},
|
|
135
|
+
"stderr": {
|
|
136
|
+
"cursor": 4,
|
|
137
|
+
"rawDigest": "sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
138
|
+
"decodeStatus": "OK"
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
"cleanup": {
|
|
142
|
+
"complete": true,
|
|
143
|
+
"reasonCode": null
|
|
144
|
+
},
|
|
145
|
+
"resultDigest": "sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"id": "run-valid-incomplete",
|
|
150
|
+
"contract": "run-session",
|
|
151
|
+
"valid": true,
|
|
152
|
+
"payload": {
|
|
153
|
+
"schemaVersion": 1,
|
|
154
|
+
"sessionId": "run-valid-incomplete",
|
|
155
|
+
"status": "INCOMPLETE",
|
|
156
|
+
"reasonCode": "HEARTBEAT_LOST",
|
|
157
|
+
"exitCode": null,
|
|
158
|
+
"processIdentity": null,
|
|
159
|
+
"heartbeat": {
|
|
160
|
+
"kind": "WORKER",
|
|
161
|
+
"writerIdentity": "sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
162
|
+
"lastSeenAt": "2026-07-31T12:00:30Z",
|
|
163
|
+
"ttlSeconds": 30,
|
|
164
|
+
"staleReason": "HEARTBEAT_LOST"
|
|
165
|
+
},
|
|
166
|
+
"logs": {
|
|
167
|
+
"stdout": {
|
|
168
|
+
"cursor": 2,
|
|
169
|
+
"rawDigest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
170
|
+
"decodeStatus": "LOG_DECODE_DEGRADED"
|
|
171
|
+
},
|
|
172
|
+
"stderr": {
|
|
173
|
+
"cursor": 0,
|
|
174
|
+
"rawDigest": "sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
175
|
+
"decodeStatus": "OK"
|
|
176
|
+
}
|
|
177
|
+
},
|
|
178
|
+
"cleanup": {
|
|
179
|
+
"complete": false,
|
|
180
|
+
"reasonCode": "IDENTITY_UNVERIFIABLE"
|
|
181
|
+
},
|
|
182
|
+
"resultDigest": "sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
|
|
183
|
+
}
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"id": "run-invalid-incomplete-exit",
|
|
187
|
+
"contract": "run-session",
|
|
188
|
+
"valid": false,
|
|
189
|
+
"payload": {
|
|
190
|
+
"schemaVersion": 1,
|
|
191
|
+
"sessionId": "run-invalid-incomplete-exit",
|
|
192
|
+
"status": "INCOMPLETE",
|
|
193
|
+
"reasonCode": "HEARTBEAT_LOST",
|
|
194
|
+
"exitCode": 9,
|
|
195
|
+
"processIdentity": null,
|
|
196
|
+
"heartbeat": null,
|
|
197
|
+
"logs": {
|
|
198
|
+
"stdout": {
|
|
199
|
+
"cursor": 0,
|
|
200
|
+
"rawDigest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
201
|
+
"decodeStatus": "OK"
|
|
202
|
+
},
|
|
203
|
+
"stderr": {
|
|
204
|
+
"cursor": 0,
|
|
205
|
+
"rawDigest": "sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
206
|
+
"decodeStatus": "OK"
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
"cleanup": {
|
|
210
|
+
"complete": false,
|
|
211
|
+
"reasonCode": "IDENTITY_UNVERIFIABLE"
|
|
212
|
+
},
|
|
213
|
+
"resultDigest": "sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"id": "service-valid-ready",
|
|
218
|
+
"contract": "service-session",
|
|
219
|
+
"valid": true,
|
|
220
|
+
"payload": {
|
|
221
|
+
"schemaVersion": 1,
|
|
222
|
+
"serviceId": "preview",
|
|
223
|
+
"sessionId": "service-preview-generation-2",
|
|
224
|
+
"status": "READY",
|
|
225
|
+
"reasonCode": "SERVICE_READY",
|
|
226
|
+
"serviceGeneration": 2,
|
|
227
|
+
"stateRevision": 3,
|
|
228
|
+
"operationId": "ensure-02",
|
|
229
|
+
"fingerprint": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
|
|
230
|
+
"processIdentity": null,
|
|
231
|
+
"heartbeat": {
|
|
232
|
+
"kind": "SUPERVISOR",
|
|
233
|
+
"writerIdentity": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
|
|
234
|
+
"generation": 2,
|
|
235
|
+
"lastSeenAt": "2026-07-31T12:01:00Z",
|
|
236
|
+
"ttlSeconds": 30,
|
|
237
|
+
"staleReason": null
|
|
238
|
+
},
|
|
239
|
+
"leaseIdentity": {
|
|
240
|
+
"leaseId": "lease-preview-2",
|
|
241
|
+
"changeId": "change-preview",
|
|
242
|
+
"runId": "run-preview",
|
|
243
|
+
"expiresAt": "2026-07-31T13:00:00Z",
|
|
244
|
+
"generation": 2
|
|
245
|
+
},
|
|
246
|
+
"transitionHistory": [
|
|
247
|
+
{
|
|
248
|
+
"from": null,
|
|
249
|
+
"to": "STARTING",
|
|
250
|
+
"reasonCode": "SERVICE_START_REQUESTED",
|
|
251
|
+
"revision": 1
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
"from": "STARTING",
|
|
255
|
+
"to": "READY",
|
|
256
|
+
"reasonCode": "SERVICE_READY",
|
|
257
|
+
"revision": 3
|
|
258
|
+
}
|
|
259
|
+
],
|
|
260
|
+
"cleanupComplete": false,
|
|
261
|
+
"supersedesSessionId": null
|
|
262
|
+
}
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"id": "service-invalid-revision",
|
|
266
|
+
"contract": "service-session",
|
|
267
|
+
"valid": false,
|
|
268
|
+
"payload": {
|
|
269
|
+
"schemaVersion": 1,
|
|
270
|
+
"serviceId": "preview",
|
|
271
|
+
"sessionId": "service-preview-generation-2",
|
|
272
|
+
"status": "READY",
|
|
273
|
+
"reasonCode": "SERVICE_READY",
|
|
274
|
+
"serviceGeneration": 2,
|
|
275
|
+
"stateRevision": 0,
|
|
276
|
+
"operationId": "ensure-02",
|
|
277
|
+
"fingerprint": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
|
|
278
|
+
"processIdentity": null,
|
|
279
|
+
"heartbeat": null,
|
|
280
|
+
"leaseIdentity": null,
|
|
281
|
+
"transitionHistory": [],
|
|
282
|
+
"cleanupComplete": false,
|
|
283
|
+
"supersedesSessionId": null
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"id": "retirement-valid-retained",
|
|
288
|
+
"contract": "service-retirement-receipt",
|
|
289
|
+
"valid": true,
|
|
290
|
+
"payload": {
|
|
291
|
+
"schemaVersion": 1,
|
|
292
|
+
"receiptId": "retirement-preview-1",
|
|
293
|
+
"operationId": "retire-operation-1",
|
|
294
|
+
"serviceId": "preview",
|
|
295
|
+
"oldSessionId": "service-preview-generation-1",
|
|
296
|
+
"oldGeneration": 1,
|
|
297
|
+
"state": "FINALIZED",
|
|
298
|
+
"retirementStateCommit": {
|
|
299
|
+
"status": "COMMITTED",
|
|
300
|
+
"reasonCode": "SERVICE_RETIRED"
|
|
301
|
+
},
|
|
302
|
+
"leaseCleanup": {
|
|
303
|
+
"status": "RETAINED",
|
|
304
|
+
"reasonCode": "LISTENER_IDENTITY_UNVERIFIABLE",
|
|
305
|
+
"leaseId": "lease-preview-1"
|
|
306
|
+
},
|
|
307
|
+
"cleanupComplete": false,
|
|
308
|
+
"awaitingSuperseder": true,
|
|
309
|
+
"supersededBySessionId": null,
|
|
310
|
+
"receiptDigest": "sha256:3333333333333333333333333333333333333333333333333333333333333333"
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
"id": "retirement-invalid-cleanup-claim",
|
|
315
|
+
"contract": "service-retirement-receipt",
|
|
316
|
+
"valid": false,
|
|
317
|
+
"payload": {
|
|
318
|
+
"schemaVersion": 1,
|
|
319
|
+
"receiptId": "retirement-preview-1",
|
|
320
|
+
"operationId": "retire-operation-1",
|
|
321
|
+
"serviceId": "preview",
|
|
322
|
+
"oldSessionId": "service-preview-generation-1",
|
|
323
|
+
"oldGeneration": 1,
|
|
324
|
+
"state": "FINALIZED",
|
|
325
|
+
"retirementStateCommit": {
|
|
326
|
+
"status": "COMMITTED",
|
|
327
|
+
"reasonCode": "SERVICE_RETIRED"
|
|
328
|
+
},
|
|
329
|
+
"leaseCleanup": {
|
|
330
|
+
"status": "RETAINED",
|
|
331
|
+
"reasonCode": "LISTENER_IDENTITY_UNVERIFIABLE",
|
|
332
|
+
"leaseId": "lease-preview-1"
|
|
333
|
+
},
|
|
334
|
+
"cleanupComplete": true,
|
|
335
|
+
"awaitingSuperseder": true,
|
|
336
|
+
"supersededBySessionId": null,
|
|
337
|
+
"receiptDigest": "sha256:3333333333333333333333333333333333333333333333333333333333333333"
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
]
|
|
341
|
+
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://hunter-harness.dev/contracts/process-identity.schema.json",
|
|
4
|
+
"title": "Hunter Harness process identity",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schemaVersion",
|
|
9
|
+
"pid",
|
|
10
|
+
"alive",
|
|
11
|
+
"createdAt",
|
|
12
|
+
"executable",
|
|
13
|
+
"argvHash",
|
|
14
|
+
"workingDirectory",
|
|
15
|
+
"parentIdentity",
|
|
16
|
+
"ownerTokenHash",
|
|
17
|
+
"treeIdentity",
|
|
18
|
+
"fieldProvenance",
|
|
19
|
+
"capabilities"
|
|
20
|
+
],
|
|
21
|
+
"properties": {
|
|
22
|
+
"schemaVersion": { "const": 1 },
|
|
23
|
+
"pid": { "type": "integer", "minimum": 1 },
|
|
24
|
+
"alive": { "type": "boolean" },
|
|
25
|
+
"createdAt": { "type": ["string", "null"], "minLength": 1 },
|
|
26
|
+
"executable": { "type": ["string", "null"], "minLength": 1 },
|
|
27
|
+
"argvHash": { "$ref": "#/$defs/nullableDigest" },
|
|
28
|
+
"workingDirectory": { "type": ["string", "null"], "minLength": 1 },
|
|
29
|
+
"parentIdentity": {
|
|
30
|
+
"oneOf": [
|
|
31
|
+
{ "type": "null" },
|
|
32
|
+
{
|
|
33
|
+
"type": "object",
|
|
34
|
+
"additionalProperties": false,
|
|
35
|
+
"required": ["pid", "createdAt", "executable"],
|
|
36
|
+
"properties": {
|
|
37
|
+
"pid": { "type": "integer", "minimum": 1 },
|
|
38
|
+
"createdAt": { "type": ["string", "null"], "minLength": 1 },
|
|
39
|
+
"executable": { "type": ["string", "null"], "minLength": 1 }
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
]
|
|
43
|
+
},
|
|
44
|
+
"ownerTokenHash": { "$ref": "#/$defs/nullableDigest" },
|
|
45
|
+
"commandHash": { "$ref": "#/$defs/digest" },
|
|
46
|
+
"parentChain": { "type": "array" },
|
|
47
|
+
"startedAt": { "type": "string", "minLength": 1 },
|
|
48
|
+
"treeIdentity": {
|
|
49
|
+
"oneOf": [
|
|
50
|
+
{ "type": "null" },
|
|
51
|
+
{
|
|
52
|
+
"type": "object",
|
|
53
|
+
"additionalProperties": false,
|
|
54
|
+
"required": ["platform", "proofKind", "memberPids", "complete"],
|
|
55
|
+
"properties": {
|
|
56
|
+
"platform": { "enum": ["WINDOWS", "LINUX", "POSIX"] },
|
|
57
|
+
"proofKind": { "type": "string", "minLength": 1 },
|
|
58
|
+
"memberPids": {
|
|
59
|
+
"type": "array",
|
|
60
|
+
"items": { "type": "integer", "minimum": 1 },
|
|
61
|
+
"uniqueItems": true
|
|
62
|
+
},
|
|
63
|
+
"complete": { "type": "boolean" },
|
|
64
|
+
"groupId": { "type": "integer", "minimum": 1 },
|
|
65
|
+
"sessionId": { "type": "integer", "minimum": 1 }
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
"fieldProvenance": {
|
|
71
|
+
"type": "object",
|
|
72
|
+
"additionalProperties": false,
|
|
73
|
+
"required": [
|
|
74
|
+
"pid",
|
|
75
|
+
"createdAt",
|
|
76
|
+
"executable",
|
|
77
|
+
"argvHash",
|
|
78
|
+
"workingDirectory",
|
|
79
|
+
"parentIdentity",
|
|
80
|
+
"ownerTokenHash",
|
|
81
|
+
"treeIdentity"
|
|
82
|
+
],
|
|
83
|
+
"properties": {
|
|
84
|
+
"pid": { "const": "OBSERVED" },
|
|
85
|
+
"createdAt": { "$ref": "#/$defs/provenance" },
|
|
86
|
+
"executable": { "$ref": "#/$defs/provenance" },
|
|
87
|
+
"argvHash": { "$ref": "#/$defs/provenance" },
|
|
88
|
+
"workingDirectory": { "$ref": "#/$defs/provenance" },
|
|
89
|
+
"parentIdentity": { "$ref": "#/$defs/provenance" },
|
|
90
|
+
"ownerTokenHash": { "$ref": "#/$defs/provenance" },
|
|
91
|
+
"treeIdentity": { "$ref": "#/$defs/provenance" }
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
"capabilities": {
|
|
95
|
+
"type": "object",
|
|
96
|
+
"additionalProperties": false,
|
|
97
|
+
"required": [
|
|
98
|
+
"canObserveCreateTime",
|
|
99
|
+
"canObserveExecutable",
|
|
100
|
+
"canObserveArgv",
|
|
101
|
+
"canObserveWorkingDirectory",
|
|
102
|
+
"canObserveParent",
|
|
103
|
+
"canEnumerateTree",
|
|
104
|
+
"canVerifyOwnership"
|
|
105
|
+
],
|
|
106
|
+
"properties": {
|
|
107
|
+
"canObserveCreateTime": { "type": "boolean" },
|
|
108
|
+
"canObserveExecutable": { "type": "boolean" },
|
|
109
|
+
"canObserveArgv": { "type": "boolean" },
|
|
110
|
+
"canObserveWorkingDirectory": { "type": "boolean" },
|
|
111
|
+
"canObserveParent": { "type": "boolean" },
|
|
112
|
+
"canEnumerateTree": { "type": "boolean" },
|
|
113
|
+
"canVerifyOwnership": { "type": "boolean" }
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
"$defs": {
|
|
118
|
+
"digest": {
|
|
119
|
+
"type": "string",
|
|
120
|
+
"pattern": "^sha256:[0-9a-f]{64}$"
|
|
121
|
+
},
|
|
122
|
+
"nullableDigest": {
|
|
123
|
+
"oneOf": [
|
|
124
|
+
{ "$ref": "#/$defs/digest" },
|
|
125
|
+
{ "type": "null" }
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
"provenance": {
|
|
129
|
+
"enum": ["OBSERVED", "ATTESTED", "UNAVAILABLE"]
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://hunter-harness.dev/contracts/run-session.schema.json",
|
|
4
|
+
"title": "Hunter Harness managed run session",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schemaVersion",
|
|
9
|
+
"sessionId",
|
|
10
|
+
"status",
|
|
11
|
+
"reasonCode",
|
|
12
|
+
"exitCode",
|
|
13
|
+
"processIdentity",
|
|
14
|
+
"heartbeat",
|
|
15
|
+
"logs",
|
|
16
|
+
"cleanup",
|
|
17
|
+
"resultDigest"
|
|
18
|
+
],
|
|
19
|
+
"properties": {
|
|
20
|
+
"schemaVersion": { "const": 1 },
|
|
21
|
+
"sessionId": { "type": "string", "minLength": 1 },
|
|
22
|
+
"status": {
|
|
23
|
+
"enum": [
|
|
24
|
+
"PREPARING",
|
|
25
|
+
"STARTING",
|
|
26
|
+
"RUNNING",
|
|
27
|
+
"FINALIZING",
|
|
28
|
+
"OK",
|
|
29
|
+
"FAIL",
|
|
30
|
+
"CANCELLED",
|
|
31
|
+
"INCOMPLETE"
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
"reasonCode": { "$ref": "#/$defs/reasonCode" },
|
|
35
|
+
"exitCode": { "type": ["integer", "null"] },
|
|
36
|
+
"processIdentity": { "type": ["object", "null"] },
|
|
37
|
+
"heartbeat": {
|
|
38
|
+
"oneOf": [
|
|
39
|
+
{ "type": "null" },
|
|
40
|
+
{ "$ref": "#/$defs/heartbeat" }
|
|
41
|
+
]
|
|
42
|
+
},
|
|
43
|
+
"logs": {
|
|
44
|
+
"type": "object",
|
|
45
|
+
"additionalProperties": false,
|
|
46
|
+
"required": ["stdout", "stderr"],
|
|
47
|
+
"properties": {
|
|
48
|
+
"stdout": { "$ref": "#/$defs/logStream" },
|
|
49
|
+
"stderr": { "$ref": "#/$defs/logStream" }
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
"cleanup": {
|
|
53
|
+
"type": "object",
|
|
54
|
+
"additionalProperties": false,
|
|
55
|
+
"required": ["complete", "reasonCode"],
|
|
56
|
+
"properties": {
|
|
57
|
+
"complete": { "type": "boolean" },
|
|
58
|
+
"reasonCode": {
|
|
59
|
+
"oneOf": [
|
|
60
|
+
{ "$ref": "#/$defs/reasonCode" },
|
|
61
|
+
{ "type": "null" }
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"resultDigest": {
|
|
67
|
+
"oneOf": [
|
|
68
|
+
{ "$ref": "#/$defs/digest" },
|
|
69
|
+
{ "type": "null" }
|
|
70
|
+
]
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"allOf": [
|
|
74
|
+
{
|
|
75
|
+
"if": {
|
|
76
|
+
"properties": { "status": { "enum": ["OK", "FAIL"] } },
|
|
77
|
+
"required": ["status"]
|
|
78
|
+
},
|
|
79
|
+
"then": {
|
|
80
|
+
"properties": {
|
|
81
|
+
"exitCode": { "type": "integer" },
|
|
82
|
+
"resultDigest": { "$ref": "#/$defs/digest" }
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"if": {
|
|
88
|
+
"properties": { "status": { "const": "INCOMPLETE" } },
|
|
89
|
+
"required": ["status"]
|
|
90
|
+
},
|
|
91
|
+
"then": {
|
|
92
|
+
"properties": {
|
|
93
|
+
"exitCode": { "type": "null" },
|
|
94
|
+
"resultDigest": { "$ref": "#/$defs/digest" }
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
],
|
|
99
|
+
"$defs": {
|
|
100
|
+
"digest": {
|
|
101
|
+
"type": "string",
|
|
102
|
+
"pattern": "^sha256:[0-9a-f]{64}$"
|
|
103
|
+
},
|
|
104
|
+
"reasonCode": {
|
|
105
|
+
"type": "string",
|
|
106
|
+
"minLength": 1
|
|
107
|
+
},
|
|
108
|
+
"heartbeat": {
|
|
109
|
+
"type": "object",
|
|
110
|
+
"additionalProperties": false,
|
|
111
|
+
"required": [
|
|
112
|
+
"kind",
|
|
113
|
+
"writerIdentity",
|
|
114
|
+
"lastSeenAt",
|
|
115
|
+
"ttlSeconds",
|
|
116
|
+
"staleReason"
|
|
117
|
+
],
|
|
118
|
+
"properties": {
|
|
119
|
+
"kind": { "enum": ["WORKER", "SUPERVISOR", "OBSERVER"] },
|
|
120
|
+
"writerIdentity": { "$ref": "#/$defs/digest" },
|
|
121
|
+
"lastSeenAt": { "type": "string", "minLength": 1 },
|
|
122
|
+
"ttlSeconds": { "type": "integer", "minimum": 1 },
|
|
123
|
+
"staleReason": {
|
|
124
|
+
"oneOf": [
|
|
125
|
+
{ "$ref": "#/$defs/reasonCode" },
|
|
126
|
+
{ "type": "null" }
|
|
127
|
+
]
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
"logStream": {
|
|
132
|
+
"type": "object",
|
|
133
|
+
"additionalProperties": false,
|
|
134
|
+
"required": ["cursor", "rawDigest", "decodeStatus"],
|
|
135
|
+
"properties": {
|
|
136
|
+
"cursor": { "type": "integer", "minimum": 0 },
|
|
137
|
+
"rawDigest": { "$ref": "#/$defs/digest" },
|
|
138
|
+
"decodeStatus": { "enum": ["OK", "LOG_DECODE_DEGRADED"] }
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|