{
"project_name": "Agent Framework v2",
"project_goal": "Provide a proof-gated, policy-bounded, stage-based agent framework with controlled post-run self-improvement.",
"created_at_utc": "2026-01-11T17:55:15Z",
"sources_of_truth": {
"truth_registry": "project_truth.json",
"handoff_state": ".handoff.json",
"handoff_log": ".handoff.md",
"policy": "policy/policy.json",
"policy_schema": "schemas/policy.schema.json",
"system_contract": "AGENT.md",
"orchestrator_contract": "ORCHESTRATOR.md",
"dispatch_contract": "Orchestrator_Dispatch_Contract.md",
"architect_contract": "ARCHITECTAGENT.md",
"builder_contract": "BUILDERAGENT.md",
"verifier_contract": "VERIFIERAGENT.md",
"repair_contract": "REPAIRAGENT.md",
"handoff_schema": "schemas/handoff.schema.json",
"proof_schema": "schemas/proof.schema.json",
"stage_definitions": "stages/**/SPEC.md",
"tests_root": "tests/",
"documentation_root": "docs/",
"outputs_root": "outputs/",
"loop_policy": "docs/LOOP_POLICY.md",
"determinism_envelope": "docs/DETERMINISM_ENVELOPE.md",
"improvement_policy": "docs/self_improvement/IMPROVEMENT_POLICY.md",
"postrun_sophia": "docs/self_improvement/POSTRUN_SOPHIA.md",
"scoring_rubric": "docs/SCORING_RUBRIC.md",
"framework_extensions": "docs/FRAMEWORK_EXTENSIONS.md",
"postrun_report_template": "templates/postrun_report.template.json",
"loop_state_template": "templates/loop_state.template.json",
"postrun_analyzer": "scripts/postrun_analyze.py",
"drift_guard_hasher": "scripts/hash_drift_guard.py",
"env_snapshot_script": "scripts/deterministic_env_snapshot.py"
},
"locked_after_init": [
"sources_of_truth",
"project_goal"
],
"stage_chain_rules": {
"require_spec_per_stage": true,
"require_tests_per_stage": true,
"require_docs_per_stage": true,
"require_proof_per_stage": true,
"max_stages": 14,
"serial_by_default": true,
"max_attempts_per_stage_default": 3,
"max_repair_iterations_per_stage_default": 3,
"require_loop_metrics_in_proofs": true
}
}