briefloop 0.11.12__py3-none-any.whl

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.
Files changed (424) hide show
  1. briefloop-0.11.12.dist-info/METADATA +473 -0
  2. briefloop-0.11.12.dist-info/RECORD +424 -0
  3. briefloop-0.11.12.dist-info/WHEEL +5 -0
  4. briefloop-0.11.12.dist-info/entry_points.txt +3 -0
  5. briefloop-0.11.12.dist-info/licenses/LICENSE +22 -0
  6. briefloop-0.11.12.dist-info/top_level.txt +1 -0
  7. multi_agent_brief/__init__.py +36 -0
  8. multi_agent_brief/analysis_blocks/__init__.py +11 -0
  9. multi_agent_brief/analysis_blocks/builder.py +206 -0
  10. multi_agent_brief/analysis_blocks/renderer.py +237 -0
  11. multi_agent_brief/analysis_blocks/schemas.py +52 -0
  12. multi_agent_brief/analysis_modules/__init__.py +8 -0
  13. multi_agent_brief/analysis_modules/base.py +87 -0
  14. multi_agent_brief/analysis_modules/market_competitor/__init__.py +68 -0
  15. multi_agent_brief/analysis_modules/market_competitor/auditor.py +290 -0
  16. multi_agent_brief/analysis_modules/market_competitor/config.py +187 -0
  17. multi_agent_brief/analysis_modules/market_competitor/event_builder.py +226 -0
  18. multi_agent_brief/analysis_modules/market_competitor/renderer.py +199 -0
  19. multi_agent_brief/analysis_modules/market_competitor/schemas.py +518 -0
  20. multi_agent_brief/analysis_modules/policy_regulatory/__init__.py +7 -0
  21. multi_agent_brief/analysis_modules/policy_regulatory/audit.py +195 -0
  22. multi_agent_brief/analysis_modules/policy_regulatory/module.py +387 -0
  23. multi_agent_brief/analysis_modules/policy_regulatory/schemas.py +129 -0
  24. multi_agent_brief/analysis_modules/registry.py +73 -0
  25. multi_agent_brief/audience/__init__.py +19 -0
  26. multi_agent_brief/audience/profiles.py +246 -0
  27. multi_agent_brief/audience_memory/__init__.py +23 -0
  28. multi_agent_brief/audience_memory/profile.py +358 -0
  29. multi_agent_brief/audit/__init__.py +36 -0
  30. multi_agent_brief/audit/case_applicability.py +181 -0
  31. multi_agent_brief/audit/deterministic.py +471 -0
  32. multi_agent_brief/audit/editorial_governance.py +404 -0
  33. multi_agent_brief/audit/final_quality.py +764 -0
  34. multi_agent_brief/audit/harness.py +242 -0
  35. multi_agent_brief/audit/interfaces.py +96 -0
  36. multi_agent_brief/audit/limitation_hygiene.py +238 -0
  37. multi_agent_brief/audit/proposal_boundary.py +34 -0
  38. multi_agent_brief/audit/redaction.py +27 -0
  39. multi_agent_brief/audit/rule_packs.py +96 -0
  40. multi_agent_brief/audit/semantic.py +435 -0
  41. multi_agent_brief/capabilities/__init__.py +22 -0
  42. multi_agent_brief/capabilities/catalog.py +215 -0
  43. multi_agent_brief/capabilities/detect.py +199 -0
  44. multi_agent_brief/capabilities/models.py +60 -0
  45. multi_agent_brief/capabilities/recommend.py +206 -0
  46. multi_agent_brief/cli/__init__.py +2 -0
  47. multi_agent_brief/cli/analysis_commands.py +140 -0
  48. multi_agent_brief/cli/approval_commands.py +107 -0
  49. multi_agent_brief/cli/audit_commands.py +59 -0
  50. multi_agent_brief/cli/capability_commands.py +548 -0
  51. multi_agent_brief/cli/claude_commands.py +159 -0
  52. multi_agent_brief/cli/competitors_commands.py +182 -0
  53. multi_agent_brief/cli/controls_commands.py +137 -0
  54. multi_agent_brief/cli/deliver_commands.py +942 -0
  55. multi_agent_brief/cli/eval_cases_commands.py +99 -0
  56. multi_agent_brief/cli/experiments_commands.py +395 -0
  57. multi_agent_brief/cli/feedback_commands.py +192 -0
  58. multi_agent_brief/cli/finalize_commands.py +153 -0
  59. multi_agent_brief/cli/gates_commands.py +174 -0
  60. multi_agent_brief/cli/hermes_commands.py +356 -0
  61. multi_agent_brief/cli/improve_commands.py +224 -0
  62. multi_agent_brief/cli/init_commands.py +564 -0
  63. multi_agent_brief/cli/init_wizard.py +1473 -0
  64. multi_agent_brief/cli/input_commands.py +237 -0
  65. multi_agent_brief/cli/main.py +288 -0
  66. multi_agent_brief/cli/onboard_commands.py +193 -0
  67. multi_agent_brief/cli/product_commands.py +1449 -0
  68. multi_agent_brief/cli/provenance_commands.py +100 -0
  69. multi_agent_brief/cli/release_commands.py +68 -0
  70. multi_agent_brief/cli/repair_commands.py +169 -0
  71. multi_agent_brief/cli/run_commands.py +292 -0
  72. multi_agent_brief/cli/runtime_commands.py +81 -0
  73. multi_agent_brief/cli/secrets_commands.py +232 -0
  74. multi_agent_brief/cli/semantic_support_commands.py +80 -0
  75. multi_agent_brief/cli/sources_commands.py +647 -0
  76. multi_agent_brief/cli/start_commands.py +8 -0
  77. multi_agent_brief/cli/state_commands.py +446 -0
  78. multi_agent_brief/cli/status_commands.py +26 -0
  79. multi_agent_brief/cli/workbuddy_commands.py +103 -0
  80. multi_agent_brief/configs/artifact_contracts.yaml +514 -0
  81. multi_agent_brief/configs/orchestrator_contract.yaml +181 -0
  82. multi_agent_brief/configs/policy_packs/default.yaml +65 -0
  83. multi_agent_brief/configs/policy_profiles/evidence_extract_default.yaml +58 -0
  84. multi_agent_brief/configs/policy_profiles/finance_default.yaml +44 -0
  85. multi_agent_brief/configs/policy_profiles/internet_default.yaml +44 -0
  86. multi_agent_brief/configs/policy_profiles/manufacturing_default.yaml +33 -0
  87. multi_agent_brief/configs/policy_profiles/solar_manufacturing_default.yaml +64 -0
  88. multi_agent_brief/configs/report_packs/evidence_extract.yaml +48 -0
  89. multi_agent_brief/configs/report_packs/management_monthly.yaml +36 -0
  90. multi_agent_brief/configs/report_packs/market_weekly.yaml +36 -0
  91. multi_agent_brief/configs/report_packs/solar_industry_periodic.yaml +50 -0
  92. multi_agent_brief/configs/report_templates/evidence_extract.yaml +55 -0
  93. multi_agent_brief/configs/report_templates/management_monthly.yaml +48 -0
  94. multi_agent_brief/configs/report_templates/market_weekly.yaml +49 -0
  95. multi_agent_brief/configs/report_templates/solar_industry_periodic.yaml +75 -0
  96. multi_agent_brief/configs/stage_specs.yaml +180 -0
  97. multi_agent_brief/contracts/__init__.py +41 -0
  98. multi_agent_brief/contracts/base.py +99 -0
  99. multi_agent_brief/contracts/errors.py +41 -0
  100. multi_agent_brief/contracts/migrations/__init__.py +5 -0
  101. multi_agent_brief/contracts/migrations/claim_v1_to_v2.py +33 -0
  102. multi_agent_brief/contracts/registry.py +159 -0
  103. multi_agent_brief/contracts/role_topology.py +25 -0
  104. multi_agent_brief/contracts/schemas/__init__.py +35 -0
  105. multi_agent_brief/contracts/schemas/analysis_pack.py +135 -0
  106. multi_agent_brief/contracts/schemas/atomic_claim_graph.py +304 -0
  107. multi_agent_brief/contracts/schemas/audit_report.py +80 -0
  108. multi_agent_brief/contracts/schemas/candidate_item.py +51 -0
  109. multi_agent_brief/contracts/schemas/claim.py +197 -0
  110. multi_agent_brief/contracts/schemas/claim_draft.py +386 -0
  111. multi_agent_brief/contracts/schemas/claim_support_matrix.py +334 -0
  112. multi_agent_brief/contracts/schemas/evidence_span_registry.py +270 -0
  113. multi_agent_brief/contracts/schemas/policy_profile.py +247 -0
  114. multi_agent_brief/contracts/schemas/report_spec.py +257 -0
  115. multi_agent_brief/contracts/schemas/semantic_assessment_report.py +480 -0
  116. multi_agent_brief/contracts/schemas/source_evidence_pack_manifest.py +233 -0
  117. multi_agent_brief/contracts/schemas/source_item.py +96 -0
  118. multi_agent_brief/contracts/semantic_assessment_status.py +12 -0
  119. multi_agent_brief/contracts/source_metadata.py +252 -0
  120. multi_agent_brief/contracts/target_contract.py +460 -0
  121. multi_agent_brief/contracts/validator.py +225 -0
  122. multi_agent_brief/controls/__init__.py +23 -0
  123. multi_agent_brief/controls/contract.py +106 -0
  124. multi_agent_brief/controls/switchboard.py +1076 -0
  125. multi_agent_brief/core/__init__.py +2 -0
  126. multi_agent_brief/core/citations.py +14 -0
  127. multi_agent_brief/core/claim_ledger.py +94 -0
  128. multi_agent_brief/core/config.py +191 -0
  129. multi_agent_brief/core/env.py +69 -0
  130. multi_agent_brief/core/previous.py +83 -0
  131. multi_agent_brief/core/schemas.py +181 -0
  132. multi_agent_brief/core/selection.py +189 -0
  133. multi_agent_brief/delivery/__init__.py +6 -0
  134. multi_agent_brief/delivery/base.py +36 -0
  135. multi_agent_brief/delivery/feishu.py +204 -0
  136. multi_agent_brief/delivery/gws.py +237 -0
  137. multi_agent_brief/evaluation_cases/__init__.py +15 -0
  138. multi_agent_brief/evaluation_cases/contract.py +429 -0
  139. multi_agent_brief/evaluation_cases/fixtures/cases/approved_guidance_materialized/workspace/config.yaml +18 -0
  140. multi_agent_brief/evaluation_cases/fixtures/cases/approved_guidance_materialized/workspace/improvement/ledger.jsonl +2 -0
  141. multi_agent_brief/evaluation_cases/fixtures/cases/approved_guidance_materialized/workspace/sources.yaml +2 -0
  142. multi_agent_brief/evaluation_cases/fixtures/cases/approved_guidance_materialized/workspace/user.md +4 -0
  143. multi_agent_brief/evaluation_cases/fixtures/cases/company_event_missing_latest_official_check/workspace/config.yaml +13 -0
  144. multi_agent_brief/evaluation_cases/fixtures/cases/company_event_missing_latest_official_check/workspace/sources.yaml +9 -0
  145. multi_agent_brief/evaluation_cases/fixtures/cases/company_event_missing_latest_official_check/workspace/user.md +4 -0
  146. multi_agent_brief/evaluation_cases/fixtures/cases/control_switchboard_selection_is_not_execution/workspace/config.yaml +12 -0
  147. multi_agent_brief/evaluation_cases/fixtures/cases/control_switchboard_selection_is_not_execution/workspace/sources.yaml +6 -0
  148. multi_agent_brief/evaluation_cases/fixtures/cases/control_switchboard_selection_is_not_execution/workspace/user.md +4 -0
  149. multi_agent_brief/evaluation_cases/fixtures/cases/feedback_triage_required/workspace/config.yaml +6 -0
  150. multi_agent_brief/evaluation_cases/fixtures/cases/feedback_triage_required/workspace/input/human_feedback.md +1 -0
  151. multi_agent_brief/evaluation_cases/fixtures/cases/feedback_triage_required/workspace/sources.yaml +2 -0
  152. multi_agent_brief/evaluation_cases/fixtures/cases/feedback_triage_required/workspace/user.md +3 -0
  153. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/config.yaml +8 -0
  154. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/output/brief.md +14 -0
  155. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/output/intermediate/audit_report.json +1 -0
  156. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/output/intermediate/audited_brief.md +5 -0
  157. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/output/intermediate/candidate_claims.json +1 -0
  158. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/output/intermediate/claim_ledger.json +1 -0
  159. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/output/intermediate/screened_candidates.json +1 -0
  160. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/sources.yaml +2 -0
  161. multi_agent_brief/evaluation_cases/fixtures/cases/final_abstract_quality_warning_surface/workspace/user.md +3 -0
  162. multi_agent_brief/evaluation_cases/fixtures/cases/formal_release_missing_human_approval/workspace/config.yaml +13 -0
  163. multi_agent_brief/evaluation_cases/fixtures/cases/formal_release_missing_human_approval/workspace/sources.yaml +9 -0
  164. multi_agent_brief/evaluation_cases/fixtures/cases/formal_release_missing_human_approval/workspace/user.md +4 -0
  165. multi_agent_brief/evaluation_cases/fixtures/cases/guidance_manifestation_not_observable/workspace/config.yaml +4 -0
  166. multi_agent_brief/evaluation_cases/fixtures/cases/guidance_manifestation_not_observable/workspace/sources.yaml +2 -0
  167. multi_agent_brief/evaluation_cases/fixtures/cases/guidance_manifestation_not_observable/workspace/user.md +3 -0
  168. multi_agent_brief/evaluation_cases/fixtures/cases/media_only_legal_policy_blocks_research_review/workspace/config.yaml +13 -0
  169. multi_agent_brief/evaluation_cases/fixtures/cases/media_only_legal_policy_blocks_research_review/workspace/sources.yaml +9 -0
  170. multi_agent_brief/evaluation_cases/fixtures/cases/media_only_legal_policy_blocks_research_review/workspace/user.md +4 -0
  171. multi_agent_brief/evaluation_cases/fixtures/cases/mixed_metric_scope_support_blocker/workspace/config.yaml +13 -0
  172. multi_agent_brief/evaluation_cases/fixtures/cases/mixed_metric_scope_support_blocker/workspace/sources.yaml +9 -0
  173. multi_agent_brief/evaluation_cases/fixtures/cases/mixed_metric_scope_support_blocker/workspace/user.md +5 -0
  174. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/config.yaml +6 -0
  175. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/output/intermediate/audited_brief.md +3 -0
  176. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/output/intermediate/candidate_claims.json +1 -0
  177. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/output/intermediate/claim_ledger.json +1 -0
  178. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/output/intermediate/feedback_issues.json +25 -0
  179. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/output/intermediate/repair_plan.json +27 -0
  180. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/output/intermediate/screened_candidates.json +1 -0
  181. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/sources.yaml +2 -0
  182. multi_agent_brief/evaluation_cases/fixtures/cases/planned_blocking_issue_cannot_continue/workspace/user.md +3 -0
  183. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/config.yaml +8 -0
  184. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/output/intermediate/audit_report.json +1 -0
  185. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/output/intermediate/audited_brief.md +3 -0
  186. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/output/intermediate/candidate_claims.json +1 -0
  187. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/output/intermediate/claim_ledger.json +11 -0
  188. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/output/intermediate/quality_gate_report.json +22 -0
  189. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/output/intermediate/screened_candidates.json +1 -0
  190. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/sources.yaml +2 -0
  191. multi_agent_brief/evaluation_cases/fixtures/cases/provenance_projection_minimal/workspace/user.md +3 -0
  192. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/config.yaml +13 -0
  193. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/output/intermediate/audit_report.json +1 -0
  194. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/output/intermediate/audited_brief.md +5 -0
  195. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/output/intermediate/candidate_claims.json +1 -0
  196. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/output/intermediate/claim_ledger.json +40 -0
  197. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/output/intermediate/screened_candidates.json +1 -0
  198. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/sources.yaml +3 -0
  199. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_source_appendix/workspace/user.md +3 -0
  200. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/config.yaml +8 -0
  201. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/output/brief.md +3 -0
  202. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/output/intermediate/audit_report.json +1 -0
  203. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/output/intermediate/audited_brief.md +3 -0
  204. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/output/intermediate/candidate_claims.json +1 -0
  205. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/output/intermediate/claim_ledger.json +13 -0
  206. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/output/intermediate/screened_candidates.json +1 -0
  207. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/sources.yaml +2 -0
  208. multi_agent_brief/evaluation_cases/fixtures/cases/reader_facing_target_relevance/workspace/user.md +3 -0
  209. multi_agent_brief/evaluation_cases/fixtures/cases/release_readiness_forged_event_blocker/workspace/config.yaml +13 -0
  210. multi_agent_brief/evaluation_cases/fixtures/cases/release_readiness_forged_event_blocker/workspace/output/intermediate/release_readiness_report.json +31 -0
  211. multi_agent_brief/evaluation_cases/fixtures/cases/release_readiness_forged_event_blocker/workspace/sources.yaml +9 -0
  212. multi_agent_brief/evaluation_cases/fixtures/cases/release_readiness_forged_event_blocker/workspace/user.md +4 -0
  213. multi_agent_brief/evaluation_cases/fixtures/cases/reverted_entry_removed_from_next_snapshot/workspace/config.yaml +18 -0
  214. multi_agent_brief/evaluation_cases/fixtures/cases/reverted_entry_removed_from_next_snapshot/workspace/improvement/ledger.jsonl +3 -0
  215. multi_agent_brief/evaluation_cases/fixtures/cases/reverted_entry_removed_from_next_snapshot/workspace/improvement/memory.md +3 -0
  216. multi_agent_brief/evaluation_cases/fixtures/cases/reverted_entry_removed_from_next_snapshot/workspace/output/intermediate/improvement_memory_snapshot.md +3 -0
  217. multi_agent_brief/evaluation_cases/fixtures/cases/reverted_entry_removed_from_next_snapshot/workspace/sources.yaml +2 -0
  218. multi_agent_brief/evaluation_cases/fixtures/cases/reverted_entry_removed_from_next_snapshot/workspace/user.md +4 -0
  219. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/config.yaml +12 -0
  220. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/input/sources/source-001.txt +1 -0
  221. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/brief.md +37 -0
  222. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/delivery/brief.md +37 -0
  223. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/atomic_claim_graph.json +17 -0
  224. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/audit_report.json +5 -0
  225. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/audited_brief.md +37 -0
  226. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/claim_ledger.json +20 -0
  227. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/evidence_span_registry.json +20 -0
  228. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/finalize_report.json +40 -0
  229. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/gates/auditor_quality_gate_report.json +42 -0
  230. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/gates/finalize_quality_gate_report.json +42 -0
  231. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/intermediate/screened_candidates.json +33 -0
  232. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/source_appendix.md +12 -0
  233. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/output/source_appendix_trace.md +10 -0
  234. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/report_spec.yaml +24 -0
  235. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/sources.yaml +4 -0
  236. multi_agent_brief/evaluation_cases/fixtures/cases/same_evidence_reader_quality_regression/workspace/user.md +3 -0
  237. multi_agent_brief/evaluation_cases/fixtures/cases/source_evidence_pack_blocks_non_evidence_file/workspace/config.yaml +13 -0
  238. multi_agent_brief/evaluation_cases/fixtures/cases/source_evidence_pack_blocks_non_evidence_file/workspace/input/sources/README.md +4 -0
  239. multi_agent_brief/evaluation_cases/fixtures/cases/source_evidence_pack_blocks_non_evidence_file/workspace/output/intermediate/source_evidence_pack_manifest.json +26 -0
  240. multi_agent_brief/evaluation_cases/fixtures/cases/source_evidence_pack_blocks_non_evidence_file/workspace/sources.yaml +9 -0
  241. multi_agent_brief/evaluation_cases/fixtures/cases/source_evidence_pack_blocks_non_evidence_file/workspace/user.md +4 -0
  242. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/config.yaml +9 -0
  243. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/output/intermediate/audit_report.json +1 -0
  244. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/output/intermediate/audited_brief.md +3 -0
  245. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/output/intermediate/candidate_claims.json +1 -0
  246. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/output/intermediate/claim_ledger.json +13 -0
  247. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/output/intermediate/screened_candidates.json +1 -0
  248. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/sources.yaml +2 -0
  249. multi_agent_brief/evaluation_cases/fixtures/cases/stale_current_claim/workspace/user.md +3 -0
  250. multi_agent_brief/evaluation_cases/fixtures/cases/third_party_price_snapshot_formal_block/workspace/config.yaml +13 -0
  251. multi_agent_brief/evaluation_cases/fixtures/cases/third_party_price_snapshot_formal_block/workspace/sources.yaml +9 -0
  252. multi_agent_brief/evaluation_cases/fixtures/cases/third_party_price_snapshot_formal_block/workspace/user.md +4 -0
  253. multi_agent_brief/evaluation_cases/fixtures/cases/trajectory_retry_budget_exhausted/workspace/config.yaml +4 -0
  254. multi_agent_brief/evaluation_cases/fixtures/cases/trajectory_retry_budget_exhausted/workspace/sources.yaml +2 -0
  255. multi_agent_brief/evaluation_cases/fixtures/cases/trajectory_retry_budget_exhausted/workspace/user.md +3 -0
  256. multi_agent_brief/evaluation_cases/fixtures/cases/unapproved_entry_not_materialized/workspace/config.yaml +18 -0
  257. multi_agent_brief/evaluation_cases/fixtures/cases/unapproved_entry_not_materialized/workspace/improvement/ledger.jsonl +1 -0
  258. multi_agent_brief/evaluation_cases/fixtures/cases/unapproved_entry_not_materialized/workspace/sources.yaml +2 -0
  259. multi_agent_brief/evaluation_cases/fixtures/cases/unapproved_entry_not_materialized/workspace/user.md +4 -0
  260. multi_agent_brief/evaluation_cases/fixtures/cases/unauthorized_institution_branding_blocks_release/workspace/config.yaml +18 -0
  261. multi_agent_brief/evaluation_cases/fixtures/cases/unauthorized_institution_branding_blocks_release/workspace/sources.yaml +9 -0
  262. multi_agent_brief/evaluation_cases/fixtures/cases/unauthorized_institution_branding_blocks_release/workspace/user.md +5 -0
  263. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/config.yaml +8 -0
  264. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/output/intermediate/audit_report.json +1 -0
  265. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/output/intermediate/audited_brief.md +8 -0
  266. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/output/intermediate/candidate_claims.json +1 -0
  267. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/output/intermediate/claim_ledger.json +1 -0
  268. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/output/intermediate/screened_candidates.json +1 -0
  269. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/sources.yaml +2 -0
  270. multi_agent_brief/evaluation_cases/fixtures/cases/unsupported_material_fact/workspace/user.md +3 -0
  271. multi_agent_brief/evaluation_cases/fixtures/manifest.yaml +861 -0
  272. multi_agent_brief/evaluation_cases/fixtures.py +20 -0
  273. multi_agent_brief/evaluation_cases/runner.py +1603 -0
  274. multi_agent_brief/experiments/__init__.py +45 -0
  275. multi_agent_brief/experiments/experiment_080.py +5835 -0
  276. multi_agent_brief/experiments/schemas.py +63 -0
  277. multi_agent_brief/experiments/target_contract.py +10 -0
  278. multi_agent_brief/feedback/__init__.py +17 -0
  279. multi_agent_brief/feedback/feedback_contract.py +482 -0
  280. multi_agent_brief/feedback/feedback_state.py +898 -0
  281. multi_agent_brief/hermes/__init__.py +25 -0
  282. multi_agent_brief/hermes/adapter.py +832 -0
  283. multi_agent_brief/improvement/__init__.py +83 -0
  284. multi_agent_brief/improvement/contract.py +1114 -0
  285. multi_agent_brief/improvement/memory.py +451 -0
  286. multi_agent_brief/improvement/product_definition.py +228 -0
  287. multi_agent_brief/improvement/state.py +961 -0
  288. multi_agent_brief/inputs/__init__.py +2 -0
  289. multi_agent_brief/inputs/classifier.py +322 -0
  290. multi_agent_brief/inputs/contracts.py +59 -0
  291. multi_agent_brief/inputs/extractor.py +310 -0
  292. multi_agent_brief/install/__init__.py +2 -0
  293. multi_agent_brief/install/writer.py +97 -0
  294. multi_agent_brief/onboarding/__init__.py +11 -0
  295. multi_agent_brief/onboarding/io.py +103 -0
  296. multi_agent_brief/onboarding/mapper.py +484 -0
  297. multi_agent_brief/onboarding/schema.py +46 -0
  298. multi_agent_brief/orchestrator/__init__.py +2 -0
  299. multi_agent_brief/orchestrator/fact_layer_import.py +352 -0
  300. multi_agent_brief/orchestrator/handoff.py +2209 -0
  301. multi_agent_brief/orchestrator/role_topology.py +42 -0
  302. multi_agent_brief/orchestrator/run_archive.py +888 -0
  303. multi_agent_brief/orchestrator/run_integrity.py +346 -0
  304. multi_agent_brief/orchestrator/runtime_state/__init__.py +70 -0
  305. multi_agent_brief/orchestrator/runtime_state/_io.py +167 -0
  306. multi_agent_brief/orchestrator/runtime_state/_transactions.py +298 -0
  307. multi_agent_brief/orchestrator/runtime_state/artifact_registry.py +1825 -0
  308. multi_agent_brief/orchestrator/runtime_state/atomic_claim_graph.py +96 -0
  309. multi_agent_brief/orchestrator/runtime_state/claim_ledger_freeze.py +510 -0
  310. multi_agent_brief/orchestrator/runtime_state/claim_metadata_enrichment.py +836 -0
  311. multi_agent_brief/orchestrator/runtime_state/claim_support_matrix.py +582 -0
  312. multi_agent_brief/orchestrator/runtime_state/completion_gates.py +672 -0
  313. multi_agent_brief/orchestrator/runtime_state/contracts_loader.py +66 -0
  314. multi_agent_brief/orchestrator/runtime_state/decisions.py +239 -0
  315. multi_agent_brief/orchestrator/runtime_state/errors.py +61 -0
  316. multi_agent_brief/orchestrator/runtime_state/event_log.py +256 -0
  317. multi_agent_brief/orchestrator/runtime_state/evidence_span_registry.py +233 -0
  318. multi_agent_brief/orchestrator/runtime_state/fact_layer.py +755 -0
  319. multi_agent_brief/orchestrator/runtime_state/identity.py +90 -0
  320. multi_agent_brief/orchestrator/runtime_state/lifecycle.py +675 -0
  321. multi_agent_brief/orchestrator/runtime_state/manifest.py +82 -0
  322. multi_agent_brief/orchestrator/runtime_state/operations.py +224 -0
  323. multi_agent_brief/orchestrator/runtime_state/paths.py +38 -0
  324. multi_agent_brief/orchestrator/runtime_state/repair.py +984 -0
  325. multi_agent_brief/orchestrator/runtime_state/safety_surfaces.py +147 -0
  326. multi_agent_brief/orchestrator/runtime_state/semantic_assessment_report.py +692 -0
  327. multi_agent_brief/orchestrator/runtime_state/semantic_support_acceptance.py +683 -0
  328. multi_agent_brief/orchestrator/runtime_state/source_evidence_pack.py +131 -0
  329. multi_agent_brief/orchestrator/runtime_state/stage_completion.py +1320 -0
  330. multi_agent_brief/orchestrator/runtime_state/trajectory.py +200 -0
  331. multi_agent_brief/orchestrator/runtime_state/workflow.py +350 -0
  332. multi_agent_brief/orchestrator/source_evidence.py +43 -0
  333. multi_agent_brief/orchestrator/timing.py +410 -0
  334. multi_agent_brief/orchestrator_contract.py +96 -0
  335. multi_agent_brief/outputs/__init__.py +2 -0
  336. multi_agent_brief/outputs/atomic_reader_projection.py +288 -0
  337. multi_agent_brief/outputs/docx.py +32 -0
  338. multi_agent_brief/outputs/finalize.py +1036 -0
  339. multi_agent_brief/outputs/ib_docx.py +983 -0
  340. multi_agent_brief/outputs/naming.py +38 -0
  341. multi_agent_brief/outputs/pdf.py +20 -0
  342. multi_agent_brief/outputs/reader_final_gate.py +509 -0
  343. multi_agent_brief/outputs/reader_projection.py +397 -0
  344. multi_agent_brief/outputs/source_appendix.py +753 -0
  345. multi_agent_brief/outputs/templates/__init__.py +112 -0
  346. multi_agent_brief/product/__init__.py +49 -0
  347. multi_agent_brief/product/bundle_projection.py +686 -0
  348. multi_agent_brief/product/citation_profile.py +145 -0
  349. multi_agent_brief/product/guidance_manifestation.py +421 -0
  350. multi_agent_brief/product/materiality_selection.py +472 -0
  351. multi_agent_brief/product/policy_gate_adapter.py +116 -0
  352. multi_agent_brief/product/policy_profile.py +39 -0
  353. multi_agent_brief/product/policy_projection.py +161 -0
  354. multi_agent_brief/product/policy_registry.py +83 -0
  355. multi_agent_brief/product/policy_resolver.py +225 -0
  356. multi_agent_brief/product/quality_closeout.py +188 -0
  357. multi_agent_brief/product/quality_panel.py +2217 -0
  358. multi_agent_brief/product/release_approval.py +1034 -0
  359. multi_agent_brief/product/report_pack.py +130 -0
  360. multi_agent_brief/product/report_pack_aliases.py +68 -0
  361. multi_agent_brief/product/report_registry.py +101 -0
  362. multi_agent_brief/product/report_spec.py +181 -0
  363. multi_agent_brief/product/support_wording.py +525 -0
  364. multi_agent_brief/product/template_conformance.py +516 -0
  365. multi_agent_brief/product/template_projection.py +123 -0
  366. multi_agent_brief/product/template_registry.py +244 -0
  367. multi_agent_brief/product/template_render_plan.py +315 -0
  368. multi_agent_brief/product/template_renderer.py +224 -0
  369. multi_agent_brief/product/trajectory_regulation.py +441 -0
  370. multi_agent_brief/provenance/__init__.py +5 -0
  371. multi_agent_brief/provenance/builder.py +841 -0
  372. multi_agent_brief/provenance/contract.py +21 -0
  373. multi_agent_brief/provenance/io.py +144 -0
  374. multi_agent_brief/provenance/model.py +110 -0
  375. multi_agent_brief/provenance/references.py +43 -0
  376. multi_agent_brief/provenance/validator.py +135 -0
  377. multi_agent_brief/quality_gates/__init__.py +19 -0
  378. multi_agent_brief/quality_gates/contract.py +581 -0
  379. multi_agent_brief/quality_gates/state.py +2498 -0
  380. multi_agent_brief/repair/__init__.py +5 -0
  381. multi_agent_brief/repair/router.py +842 -0
  382. multi_agent_brief/runtime_assets.py +431 -0
  383. multi_agent_brief/sources/__init__.py +16 -0
  384. multi_agent_brief/sources/api_filings.py +236 -0
  385. multi_agent_brief/sources/api_news.py +174 -0
  386. multi_agent_brief/sources/base.py +142 -0
  387. multi_agent_brief/sources/cached_package.py +119 -0
  388. multi_agent_brief/sources/cli_provider.py +263 -0
  389. multi_agent_brief/sources/coverage.py +336 -0
  390. multi_agent_brief/sources/decider.py +756 -0
  391. multi_agent_brief/sources/doctor.py +373 -0
  392. multi_agent_brief/sources/evidence_pack.py +364 -0
  393. multi_agent_brief/sources/feishu_provider.py +326 -0
  394. multi_agent_brief/sources/filing_resolver.py +400 -0
  395. multi_agent_brief/sources/industry_packs.py +130 -0
  396. multi_agent_brief/sources/join.py +206 -0
  397. multi_agent_brief/sources/local_signal.py +81 -0
  398. multi_agent_brief/sources/local_signal_planner.py +636 -0
  399. multi_agent_brief/sources/manual.py +259 -0
  400. multi_agent_brief/sources/mcp_provider.py +309 -0
  401. multi_agent_brief/sources/mineru_provider.py +601 -0
  402. multi_agent_brief/sources/normalizer.py +95 -0
  403. multi_agent_brief/sources/opencli_provider.py +282 -0
  404. multi_agent_brief/sources/planner.py +178 -0
  405. multi_agent_brief/sources/registry.py +367 -0
  406. multi_agent_brief/sources/rss.py +190 -0
  407. multi_agent_brief/sources/search_backends/__init__.py +31 -0
  408. multi_agent_brief/sources/search_backends/base.py +51 -0
  409. multi_agent_brief/sources/search_backends/brave.py +192 -0
  410. multi_agent_brief/sources/search_backends/capabilities.py +94 -0
  411. multi_agent_brief/sources/search_backends/exa.py +180 -0
  412. multi_agent_brief/sources/search_backends/firecrawl.py +164 -0
  413. multi_agent_brief/sources/search_backends/serper.py +241 -0
  414. multi_agent_brief/sources/search_backends/tavily.py +124 -0
  415. multi_agent_brief/sources/sourcehub.py +505 -0
  416. multi_agent_brief/sources/web_search.py +267 -0
  417. multi_agent_brief/status.py +966 -0
  418. multi_agent_brief/tools/__init__.py +3 -0
  419. multi_agent_brief/tools/draft_cleanup.py +198 -0
  420. multi_agent_brief/workbuddy/__init__.py +1 -0
  421. multi_agent_brief/workbuddy/diagnose.py +569 -0
  422. multi_agent_brief/workbuddy/skill_pack.py +309 -0
  423. multi_agent_brief/workspace/__init__.py +1 -0
  424. multi_agent_brief/workspace/init_profile.py +45 -0
@@ -0,0 +1,514 @@
1
+ schema_version: multi-agent-brief-artifact-contracts/v1
2
+ artifact_contract:
3
+ status_values:
4
+ - expected
5
+ - missing
6
+ - present
7
+ - valid
8
+ - invalid
9
+ - blocked
10
+ provenance_ready_fields:
11
+ - artifact_id
12
+ - path
13
+ - producer_stage
14
+ - producer_role
15
+ - consumer_stages
16
+ - validation_result
17
+ - blocking_reason
18
+ - allowed_decisions
19
+ - retry_or_human_review_decision
20
+ producer_kind_values:
21
+ - workflow_stage
22
+ - control_tool
23
+ edge_direction_notes:
24
+ artifact_derived_from: "from is the derived/output artifact; to is the source/input artifact."
25
+ artifacts:
26
+ - artifact_id: source_candidates
27
+ path: source_candidates.yaml
28
+ format: yaml
29
+ required: false
30
+ producer_stage: source-discovery
31
+ producer_role: source-planner
32
+ consumer_stages: []
33
+ validation_result: reference_only
34
+ blocking_reason: ""
35
+ allowed_decisions:
36
+ - continue
37
+ - retry_stage
38
+ - request_human_review
39
+ - block_run
40
+ retry_or_human_review_decision: request_human_review
41
+ - artifact_id: input_classification
42
+ path: output/input_classification.json
43
+ format: json
44
+ required: false
45
+ producer_stage: input-governance
46
+ producer_role: python_tool
47
+ consumer_stages:
48
+ - scout
49
+ - analyst
50
+ - editor
51
+ validation_result: reference_only
52
+ blocking_reason: ""
53
+ allowed_decisions:
54
+ - continue
55
+ - retry_stage
56
+ - request_human_review
57
+ - block_run
58
+ retry_or_human_review_decision: retry_stage
59
+ - artifact_id: source_evidence_pack_manifest
60
+ path: output/intermediate/source_evidence_pack_manifest.json
61
+ format: json
62
+ required: false
63
+ producer_kind: control_tool
64
+ producer_stage: source-discovery
65
+ producer_role: python_tool
66
+ consumer_stages:
67
+ - scout
68
+ - claim-ledger
69
+ - finalize
70
+ validation_result: experimental_source_evidence_pack_manifest
71
+ blocking_reason: ""
72
+ allowed_decisions:
73
+ - continue
74
+ - retry_stage
75
+ - request_human_review
76
+ - block_run
77
+ retry_or_human_review_decision: request_human_review
78
+ - artifact_id: candidate_claims
79
+ path: output/intermediate/candidate_claims.json
80
+ format: json
81
+ required: true
82
+ producer_stage: scout
83
+ producer_role: scout
84
+ consumer_stages:
85
+ - screener
86
+ validation_result: reference_only
87
+ blocking_reason: ""
88
+ allowed_decisions:
89
+ - continue
90
+ - retry_stage
91
+ - request_human_review
92
+ - block_run
93
+ retry_or_human_review_decision: retry_stage
94
+ - artifact_id: screened_candidates
95
+ path: output/intermediate/screened_candidates.json
96
+ format: json
97
+ required: true
98
+ producer_stage: screener
99
+ producer_role: screener
100
+ consumer_stages:
101
+ - claim-ledger
102
+ validation_result: reference_only
103
+ blocking_reason: ""
104
+ allowed_decisions:
105
+ - continue
106
+ - retry_stage
107
+ - request_human_review
108
+ - block_run
109
+ retry_or_human_review_decision: retry_stage
110
+ - artifact_id: claim_ledger
111
+ path: output/intermediate/claim_ledger.json
112
+ format: json
113
+ required: true
114
+ producer_stage: claim-ledger
115
+ producer_role: claim-ledger
116
+ consumer_stages:
117
+ - analyst
118
+ - auditor
119
+ validation_result: reference_only
120
+ blocking_reason: ""
121
+ allowed_decisions:
122
+ - continue
123
+ - retry_stage
124
+ - request_human_review
125
+ - block_run
126
+ retry_or_human_review_decision: request_human_review
127
+ - artifact_id: claim_drafts
128
+ path: output/intermediate/claim_drafts.json
129
+ format: json
130
+ required: false
131
+ producer_stage: claim-ledger
132
+ producer_role: claim-ledger
133
+ consumer_stages: []
134
+ validation_result: experimental_freeze_input
135
+ blocking_reason: ""
136
+ allowed_decisions:
137
+ - continue
138
+ - retry_stage
139
+ - request_human_review
140
+ - block_run
141
+ retry_or_human_review_decision: request_human_review
142
+ - artifact_id: atomic_claim_graph
143
+ path: output/intermediate/atomic_claim_graph.json
144
+ format: json
145
+ required: false
146
+ producer_stage: claim-ledger
147
+ producer_role: claim-ledger
148
+ consumer_stages: []
149
+ validation_result: experimental_atomic_claim_graph_schema
150
+ blocking_reason: ""
151
+ allowed_decisions:
152
+ - continue
153
+ - retry_stage
154
+ - request_human_review
155
+ - block_run
156
+ retry_or_human_review_decision: request_human_review
157
+ - artifact_id: evidence_span_registry
158
+ path: output/intermediate/evidence_span_registry.json
159
+ format: json
160
+ required: false
161
+ producer_stage: claim-ledger
162
+ producer_role: claim-ledger
163
+ consumer_stages: []
164
+ validation_result: experimental_evidence_span_registry_schema
165
+ blocking_reason: ""
166
+ allowed_decisions:
167
+ - continue
168
+ - retry_stage
169
+ - request_human_review
170
+ - block_run
171
+ retry_or_human_review_decision: request_human_review
172
+ - artifact_id: evidence_extract_source_lock
173
+ path: output/intermediate/evidence_extract_source_lock.json
174
+ format: json
175
+ required: false
176
+ producer_kind: control_tool
177
+ producer_stage: source-discovery
178
+ producer_role: python_tool
179
+ consumer_stages:
180
+ - scout
181
+ - claim-ledger
182
+ - finalize
183
+ validation_result: experimental_evidence_extract_source_lock
184
+ blocking_reason: ""
185
+ allowed_decisions:
186
+ - continue
187
+ - retry_stage
188
+ - request_human_review
189
+ - block_run
190
+ retry_or_human_review_decision: request_human_review
191
+ - artifact_id: evidence_extract_page_inventory
192
+ path: output/intermediate/evidence_extract_page_inventory.json
193
+ format: json
194
+ required: false
195
+ producer_kind: control_tool
196
+ producer_stage: source-discovery
197
+ producer_role: python_tool
198
+ consumer_stages:
199
+ - scout
200
+ - claim-ledger
201
+ - finalize
202
+ validation_result: experimental_evidence_extract_page_inventory
203
+ blocking_reason: ""
204
+ allowed_decisions:
205
+ - continue
206
+ - retry_stage
207
+ - request_human_review
208
+ - block_run
209
+ retry_or_human_review_decision: request_human_review
210
+ - artifact_id: claim_support_matrix
211
+ path: output/intermediate/claim_support_matrix.json
212
+ format: json
213
+ required: false
214
+ producer_stage: auditor
215
+ producer_role: auditor
216
+ consumer_stages: []
217
+ validation_result: experimental_claim_support_matrix_schema
218
+ blocking_reason: ""
219
+ allowed_decisions:
220
+ - continue
221
+ - retry_stage
222
+ - request_human_review
223
+ - block_run
224
+ retry_or_human_review_decision: request_human_review
225
+ - artifact_id: semantic_assessment_report
226
+ path: output/intermediate/semantic_assessment_report.json
227
+ format: json
228
+ required: false
229
+ producer_stage: auditor
230
+ producer_role: auditor
231
+ consumer_stages: []
232
+ validation_result: experimental_semantic_assessment_report_schema
233
+ blocking_reason: ""
234
+ allowed_decisions:
235
+ - continue
236
+ - retry_stage
237
+ - request_human_review
238
+ - block_run
239
+ retry_or_human_review_decision: request_human_review
240
+ - artifact_id: semantic_support_acceptance_ledger
241
+ path: output/intermediate/semantic_support_acceptance_ledger.json
242
+ format: json
243
+ required: false
244
+ producer_kind: control_tool
245
+ producer_stage: auditor
246
+ producer_role: python_tool
247
+ consumer_stages: []
248
+ validation_result: experimental_semantic_support_acceptance_ledger
249
+ blocking_reason: ""
250
+ allowed_decisions:
251
+ - continue
252
+ - request_human_review
253
+ - block_run
254
+ retry_or_human_review_decision: request_human_review
255
+ - artifact_id: human_approval_ledger
256
+ path: output/intermediate/human_approval_ledger.json
257
+ format: json
258
+ required: false
259
+ producer_kind: control_tool
260
+ producer_stage: finalize
261
+ producer_role: python_tool
262
+ consumer_stages: []
263
+ validation_result: experimental_human_approval_ledger
264
+ blocking_reason: ""
265
+ allowed_decisions:
266
+ - continue
267
+ - request_human_review
268
+ - block_run
269
+ retry_or_human_review_decision: request_human_review
270
+ - artifact_id: release_readiness_report
271
+ path: output/intermediate/release_readiness_report.json
272
+ format: json
273
+ required: false
274
+ producer_kind: control_tool
275
+ producer_stage: finalize
276
+ producer_role: python_tool
277
+ consumer_stages: []
278
+ validation_result: experimental_release_readiness_report
279
+ blocking_reason: ""
280
+ allowed_decisions:
281
+ - continue
282
+ - request_human_review
283
+ - block_run
284
+ retry_or_human_review_decision: request_human_review
285
+ - artifact_id: quality_panel
286
+ path: output/intermediate/quality_panel.json
287
+ format: json
288
+ required: false
289
+ producer_kind: control_tool
290
+ producer_stage: quality-panel
291
+ producer_role: python_tool
292
+ consumer_stages: []
293
+ validation_result: experimental_quality_panel
294
+ blocking_reason: ""
295
+ allowed_decisions:
296
+ - continue
297
+ - request_human_review
298
+ - block_run
299
+ retry_or_human_review_decision: request_human_review
300
+ - artifact_id: quality_summary
301
+ path: output/intermediate/quality_summary.md
302
+ format: markdown
303
+ required: false
304
+ producer_kind: control_tool
305
+ producer_stage: quality-panel
306
+ producer_role: python_tool
307
+ consumer_stages: []
308
+ validation_result: experimental_quality_summary_markdown
309
+ blocking_reason: ""
310
+ allowed_decisions:
311
+ - continue
312
+ - request_human_review
313
+ - block_run
314
+ retry_or_human_review_decision: request_human_review
315
+ - artifact_id: quality_panel_html
316
+ path: output/intermediate/quality_panel.html
317
+ format: html
318
+ required: false
319
+ producer_kind: control_tool
320
+ producer_stage: quality-panel
321
+ producer_role: python_tool
322
+ consumer_stages: []
323
+ validation_result: experimental_quality_panel_html
324
+ blocking_reason: ""
325
+ allowed_decisions:
326
+ - continue
327
+ - request_human_review
328
+ - block_run
329
+ retry_or_human_review_decision: request_human_review
330
+ - artifact_id: guidance_manifestation_report
331
+ path: output/intermediate/guidance_manifestation_report.json
332
+ format: json
333
+ required: false
334
+ producer_kind: control_tool
335
+ producer_stage: guidance-manifestation
336
+ producer_role: python_tool_or_human_import
337
+ consumer_stages: []
338
+ validation_result: experimental_guidance_manifestation_report
339
+ blocking_reason: ""
340
+ allowed_decisions:
341
+ - continue
342
+ - request_human_review
343
+ - block_run
344
+ retry_or_human_review_decision: request_human_review
345
+ - artifact_id: audited_brief
346
+ path: output/intermediate/audited_brief.md
347
+ format: markdown
348
+ required: true
349
+ producer_stage: editor
350
+ producer_role: editor
351
+ consumer_stages:
352
+ - auditor
353
+ - finalize
354
+ validation_result: reference_only
355
+ blocking_reason: ""
356
+ allowed_decisions:
357
+ - continue
358
+ - retry_stage
359
+ - delegate_repair
360
+ - request_human_review
361
+ - block_run
362
+ retry_or_human_review_decision: delegate_repair
363
+ - artifact_id: analyst_draft_snapshot
364
+ path: output/intermediate/analyst_draft_snapshot.md
365
+ format: markdown
366
+ required: true
367
+ producer_kind: control_tool
368
+ producer_stage: analyst
369
+ producer_role: python_tool
370
+ consumer_stages:
371
+ - editor
372
+ - auditor
373
+ validation_result: editor_gate_snapshot
374
+ blocking_reason: ""
375
+ allowed_decisions:
376
+ - continue
377
+ - delegate_repair
378
+ - request_human_review
379
+ - block_run
380
+ retry_or_human_review_decision: delegate_repair
381
+ - artifact_id: audit_report
382
+ path: output/intermediate/audit_report.json
383
+ format: json
384
+ required: true
385
+ producer_stage: auditor
386
+ producer_role: auditor
387
+ consumer_stages:
388
+ - finalize
389
+ validation_result: reference_only
390
+ blocking_reason: ""
391
+ allowed_decisions:
392
+ - continue
393
+ - retry_stage
394
+ - delegate_repair
395
+ - request_human_review
396
+ - block_run
397
+ retry_or_human_review_decision: delegate_repair
398
+ - artifact_id: feedback_issues
399
+ path: output/intermediate/feedback_issues.json
400
+ format: json
401
+ required: false
402
+ producer_stage: auditor
403
+ producer_role: python_tool_or_orchestrator
404
+ consumer_stages:
405
+ - analyst
406
+ - editor
407
+ - auditor
408
+ - finalize
409
+ validation_result: reference_only
410
+ blocking_reason: ""
411
+ allowed_decisions:
412
+ - delegate_repair
413
+ - request_human_review
414
+ - block_run
415
+ retry_or_human_review_decision: request_human_review
416
+ - artifact_id: repair_plan
417
+ path: output/intermediate/repair_plan.json
418
+ format: json
419
+ required: false
420
+ producer_stage: auditor
421
+ producer_role: python_tool_or_orchestrator
422
+ consumer_stages:
423
+ - analyst
424
+ - editor
425
+ - auditor
426
+ - finalize
427
+ validation_result: reference_only
428
+ blocking_reason: ""
429
+ allowed_decisions:
430
+ - delegate_repair
431
+ - request_human_review
432
+ - block_run
433
+ retry_or_human_review_decision: request_human_review
434
+ - artifact_id: delta_audit_report
435
+ path: output/intermediate/delta_audit_report.json
436
+ format: json
437
+ required: false
438
+ producer_stage: auditor
439
+ producer_role: auditor
440
+ consumer_stages:
441
+ - auditor
442
+ - finalize
443
+ validation_result: conditional_repair_only
444
+ blocking_reason: ""
445
+ allowed_decisions:
446
+ - continue
447
+ - retry_stage
448
+ - delegate_repair
449
+ - request_human_review
450
+ - block_run
451
+ retry_or_human_review_decision: delegate_repair
452
+ - artifact_id: auditor_quality_gate_report
453
+ path: output/intermediate/gates/auditor_quality_gate_report.json
454
+ format: json
455
+ required: false
456
+ producer_stage: auditor
457
+ producer_role: python_tool
458
+ consumer_stages:
459
+ - auditor
460
+ - finalize
461
+ validation_result: conditional_quality_gate_only
462
+ blocking_reason: ""
463
+ allowed_decisions:
464
+ - continue
465
+ - delegate_repair
466
+ - request_human_review
467
+ - block_run
468
+ retry_or_human_review_decision: request_human_review
469
+ - artifact_id: finalize_quality_gate_report
470
+ path: output/intermediate/gates/finalize_quality_gate_report.json
471
+ format: json
472
+ required: false
473
+ producer_stage: finalize
474
+ producer_role: python_tool
475
+ consumer_stages:
476
+ - finalize
477
+ validation_result: conditional_quality_gate_only
478
+ blocking_reason: ""
479
+ allowed_decisions:
480
+ - finalize
481
+ - request_human_review
482
+ - block_run
483
+ retry_or_human_review_decision: request_human_review
484
+ - artifact_id: provenance_graph
485
+ path: output/intermediate/provenance_graph.json
486
+ format: json
487
+ required: false
488
+ producer_kind: control_tool
489
+ producer_stage: provenance
490
+ producer_role: python_tool
491
+ consumer_stages:
492
+ - auditor
493
+ - finalize
494
+ validation_result: conditional_provenance_only
495
+ blocking_reason: ""
496
+ allowed_decisions:
497
+ - continue
498
+ - request_human_review
499
+ - block_run
500
+ retry_or_human_review_decision: request_human_review
501
+ - artifact_id: reader_brief
502
+ path: output/brief.md
503
+ format: markdown
504
+ required: true
505
+ producer_stage: finalize
506
+ producer_role: python_tool
507
+ consumer_stages: []
508
+ validation_result: reference_only
509
+ blocking_reason: ""
510
+ allowed_decisions:
511
+ - finalize
512
+ - request_human_review
513
+ - block_run
514
+ retry_or_human_review_decision: request_human_review
@@ -0,0 +1,181 @@
1
+ schema_version: multi-agent-brief-orchestrator-contract/v1
2
+ orchestrator:
3
+ role: main_agent
4
+ authority: runtime_controller
5
+ contract_references:
6
+ stage_specs: configs/stage_specs.yaml
7
+ artifact_contracts: configs/artifact_contracts.yaml
8
+ default_policy_pack: configs/policy_packs/default.yaml
9
+ responsibilities:
10
+ - read_workspace_context
11
+ - select_next_stage
12
+ - delegate_specialist_subagent
13
+ - check_expected_artifacts
14
+ - record_decision_summary
15
+ - block_unsafe_progress
16
+ - finalize_after_audit_readiness
17
+ python_layer:
18
+ role: tools_validators_renderers
19
+ examples:
20
+ - init
21
+ - sources_decide
22
+ - doctor
23
+ - inputs_classify
24
+ - audit
25
+ - finalize
26
+ - provenance_build
27
+ - controls_build_switchboard
28
+ - controls_select
29
+ developer_ci_tools:
30
+ - eval_cases
31
+ contracts:
32
+ behavior:
33
+ purpose: define orchestrator and specialist role boundaries
34
+ first_landing: v0.6.0
35
+ process_artifact:
36
+ purpose: define stage readiness and expected artifact categories
37
+ first_landing: v0.6.0_reference_only
38
+ fact_grounding_evidence:
39
+ purpose: keep material statements traceable to supported claims
40
+ first_landing: v0.6.0_reference_only
41
+ quality_audience:
42
+ purpose: keep delivery decisions aligned with reader context
43
+ first_landing: v0.6.0_reference_only
44
+ decision_vocabulary:
45
+ - continue
46
+ - retry_stage
47
+ - delegate_repair
48
+ - request_human_review
49
+ - block_run
50
+ - finalize
51
+ decision_record_fields:
52
+ - decision_id
53
+ - stage_id
54
+ - decision
55
+ - reason_summary
56
+ - input_artifacts
57
+ - output_artifacts
58
+ - validation_result
59
+ - next_allowed_actions
60
+ - created_at
61
+ runtime_surfaces:
62
+ - hermes
63
+ - claude
64
+ - codex
65
+ - codebuddy
66
+ - opencode
67
+ - operator
68
+ - manual
69
+ v060_boundaries:
70
+ implements:
71
+ - shared_orchestrator_authority
72
+ - decision_vocabulary
73
+ - contract_references
74
+ - runtime_role_parity
75
+ deferred:
76
+ - persisted_workflow_state
77
+ - artifact_registry_execution
78
+ - feedback_repair_loop
79
+ - evidence_execution_graph
80
+ - public_safe_evaluation_cases
81
+ v061_boundaries:
82
+ implements:
83
+ - persisted_runtime_state_control_files
84
+ - minimum_artifact_registry_status_check
85
+ - stage_scoped_blocking_summary
86
+ - orchestrator_decision_event_entrypoint
87
+ deferred:
88
+ - feedback_repair_loop
89
+ - material_fact_freshness_target_relevance_gates
90
+ - evidence_execution_graph
91
+ - public_safe_evaluation_cases
92
+ v062_boundaries:
93
+ implements:
94
+ - feedback_issue_handling
95
+ - bounded_repair_planning
96
+ - feedback_event_trace
97
+ - current_stage_feedback_blocking
98
+ deferred:
99
+ - automatic_repair_execution
100
+ - semantic_repair_verification
101
+ - material_fact_freshness_target_relevance_gates
102
+ - evidence_execution_graph
103
+ - public_safe_evaluation_cases
104
+ v063_boundaries:
105
+ implements:
106
+ - deterministic_material_fact_gate
107
+ - deterministic_freshness_gate
108
+ - deterministic_target_relevance_gate
109
+ - quality_gate_report_control_artifact
110
+ - current_stage_quality_gate_blocking
111
+ deferred:
112
+ - automatic_repair_execution
113
+ - semantic_truth_judgment
114
+ - live_market_quote_fetching
115
+ - automatic_source_recrawl
116
+ - evidence_execution_graph
117
+ - public_safe_evaluation_cases
118
+ v064_boundaries:
119
+ implements:
120
+ - packaged_public_safe_evaluation_cases
121
+ - structured_eval_case_action_dispatch
122
+ - fixture_leakage_scanner
123
+ - gates_feedback_runtime_static_regression_cases
124
+ deferred:
125
+ - private_commercial_benchmark_suites
126
+ - llm_as_judge_prose_scoring
127
+ - automatic_repair_execution
128
+ - evidence_execution_graph
129
+ v065_boundaries:
130
+ implements:
131
+ - deterministic_provenance_projection
132
+ - workspace_local_audit_graph
133
+ - provenance_graph_validation
134
+ - provenance_event_trace
135
+ deferred:
136
+ - semantic_truth_verification
137
+ - source_support_graph
138
+ - execution_replay
139
+ - workflow_dag_runtime
140
+ - graph_database_or_query_engine
141
+ - automatic_repair_execution
142
+ v066_boundaries:
143
+ implements:
144
+ - workspace_local_audience_profile
145
+ - per_run_audience_profile_snapshot
146
+ - audience_memory_handoff_context
147
+ - audience_profile_snapshot_event_trace
148
+ deferred:
149
+ - automatic_profile_updates
150
+ - taste_based_runtime_routing
151
+ - audience_memory_artifact_contract
152
+ - provenance_graph_expansion_for_audience_memory
153
+ v067_boundaries:
154
+ implements:
155
+ - orchestrator_control_switchboard
156
+ - deterministic_control_recommendations
157
+ - explicit_control_selection_records
158
+ - human_approval_selection_state
159
+ - control_selection_event_trace
160
+ deferred:
161
+ - automatic_control_execution
162
+ - smart_runtime_router
163
+ - automatic_source_collection
164
+ - automatic_repair_execution
165
+ - friction_store
166
+ - policy_pack_rewrite
167
+ v070_boundaries:
168
+ implements:
169
+ - approved_improvement_ledger
170
+ - deterministic_improvement_memory_projection
171
+ - per_run_improvement_memory_snapshot
172
+ - improvement_memory_handoff_context
173
+ - public_safe_improvement_eval_cases
174
+ deferred:
175
+ - retrieval_memory
176
+ - automatic_repair_execution
177
+ - automatic_prompt_rewriting
178
+ - runtime_specific_guidance_filtering
179
+ - output_quality_improvement_claims
180
+ - friction_store
181
+ - ledger_compaction