agent-lifecycle-kit 2.2.0__tar.gz → 2.3.0__tar.gz

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 (407) hide show
  1. {agent_lifecycle_kit-2.2.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-2.3.0}/PKG-INFO +4 -4
  2. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/README.md +3 -3
  3. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/pyproject.toml +1 -1
  4. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/_version.py +1 -1
  5. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/ownership.py +12 -0
  6. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_observability.py +86 -31
  7. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/observability_parsers.py +8 -0
  8. agent_lifecycle_kit-2.3.0/src/agent_lifecycle/contracts/multi_run_view_schemas.py +114 -0
  9. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/schemas.py +2 -0
  10. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/__init__.py +9 -3
  11. agent_lifecycle_kit-2.3.0/src/agent_lifecycle/reporting/attention.py +267 -0
  12. agent_lifecycle_kit-2.3.0/src/agent_lifecycle/reporting/multi_run.py +469 -0
  13. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0/src/agent_lifecycle_kit.egg-info}/PKG-INFO +4 -4
  14. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle_kit.egg-info/SOURCES.txt +3 -0
  15. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/LICENSE +0 -0
  16. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/NOTICE +0 -0
  17. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/README.md +0 -0
  18. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/manifest.json +0 -0
  19. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt01-planning/oracle.json +0 -0
  20. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt01-planning/task.md +0 -0
  21. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt02-architecture-review/oracle.json +0 -0
  22. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt02-architecture-review/task.md +0 -0
  23. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt03-bug-forensics/oracle.json +0 -0
  24. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt03-bug-forensics/task.md +0 -0
  25. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt04-s1-managed-task/oracle.json +0 -0
  26. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt04-s1-managed-task/task.md +0 -0
  27. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/oracle.json +0 -0
  28. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/task.md +0 -0
  29. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/setup.cfg +0 -0
  30. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/__init__.py +0 -0
  31. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/__main__.py +0 -0
  32. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/__init__.py +0 -0
  33. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/agent_plugin_probe.py +0 -0
  34. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/contracts.py +0 -0
  35. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/env.py +0 -0
  36. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/external_check.py +0 -0
  37. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/launch_execution.py +0 -0
  38. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/launch_preflight.py +0 -0
  39. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/launcher.py +0 -0
  40. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/lifecycle_control.py +0 -0
  41. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/local_launch_profile.py +0 -0
  42. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/planning_launch.py +0 -0
  43. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/planning_session.py +0 -0
  44. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/process.py +0 -0
  45. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/process_capture.py +0 -0
  46. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/process_control.py +0 -0
  47. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/process_groups.py +0 -0
  48. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/process_telemetry.py +0 -0
  49. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/qualification.py +0 -0
  50. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/redaction.py +0 -0
  51. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/session_store.py +0 -0
  52. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/start_input.py +0 -0
  53. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/start_receipts.py +0 -0
  54. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/start_routing.py +0 -0
  55. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/task_intake.py +0 -0
  56. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/unified_start.py +0 -0
  57. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/workflow_bridge.py +0 -0
  58. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/adapter_sessions/worktree_identity.py +0 -0
  59. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/__init__.py +0 -0
  60. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/bug_forensics.py +0 -0
  61. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/domain_language.py +0 -0
  62. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/external_checks.py +0 -0
  63. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/implementation.py +0 -0
  64. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/package.py +0 -0
  65. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/proof_chain.py +0 -0
  66. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/proof_findings.py +0 -0
  67. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/proof_integrity.py +0 -0
  68. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/audit/review_verdict.py +0 -0
  69. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/__init__.py +0 -0
  70. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/comparison.py +0 -0
  71. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/contracts.py +0 -0
  72. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/evaluator.py +0 -0
  73. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/oracles.py +0 -0
  74. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/qualification.py +0 -0
  75. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/reporting.py +0 -0
  76. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/benchmarks/stratification.py +0 -0
  77. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/changesets/__init__.py +0 -0
  78. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/changesets/git.py +0 -0
  79. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/changesets/snapshot.py +0 -0
  80. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/__init__.py +0 -0
  81. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/adapter.py +0 -0
  82. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/benchmarks.py +0 -0
  83. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/command_registry.py +0 -0
  84. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch.py +0 -0
  85. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_adapters.py +0 -0
  86. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_contracts.py +0 -0
  87. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_lifecycle.py +0 -0
  88. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_metrics.py +0 -0
  89. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_planning.py +0 -0
  90. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/dispatch_research.py +0 -0
  91. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/errors.py +0 -0
  92. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/followup.py +0 -0
  93. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/host_launch.py +0 -0
  94. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/lifecycle_parsers.py +0 -0
  95. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/main.py +0 -0
  96. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/metrics_parser.py +0 -0
  97. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/parsers.py +0 -0
  98. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/planning_parsers.py +0 -0
  99. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/policy.py +0 -0
  100. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/progress_hooks.py +0 -0
  101. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/project.py +0 -0
  102. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/research.py +0 -0
  103. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/start.py +0 -0
  104. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/strategy.py +0 -0
  105. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/cli/worktree.py +0 -0
  106. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/compiler/__init__.py +0 -0
  107. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/compiler/output_contract.py +0 -0
  108. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/compiler/small_model_packets.py +0 -0
  109. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/compiler/task_packets.py +0 -0
  110. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/__init__.py +0 -0
  111. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/checkpoint_store.py +0 -0
  112. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/checkpoints.py +0 -0
  113. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/episode_retrieval.py +0 -0
  114. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/external_memory.py +0 -0
  115. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/profiles.py +0 -0
  116. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/rendering.py +0 -0
  117. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/context/thread_bridge_context.py +0 -0
  118. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/__init__.py +0 -0
  119. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/adapter_contract_schemas.py +0 -0
  120. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/adapter_event_schemas.py +0 -0
  121. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/adapter_session_schemas.py +0 -0
  122. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/adapter_task_schemas.py +0 -0
  123. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/agent_plugin_qualification_schemas.py +0 -0
  124. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/audit_optimization_schemas.py +0 -0
  125. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/audit_schemas.py +0 -0
  126. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/benchmark_schemas.py +0 -0
  127. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/bug_forensics_schemas.py +0 -0
  128. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/canonical.py +0 -0
  129. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/compatibility.py +0 -0
  130. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/context_checkpoint_schemas.py +0 -0
  131. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/context_model_schemas.py +0 -0
  132. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/core_schemas.py +0 -0
  133. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/cross_check_schemas.py +0 -0
  134. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/domain_language.py +0 -0
  135. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/domain_language_schemas.py +0 -0
  136. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/errors.py +0 -0
  137. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/evidence_import_schemas.py +0 -0
  138. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/execution_strategy_schemas.py +0 -0
  139. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/external_check_schemas.py +0 -0
  140. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/finding_check_schemas.py +0 -0
  141. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/goal_validation.py +0 -0
  142. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/host_capability_schemas.py +0 -0
  143. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/implementation_audit_validation.py +0 -0
  144. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/import_dialect_schemas.py +0 -0
  145. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/independent_evidence_schemas.py +0 -0
  146. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/launch_qualification.py +0 -0
  147. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/legacy_runner_schemas.py +0 -0
  148. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/lifecycle_action_catalog.py +0 -0
  149. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/lifecycle_control_definitions.py +0 -0
  150. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/lifecycle_control_schemas.py +0 -0
  151. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/lifecycle_control_validation.py +0 -0
  152. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/local_launch_validation.py +0 -0
  153. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/metric_schemas.py +0 -0
  154. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/ownership_paths.py +0 -0
  155. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/paths.py +0 -0
  156. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/performance_limits.py +0 -0
  157. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/persistence.py +0 -0
  158. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/plan_contract_schemas.py +0 -0
  159. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/plan_delta_schemas.py +0 -0
  160. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/plan_manifest_schemas.py +0 -0
  161. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/planning_launch_schemas.py +0 -0
  162. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/policy_schemas.py +0 -0
  163. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/process_execution_schemas.py +0 -0
  164. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/process_redaction.py +0 -0
  165. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/progress_bridge_schemas.py +0 -0
  166. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/progress_hook_schemas.py +0 -0
  167. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/project_profile_preset_schemas.py +0 -0
  168. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/project_profile_schemas.py +0 -0
  169. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/proof_integrity_schemas.py +0 -0
  170. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/proof_validation.py +0 -0
  171. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/public_locators.py +0 -0
  172. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/quality_modes.py +0 -0
  173. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/redaction.py +0 -0
  174. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/release_contract_schemas.py +0 -0
  175. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/research_evidence_schemas.py +0 -0
  176. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/review_mesh_recommendation_schemas.py +0 -0
  177. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/review_mesh_schemas.py +0 -0
  178. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/review_quality_schemas.py +0 -0
  179. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/review_verdict.py +0 -0
  180. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/runner_schemas.py +0 -0
  181. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/runner_worktree_schemas.py +0 -0
  182. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/sandbox_schemas.py +0 -0
  183. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/schema_builders.py +0 -0
  184. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/status_goal_schemas.py +0 -0
  185. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/structured_result_schemas.py +0 -0
  186. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/task_template_schemas.py +0 -0
  187. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/thread_bridge_schema_definitions.py +0 -0
  188. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/thread_bridge_schemas.py +0 -0
  189. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/thread_bridge_validation.py +0 -0
  190. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/token_estimation.py +0 -0
  191. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/usage_export_schemas.py +0 -0
  192. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/validation.py +0 -0
  193. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/workflow_artifact_schemas.py +0 -0
  194. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/workflow_authorization_schemas.py +0 -0
  195. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/workflow_run_schemas.py +0 -0
  196. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/contracts/workflow_state_schemas.py +0 -0
  197. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/__init__.py +0 -0
  198. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/external-checks/declared-dependencies.v1.json +0 -0
  199. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/external-checks/import-boundaries.v1.json +0 -0
  200. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/external-checks/module-dependencies.v1.json +0 -0
  201. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/lifecycle-baselines.v1.json +0 -0
  202. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/model-routing-profile.v1.json +0 -0
  203. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/feature-implementation.v1.json +0 -0
  204. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/quick-change.v1.json +0 -0
  205. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/research-review.v1.json +0 -0
  206. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/risk-execution-policy.v1.json +0 -0
  207. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/data/profiles/small-context-profile.v1.json +0 -0
  208. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/diagnostics/__init__.py +0 -0
  209. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/diagnostics/bundles.py +0 -0
  210. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/diagnostics/installation_catalog.py +0 -0
  211. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/diagnostics/readiness.py +0 -0
  212. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/evidence_index/__init__.py +0 -0
  213. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/evidence_index/core.py +0 -0
  214. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/evidence_index/episode_index.py +0 -0
  215. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/evidence_index/external_context.py +0 -0
  216. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/followup/__init__.py +0 -0
  217. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/followup/records.py +0 -0
  218. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/freeze/__init__.py +0 -0
  219. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/freeze/locks.py +0 -0
  220. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/freeze/package_integrity.py +0 -0
  221. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/goal/__init__.py +0 -0
  222. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/goal/records.py +0 -0
  223. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/goal/view.py +0 -0
  224. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/__init__.py +0 -0
  225. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/acp_capability.py +0 -0
  226. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/agent_plugin_qualification.py +0 -0
  227. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/capabilities.py +0 -0
  228. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/context_events.py +0 -0
  229. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/contracts.py +0 -0
  230. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/event_capture.py +0 -0
  231. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/events.py +0 -0
  232. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection.py +0 -0
  233. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_claude.py +0 -0
  234. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_codex.py +0 -0
  235. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_common.py +0 -0
  236. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_cursor.py +0 -0
  237. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_gemini_cli.py +0 -0
  238. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_hermes.py +0 -0
  239. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_kimi_code.py +0 -0
  240. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_opencode.py +0 -0
  241. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_profile.py +0 -0
  242. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/inspection_qwen_code.py +0 -0
  243. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/lifecycle_control.py +0 -0
  244. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/lifecycle_control_qualification.py +0 -0
  245. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/lifecycle_gate.py +0 -0
  246. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/process_port.py +0 -0
  247. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/receipts.py +0 -0
  248. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/sandbox_receipts.py +0 -0
  249. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/scaffold.py +0 -0
  250. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/structured_results.py +0 -0
  251. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/thread_bridge.py +0 -0
  252. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/usage_normalizers.py +0 -0
  253. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/host_protocol/validation.py +0 -0
  254. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/__init__.py +0 -0
  255. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/agentskills_profile.py +0 -0
  256. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/bmad_profile.py +0 -0
  257. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/constitution_adr.py +0 -0
  258. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/dialect_profiles.py +0 -0
  259. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/external_agent.py +0 -0
  260. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/external_dialects.py +0 -0
  261. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/external_workflow.py +0 -0
  262. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/multi_markdown.py +0 -0
  263. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/openspec_profile.py +0 -0
  264. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/planning.py +0 -0
  265. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/spec_kit_profile.py +0 -0
  266. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/imports/spec_kitty_profile.py +0 -0
  267. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/__init__.py +0 -0
  268. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/audit_optimization.py +0 -0
  269. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/audit_samples.py +0 -0
  270. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/cost_collection.py +0 -0
  271. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/costs.py +0 -0
  272. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/outcome_index.py +0 -0
  273. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/phase_resources.py +0 -0
  274. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/recommendations.py +0 -0
  275. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/regression_signals.py +0 -0
  276. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/metrics/usage_export.py +0 -0
  277. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/migration/__init__.py +0 -0
  278. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/migration/legacy_runner.py +0 -0
  279. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/model_routing/__init__.py +0 -0
  280. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/model_routing/profiles.py +0 -0
  281. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/model_routing/receipts.py +0 -0
  282. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/model_routing/resolver.py +0 -0
  283. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/__init__.py +0 -0
  284. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/__main__.py +0 -0
  285. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/authority.py +0 -0
  286. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/canonical.py +0 -0
  287. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/cli.py +0 -0
  288. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/ed25519.py +0 -0
  289. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/errors.py +0 -0
  290. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/gate.py +0 -0
  291. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/git_objects.py +0 -0
  292. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/matching.py +0 -0
  293. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/paths.py +0 -0
  294. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/policy.py +0 -0
  295. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/receipt.py +0 -0
  296. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/scanner.py +0 -0
  297. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/neutrality/test_runner.py +0 -0
  298. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/__init__.py +0 -0
  299. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/acceptance_markdown.py +0 -0
  300. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/completeness.py +0 -0
  301. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/continuity.py +0 -0
  302. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/deltas.py +0 -0
  303. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/manifest_contract.py +0 -0
  304. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/task_compatibility.py +0 -0
  305. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/templates.py +0 -0
  306. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/tiering.py +0 -0
  307. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/traceability.py +0 -0
  308. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/validation.py +0 -0
  309. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/planning/verification.py +0 -0
  310. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/__init__.py +0 -0
  311. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/adaptive_lifecycle.py +0 -0
  312. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/apply.py +0 -0
  313. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/execution_strategy.py +0 -0
  314. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/proposals.py +0 -0
  315. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/quality_floor.py +0 -0
  316. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/risk_execution.py +0 -0
  317. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/runtime_receipts.py +0 -0
  318. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/policy/thread_bridge.py +0 -0
  319. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/__init__.py +0 -0
  320. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/domain_language.py +0 -0
  321. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/guidance.py +0 -0
  322. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/merge.py +0 -0
  323. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/presets.py +0 -0
  324. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/principles.py +0 -0
  325. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/project/profile.py +0 -0
  326. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/py.typed +0 -0
  327. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/__init__.py +0 -0
  328. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/bug_forensics.py +0 -0
  329. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/bug_forensics_advisor.py +0 -0
  330. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/bug_forensics_recipes.py +0 -0
  331. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/cross_check.py +0 -0
  332. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/external_checks.py +0 -0
  333. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/failure_classification.py +0 -0
  334. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/quality/packs.py +0 -0
  335. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/change_summary.py +0 -0
  336. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/event_feed.py +0 -0
  337. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/execution_resources.py +0 -0
  338. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/progress_bridge.py +0 -0
  339. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/progress_hooks.py +0 -0
  340. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/progress_terminal.py +0 -0
  341. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/progress_view.py +0 -0
  342. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/status_view.py +0 -0
  343. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/reporting/usage_export.py +0 -0
  344. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/research/__init__.py +0 -0
  345. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/research/evidence.py +0 -0
  346. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/research/provenance.py +0 -0
  347. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/research/validation.py +0 -0
  348. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/resources.py +0 -0
  349. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review/__init__.py +0 -0
  350. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review/validation.py +0 -0
  351. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/__init__.py +0 -0
  352. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/assignments.py +0 -0
  353. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/contracts.py +0 -0
  354. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/independence.py +0 -0
  355. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/operator_templates.py +0 -0
  356. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/quorum.py +0 -0
  357. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/recommendation.py +0 -0
  358. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/results.py +0 -0
  359. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/review_mesh/synthesis.py +0 -0
  360. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/runner/__init__.py +0 -0
  361. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/runner/core.py +0 -0
  362. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/runner/sandbox_receipts.py +0 -0
  363. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/specification/__init__.py +0 -0
  364. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/specification/completion_check.py +0 -0
  365. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/specification/completion_gate.py +0 -0
  366. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/specification/completion_signal.py +0 -0
  367. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/specification/validation.py +0 -0
  368. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/__init__.py +0 -0
  369. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/artifacts.py +0 -0
  370. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/authorization.py +0 -0
  371. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/budget_decisions.py +0 -0
  372. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/budget_policy.py +0 -0
  373. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/budget_receipts.py +0 -0
  374. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/bug_forensics_gates.py +0 -0
  375. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/checkpoint_gate.py +0 -0
  376. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/controller.py +0 -0
  377. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/events.py +0 -0
  378. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/final_proof_integrity.py +0 -0
  379. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/finalization.py +0 -0
  380. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/gates.py +0 -0
  381. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/implementation_audit_gate.py +0 -0
  382. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/initialization.py +0 -0
  383. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/leases.py +0 -0
  384. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/lineage.py +0 -0
  385. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/managed_runner.py +0 -0
  386. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/model_usage.py +0 -0
  387. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/next_action.py +0 -0
  388. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/operation_kernel.py +0 -0
  389. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/plan_adoption.py +0 -0
  390. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/query.py +0 -0
  391. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/review_mesh_gate.py +0 -0
  392. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/reviews.py +0 -0
  393. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/risk_execution_gate.py +0 -0
  394. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/run.py +0 -0
  395. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/run_transitions.py +0 -0
  396. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/sandbox_policy.py +0 -0
  397. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/sandbox_receipts.py +0 -0
  398. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/selectors.py +0 -0
  399. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/state.py +0 -0
  400. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/task_outcomes.py +0 -0
  401. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/task_transitions.py +0 -0
  402. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/workflow/transition_contract.py +0 -0
  403. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/worktree/__init__.py +0 -0
  404. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle/worktree/isolation.py +0 -0
  405. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle_kit.egg-info/dependency_links.txt +0 -0
  406. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle_kit.egg-info/entry_points.txt +0 -0
  407. {agent_lifecycle_kit-2.2.0 → agent_lifecycle_kit-2.3.0}/src/agent_lifecycle_kit.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-lifecycle-kit
3
- Version: 2.2.0
3
+ Version: 2.3.0
4
4
  Summary: Provider-neutral lifecycle control layer that helps coding agents plan, execute, validate, and prove software tasks to completion.
5
5
  Author: Agent Lifecycle Kit contributors
6
6
  License: Apache-2.0
@@ -43,7 +43,7 @@ ALK provides a verifiable finish for external-agent work with proportionate cont
43
43
  ## Quick start
44
44
  Start with [install ALK and make the first run](docs/guides/install-and-first-run.md).
45
45
 
46
- It includes macOS, Linux and Windows instructions, Python 3.11-3.14, [PyPI](https://pypi.org/project/agent-lifecycle-kit/) installation with `python -m pip install agent-lifecycle-kit==2.2.0`, and common `agent-lifecycle version` errors.
46
+ It includes macOS, Linux and Windows instructions, Python 3.11-3.14, [PyPI](https://pypi.org/project/agent-lifecycle-kit/) installation with `python -m pip install agent-lifecycle-kit==2.3.0`, and common `agent-lifecycle version` errors.
47
47
 
48
48
  For a quick start, run:
49
49
 
@@ -68,7 +68,7 @@ agent-lifecycle start --adapter <adapter-id> --file task.md
68
68
  - The boundaries of [planning-only launch](docs/reference/planning-only-launch.md) and [frozen-task launch through a verified profile](docs/reference/qualified-host-launch.md) are documented in the reference. Shipped planning profiles remain candidates with safe failure until the corresponding profile is verified.
69
69
  - The [system architecture](docs/architecture/system-architecture.md) page explains how the project is organized, and [project comparison](docs/reference/project-comparison.md) shows how it differs from similar tools.
70
70
  - Multiple-agent boundaries, workflow configuration, model choice, prompts, timeouts and retries are described in [workflow customization and execution controls](docs/reference/workflow-customization.md).
71
- - Create a local project profile with `agent-lifecycle project profile init`; see [project workflow profile](docs/reference/project-workflow-profile.md). Explain the selected profile, plan constraints and adapter capability lineage with [effective configuration](docs/reference/effective-configuration.md), [structured result qualification](docs/reference/structured-result-qualification.md) and [adapter action evidence](docs/reference/adapter-action-evidence.md). Add optional project-owned architecture and dependency evidence with [external verification checks](docs/reference/external-verification-checks.md), or track bounded terminology with [project domain language](docs/reference/project-domain-language.md).
71
+ - Create a local project profile with `agent-lifecycle project profile init`; see [project workflow profile](docs/reference/project-workflow-profile.md). Explain the selected profile, plan constraints and adapter capability lineage with [effective configuration](docs/reference/effective-configuration.md), [structured result qualification](docs/reference/structured-result-qualification.md) and [adapter action evidence](docs/reference/adapter-action-evidence.md). Add optional project-owned architecture and dependency evidence with [external verification checks](docs/reference/external-verification-checks.md), track bounded terminology with [project domain language](docs/reference/project-domain-language.md), or coordinate several runs with the read-only [multi-run attention view](docs/reference/multi-run-attention-view.md).
72
72
  - For long sessions, use [context checkpoints and compaction recovery](docs/reference/context-checkpoints.md). They preserve a bounded local continuation package without changing plan authority.
73
73
  ## What it gives you
74
74
  - A finish-oriented lifecycle: plan, execute, review, and prove the result.
@@ -195,7 +195,7 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
195
195
 
196
196
  - Start: [English documentation](docs/README.md), [Русская документация](docs/ru/README.md), [Install](docs/guides/install-and-first-run.md), [Quickstart](docs/guides/quickstart.md), [Beginner and advanced workflows](docs/guides/beginner-and-advanced-workflows.md), [Commands by task](docs/guides/commands-by-task.md), [Research workflow](docs/guides/research-workflow.md), [Lifecycle task scenarios](docs/guides/lifecycle-cookbook.md), and [Code review workflows](docs/guides/code-review-workflows.md).
197
197
  - Planning and adapters: [Issue to specification drafts](docs/guides/issue-to-spec.md), [Adapter install](docs/adapters/install.md), and [Adapter support matrix](docs/adapters/support-matrix.md).
198
- - Reference: [System architecture](docs/architecture/system-architecture.md), [workflow customization and execution controls](docs/reference/workflow-customization.md), [execution strategy](docs/reference/execution-strategy.md), [CLI reference](docs/reference/cli.md), [External verification checks](docs/reference/external-verification-checks.md), [Project domain language](docs/reference/project-domain-language.md), [Plan verification](docs/reference/plan-verification.md), [Research evidence](docs/reference/research-evidence.md), [Public locators and redaction](docs/reference/public-locators-and-redaction.md), [Finding-to-check adoption](docs/reference/finding-check-adoption.md), [Source of truth](docs/reference/source-of-truth.md), [Managed lifecycle runner](docs/reference/managed-lifecycle-runner.md), [Managed adapter sessions](docs/reference/managed-adapter-sessions.md), [Portable Agent Plugins](docs/reference/agent-plugins.md), [Plugin publication](docs/reference/plugin-publication.md), [Implementation audit](docs/reference/implementation-audit.md), [Plan completeness](docs/reference/plan-completeness.md), [Public contracts](docs/reference/public-contracts.md), and [Readiness diagnostics](docs/reference/readiness-diagnostics.md).
198
+ - Reference: [System architecture](docs/architecture/system-architecture.md), [workflow customization and execution controls](docs/reference/workflow-customization.md), [execution strategy](docs/reference/execution-strategy.md), [CLI reference](docs/reference/cli.md), [External verification checks](docs/reference/external-verification-checks.md), [Project domain language](docs/reference/project-domain-language.md), [Multi-run attention view](docs/reference/multi-run-attention-view.md), [Plan verification](docs/reference/plan-verification.md), [Research evidence](docs/reference/research-evidence.md), [Public locators and redaction](docs/reference/public-locators-and-redaction.md), [Finding-to-check adoption](docs/reference/finding-check-adoption.md), [Source of truth](docs/reference/source-of-truth.md), [Managed lifecycle runner](docs/reference/managed-lifecycle-runner.md), [Managed adapter sessions](docs/reference/managed-adapter-sessions.md), [Portable Agent Plugins](docs/reference/agent-plugins.md), [Plugin publication](docs/reference/plugin-publication.md), [Implementation audit](docs/reference/implementation-audit.md), [Plan completeness](docs/reference/plan-completeness.md), [Public contracts](docs/reference/public-contracts.md), and [Readiness diagnostics](docs/reference/readiness-diagnostics.md).
199
199
  - Quality and resources: [Reference-task evaluation](docs/reference/reference-task-evaluation.md), [model routing](docs/reference/model-routing.md), [quality-cost learning](docs/reference/quality-cost-learning.md), [performance and resource budgets](docs/reference/performance-and-resource-budgets.md), [lifecycle cost accounting](docs/reference/lifecycle-cost.md), [host-local token accounting](docs/reference/host-local-token-accounting.md), [process execution observability](docs/reference/process-execution-observability.md), [Usage export](docs/reference/usage-export.md), and [Evidence integrity](docs/reference/evidence-integrity.md).
200
200
  - Profiles and operations: [Project workflow presets](docs/reference/workflow-presets.md), [Project workflow profile](docs/reference/project-workflow-profile.md), [Read-only status views](docs/reference/read-only-status-view.md), [Adapter progress bridge](docs/reference/automatic-progress-bridge.md), [Sandbox boundaries](docs/reference/sandbox-boundaries.md), [Import mappers](docs/reference/import-mappers.md), [Episode retrieval](docs/reference/episode-retrieval.md), [Runner migration](docs/guides/runner-migration-2.md), [Runner recovery records](docs/reference/runner-recovery.md), [Cross-check profile](docs/reference/cross-check-profile.md), [Review Mesh](docs/reference/review-mesh.md), [Risk-bound independent verification](docs/reference/risk-bound-independent-verification.md), [Bug Forensics profile](docs/reference/bug-forensics.md), and [Bug Forensics context budget](docs/reference/bug-forensics-context-budget.md).
201
201
  - Release assets: [Task templates](templates/tasks/README.md), [Neutrality scanning](docs/reference/neutrality.md), and [Release security](docs/security/release-security.md).
@@ -21,7 +21,7 @@ ALK provides a verifiable finish for external-agent work with proportionate cont
21
21
  ## Quick start
22
22
  Start with [install ALK and make the first run](docs/guides/install-and-first-run.md).
23
23
 
24
- It includes macOS, Linux and Windows instructions, Python 3.11-3.14, [PyPI](https://pypi.org/project/agent-lifecycle-kit/) installation with `python -m pip install agent-lifecycle-kit==2.2.0`, and common `agent-lifecycle version` errors.
24
+ It includes macOS, Linux and Windows instructions, Python 3.11-3.14, [PyPI](https://pypi.org/project/agent-lifecycle-kit/) installation with `python -m pip install agent-lifecycle-kit==2.3.0`, and common `agent-lifecycle version` errors.
25
25
 
26
26
  For a quick start, run:
27
27
 
@@ -46,7 +46,7 @@ agent-lifecycle start --adapter <adapter-id> --file task.md
46
46
  - The boundaries of [planning-only launch](docs/reference/planning-only-launch.md) and [frozen-task launch through a verified profile](docs/reference/qualified-host-launch.md) are documented in the reference. Shipped planning profiles remain candidates with safe failure until the corresponding profile is verified.
47
47
  - The [system architecture](docs/architecture/system-architecture.md) page explains how the project is organized, and [project comparison](docs/reference/project-comparison.md) shows how it differs from similar tools.
48
48
  - Multiple-agent boundaries, workflow configuration, model choice, prompts, timeouts and retries are described in [workflow customization and execution controls](docs/reference/workflow-customization.md).
49
- - Create a local project profile with `agent-lifecycle project profile init`; see [project workflow profile](docs/reference/project-workflow-profile.md). Explain the selected profile, plan constraints and adapter capability lineage with [effective configuration](docs/reference/effective-configuration.md), [structured result qualification](docs/reference/structured-result-qualification.md) and [adapter action evidence](docs/reference/adapter-action-evidence.md). Add optional project-owned architecture and dependency evidence with [external verification checks](docs/reference/external-verification-checks.md), or track bounded terminology with [project domain language](docs/reference/project-domain-language.md).
49
+ - Create a local project profile with `agent-lifecycle project profile init`; see [project workflow profile](docs/reference/project-workflow-profile.md). Explain the selected profile, plan constraints and adapter capability lineage with [effective configuration](docs/reference/effective-configuration.md), [structured result qualification](docs/reference/structured-result-qualification.md) and [adapter action evidence](docs/reference/adapter-action-evidence.md). Add optional project-owned architecture and dependency evidence with [external verification checks](docs/reference/external-verification-checks.md), track bounded terminology with [project domain language](docs/reference/project-domain-language.md), or coordinate several runs with the read-only [multi-run attention view](docs/reference/multi-run-attention-view.md).
50
50
  - For long sessions, use [context checkpoints and compaction recovery](docs/reference/context-checkpoints.md). They preserve a bounded local continuation package without changing plan authority.
51
51
  ## What it gives you
52
52
  - A finish-oriented lifecycle: plan, execute, review, and prove the result.
@@ -173,7 +173,7 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
173
173
 
174
174
  - Start: [English documentation](docs/README.md), [Русская документация](docs/ru/README.md), [Install](docs/guides/install-and-first-run.md), [Quickstart](docs/guides/quickstart.md), [Beginner and advanced workflows](docs/guides/beginner-and-advanced-workflows.md), [Commands by task](docs/guides/commands-by-task.md), [Research workflow](docs/guides/research-workflow.md), [Lifecycle task scenarios](docs/guides/lifecycle-cookbook.md), and [Code review workflows](docs/guides/code-review-workflows.md).
175
175
  - Planning and adapters: [Issue to specification drafts](docs/guides/issue-to-spec.md), [Adapter install](docs/adapters/install.md), and [Adapter support matrix](docs/adapters/support-matrix.md).
176
- - Reference: [System architecture](docs/architecture/system-architecture.md), [workflow customization and execution controls](docs/reference/workflow-customization.md), [execution strategy](docs/reference/execution-strategy.md), [CLI reference](docs/reference/cli.md), [External verification checks](docs/reference/external-verification-checks.md), [Project domain language](docs/reference/project-domain-language.md), [Plan verification](docs/reference/plan-verification.md), [Research evidence](docs/reference/research-evidence.md), [Public locators and redaction](docs/reference/public-locators-and-redaction.md), [Finding-to-check adoption](docs/reference/finding-check-adoption.md), [Source of truth](docs/reference/source-of-truth.md), [Managed lifecycle runner](docs/reference/managed-lifecycle-runner.md), [Managed adapter sessions](docs/reference/managed-adapter-sessions.md), [Portable Agent Plugins](docs/reference/agent-plugins.md), [Plugin publication](docs/reference/plugin-publication.md), [Implementation audit](docs/reference/implementation-audit.md), [Plan completeness](docs/reference/plan-completeness.md), [Public contracts](docs/reference/public-contracts.md), and [Readiness diagnostics](docs/reference/readiness-diagnostics.md).
176
+ - Reference: [System architecture](docs/architecture/system-architecture.md), [workflow customization and execution controls](docs/reference/workflow-customization.md), [execution strategy](docs/reference/execution-strategy.md), [CLI reference](docs/reference/cli.md), [External verification checks](docs/reference/external-verification-checks.md), [Project domain language](docs/reference/project-domain-language.md), [Multi-run attention view](docs/reference/multi-run-attention-view.md), [Plan verification](docs/reference/plan-verification.md), [Research evidence](docs/reference/research-evidence.md), [Public locators and redaction](docs/reference/public-locators-and-redaction.md), [Finding-to-check adoption](docs/reference/finding-check-adoption.md), [Source of truth](docs/reference/source-of-truth.md), [Managed lifecycle runner](docs/reference/managed-lifecycle-runner.md), [Managed adapter sessions](docs/reference/managed-adapter-sessions.md), [Portable Agent Plugins](docs/reference/agent-plugins.md), [Plugin publication](docs/reference/plugin-publication.md), [Implementation audit](docs/reference/implementation-audit.md), [Plan completeness](docs/reference/plan-completeness.md), [Public contracts](docs/reference/public-contracts.md), and [Readiness diagnostics](docs/reference/readiness-diagnostics.md).
177
177
  - Quality and resources: [Reference-task evaluation](docs/reference/reference-task-evaluation.md), [model routing](docs/reference/model-routing.md), [quality-cost learning](docs/reference/quality-cost-learning.md), [performance and resource budgets](docs/reference/performance-and-resource-budgets.md), [lifecycle cost accounting](docs/reference/lifecycle-cost.md), [host-local token accounting](docs/reference/host-local-token-accounting.md), [process execution observability](docs/reference/process-execution-observability.md), [Usage export](docs/reference/usage-export.md), and [Evidence integrity](docs/reference/evidence-integrity.md).
178
178
  - Profiles and operations: [Project workflow presets](docs/reference/workflow-presets.md), [Project workflow profile](docs/reference/project-workflow-profile.md), [Read-only status views](docs/reference/read-only-status-view.md), [Adapter progress bridge](docs/reference/automatic-progress-bridge.md), [Sandbox boundaries](docs/reference/sandbox-boundaries.md), [Import mappers](docs/reference/import-mappers.md), [Episode retrieval](docs/reference/episode-retrieval.md), [Runner migration](docs/guides/runner-migration-2.md), [Runner recovery records](docs/reference/runner-recovery.md), [Cross-check profile](docs/reference/cross-check-profile.md), [Review Mesh](docs/reference/review-mesh.md), [Risk-bound independent verification](docs/reference/risk-bound-independent-verification.md), [Bug Forensics profile](docs/reference/bug-forensics.md), and [Bug Forensics context budget](docs/reference/bug-forensics-context-budget.md).
179
179
  - Release assets: [Task templates](templates/tasks/README.md), [Neutrality scanning](docs/reference/neutrality.md), and [Release security](docs/security/release-security.md).
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "agent-lifecycle-kit"
7
- version = "2.2.0"
7
+ version = "2.3.0"
8
8
  description = "Provider-neutral lifecycle control layer that helps coding agents plan, execute, validate, and prove software tasks to completion."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11,<3.15"
@@ -1,3 +1,3 @@
1
1
  """Package version."""
2
2
 
3
- __version__ = "2.2.0"
3
+ __version__ = "2.3.0"
@@ -53,6 +53,18 @@ def report_has_category(report: dict[str, Any], categories: set[str]) -> bool:
53
53
  return any(entry.get("category") in categories for entry in report.get("entries", []))
54
54
 
55
55
 
56
+ def declared_ownership_paths(manifest: dict[str, Any]) -> list[str]:
57
+ """Return literal workstream ownership paths for read-only projections."""
58
+
59
+ classifiers = _classifiers(manifest, None)
60
+ paths = {
61
+ path
62
+ for roots in classifiers["workstreams"].values()
63
+ for path in roots
64
+ }
65
+ return sorted(paths)
66
+
67
+
56
68
  def _classifiers(manifest: dict[str, Any], manifest_path: Path | None) -> dict[str, Any]:
57
69
  package_value = manifest.get("package")
58
70
  package = package_value if isinstance(package_value, dict) else {}
@@ -3,9 +3,11 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  import argparse
6
+ from datetime import UTC, datetime
6
7
  from pathlib import Path
7
8
  from typing import Any
8
9
 
10
+ from agent_lifecycle.cli.dispatch_metrics import _dispatch_execution_report
9
11
  from agent_lifecycle.context import check_context, load_context_profile, render_context
10
12
  from agent_lifecycle.context.checkpoint_store import (
11
13
  restore_context_checkpoint,
@@ -54,7 +56,6 @@ from agent_lifecycle.metrics.audit_optimization import (
54
56
  validate_audit_optimization_report,
55
57
  )
56
58
  from agent_lifecycle.metrics.audit_samples import build_audit_samples
57
- from agent_lifecycle.cli.dispatch_metrics import _dispatch_execution_report
58
59
  from agent_lifecycle.model_routing import (
59
60
  resolve_model_route,
60
61
  validate_host_model_profile,
@@ -70,6 +71,7 @@ from agent_lifecycle.reporting import (
70
71
  build_change_summary_receipt,
71
72
  build_lifecycle_progress_view,
72
73
  build_lifecycle_progress_watch,
74
+ build_multi_run_attention_view,
73
75
  build_progress_bridge_receipt,
74
76
  build_status_view,
75
77
  build_workflow_event_feed,
@@ -127,7 +129,8 @@ def _dispatch_thread(args: argparse.Namespace) -> dict[str, Any]:
127
129
  "thread request and receipt lineage validation failed",
128
130
  {"validation": validation},
129
131
  )
130
- limits = request.get("limits") if isinstance(request.get("limits"), dict) else {}
132
+ raw_limits = request.get("limits")
133
+ limits: dict[str, Any] = raw_limits if isinstance(raw_limits, dict) else {}
131
134
  imported = prepare_thread_context_import(
132
135
  operation_id=request["operationId"],
133
136
  source_receipt_digest=receipt["receiptDigest"],
@@ -181,6 +184,18 @@ def _dispatch_report(args: argparse.Namespace) -> dict[str, Any] | str:
181
184
  if args.out:
182
185
  write_json_create(Path(args.out), payload)
183
186
  return payload
187
+ if args.report_command in {"multi-run", "attention"}:
188
+ payload = build_multi_run_attention_view(
189
+ project_root=Path(args.project_root),
190
+ run_roots=[Path(item) for item in args.run_root],
191
+ max_runs=args.max_runs,
192
+ max_bytes_per_run=args.max_bytes_per_run,
193
+ stale_after_seconds=args.stale_after_seconds,
194
+ now=_parse_report_time(args.now),
195
+ )
196
+ if args.out:
197
+ write_json_create(Path(args.out), payload)
198
+ return payload
184
199
  if args.report_command == "progress":
185
200
  if args.watch:
186
201
  payload = build_lifecycle_progress_watch(
@@ -215,6 +230,18 @@ def _dispatch_report(args: argparse.Namespace) -> dict[str, Any] | str:
215
230
  raise LifecycleError("command-not-implemented", "report command is not implemented")
216
231
 
217
232
 
233
+ def _parse_report_time(value: str | None) -> datetime | None:
234
+ if value is None:
235
+ return None
236
+ try:
237
+ parsed = datetime.fromisoformat(value.replace("Z", "+00:00"))
238
+ except ValueError as exc:
239
+ raise LifecycleError("multi-run-invalid-time", "--now must be an ISO-8601 timestamp") from exc
240
+ if parsed.tzinfo is None:
241
+ return parsed.replace(tzinfo=UTC)
242
+ return parsed.astimezone(UTC)
243
+
244
+
218
245
  def _dispatch_context(args: argparse.Namespace) -> dict[str, Any]:
219
246
  if args.context_command == "profile-check":
220
247
  return load_context_profile(Path(args.profile))
@@ -328,7 +355,10 @@ def _dispatch_context_checkpoint(args: argparse.Namespace) -> dict[str, Any]:
328
355
  def _require_checkpoint_output_root(root: Path) -> None:
329
356
  resolved = root.resolve()
330
357
  if ".alk" not in resolved.parts or not resolved.name == "checkpoints":
331
- raise LifecycleError("context-checkpoint-output-root-invalid", "checkpoint output must remain in a .alk/context/checkpoints directory")
358
+ raise LifecycleError(
359
+ "context-checkpoint-output-root-invalid",
360
+ "checkpoint output must remain in a .alk/context/checkpoints directory",
361
+ )
332
362
 
333
363
 
334
364
  def _dispatch_goal(args: argparse.Namespace) -> dict[str, Any] | str:
@@ -383,12 +413,20 @@ def _dispatch_model(args: argparse.Namespace) -> dict[str, Any]:
383
413
  return validate_model_routing_profile(profile)
384
414
  if args.model_command == "route":
385
415
  routing_profile = read_json_object(Path(args.profile), label="model routing profile")
386
- host_profile = read_json_object(Path(args.host_profile), label="host model profile") if args.host_profile else None
416
+ host_profile = (
417
+ read_json_object(Path(args.host_profile), label="host model profile")
418
+ if args.host_profile
419
+ else None
420
+ )
387
421
  request = read_json_object(Path(args.request), label="model route request")
388
422
  return resolve_model_route(request, routing_profile, host_profile=host_profile)
389
423
  if args.model_command == "usage-check":
390
424
  receipt = read_json_object(Path(args.receipt), label="model usage receipt")
391
- decision = read_json_object(Path(args.route_decision), label="model route decision") if args.route_decision else None
425
+ decision = (
426
+ read_json_object(Path(args.route_decision), label="model route decision")
427
+ if args.route_decision
428
+ else None
429
+ )
392
430
  targets = read_json_object(Path(args.budget_targets), label="budget targets") if args.budget_targets else None
393
431
  result = validate_usage_receipt(receipt, budget_targets=targets, route_decision=decision)
394
432
  if result["status"] == "FAIL":
@@ -401,7 +439,7 @@ def _dispatch_model(args: argparse.Namespace) -> dict[str, Any]:
401
439
  raise LifecycleError("command-not-implemented", "model command is not implemented")
402
440
 
403
441
 
404
- def _dispatch_metrics(args: argparse.Namespace) -> dict[str, Any]:
442
+ def _dispatch_metrics(args: argparse.Namespace) -> dict[str, Any] | str:
405
443
  if args.metrics_command == "cost-check":
406
444
  report = read_json_object(Path(args.receipt), label="lifecycle cost report")
407
445
  return require_lifecycle_cost_pass(validate_lifecycle_cost_report(report))
@@ -505,32 +543,15 @@ def _dispatch_metrics(args: argparse.Namespace) -> dict[str, Any]:
505
543
  write_json_create(Path(args.out), payload)
506
544
  return payload
507
545
  if args.metrics_command == "audit-report":
508
- samples = _read_audit_samples(args.sample)
509
- candidates = _read_json_items(args.candidate_profile, label="candidate profile")
510
- references = _read_json_items(args.reference_task, label="reference task")
511
- holdouts = _read_json_items(args.holdout_task, label="holdout task")
512
- current = read_json_object(Path(args.current_profile), label="current optimization profile") if args.current_profile else None
513
- report = build_audit_optimization_report(
514
- samples,
515
- candidate_profiles=candidates,
516
- reference_tasks=references,
517
- holdout_tasks=holdouts,
518
- task_shape=args.task_shape,
519
- quality_floor=args.quality_floor,
520
- current_profile=current,
521
- )
522
- validation = validate_audit_optimization_report(report)
523
- if validation["status"] != "PASS":
524
- raise LifecycleError("audit-optimization-report-invalid", "audit optimization report validation failed", {"validation": validation})
525
- write_json_create(Path(args.out), report)
526
- if args.terminal:
527
- return render_audit_optimization_terminal(report)
528
- return report
546
+ return _dispatch_audit_report(args)
529
547
  if args.metrics_command == "audit-proposal":
530
548
  report = read_json_object(Path(args.report), label="audit optimization report")
531
- recommendation = report.get("recommendation") if isinstance(report.get("recommendation"), dict) else {}
549
+ raw_recommendation = report.get("recommendation")
550
+ proposal_recommendation: dict[str, Any] = (
551
+ raw_recommendation if isinstance(raw_recommendation, dict) else {}
552
+ )
532
553
  proposal = build_optimization_proposal(
533
- recommendation,
554
+ proposal_recommendation,
534
555
  approved=args.approved,
535
556
  target_kind=args.target_kind,
536
557
  target_revision=args.target_revision,
@@ -545,11 +566,44 @@ def _dispatch_metrics(args: argparse.Namespace) -> dict[str, Any]:
545
566
  raise LifecycleError("command-not-implemented", "metrics command is not implemented")
546
567
 
547
568
 
569
+ def _dispatch_audit_report(args: argparse.Namespace) -> dict[str, Any] | str:
570
+ samples = _read_audit_samples(args.sample)
571
+ candidates = _read_json_items(args.candidate_profile, label="candidate profile")
572
+ references = _read_json_items(args.reference_task, label="reference task")
573
+ holdouts = _read_json_items(args.holdout_task, label="holdout task")
574
+ current = (
575
+ read_json_object(Path(args.current_profile), label="current optimization profile")
576
+ if args.current_profile
577
+ else None
578
+ )
579
+ report = build_audit_optimization_report(
580
+ samples,
581
+ candidate_profiles=candidates,
582
+ reference_tasks=references,
583
+ holdout_tasks=holdouts,
584
+ task_shape=args.task_shape,
585
+ quality_floor=args.quality_floor,
586
+ current_profile=current,
587
+ )
588
+ validation = validate_audit_optimization_report(report)
589
+ if validation["status"] != "PASS":
590
+ raise LifecycleError(
591
+ "audit-optimization-report-invalid",
592
+ "audit optimization report validation failed",
593
+ {"validation": validation},
594
+ )
595
+ write_json_create(Path(args.out), report)
596
+ if args.terminal:
597
+ return render_audit_optimization_terminal(report)
598
+ return report
599
+
600
+
548
601
  def _read_audit_samples(paths: list[str]) -> list[dict[str, Any]]:
549
602
  samples: list[dict[str, Any]] = []
550
603
  for item in paths:
551
604
  payload = read_json_object(Path(item), label="audit sample")
552
- rows = payload.get("samples") if isinstance(payload.get("samples"), list) else [payload]
605
+ raw_samples = payload.get("samples")
606
+ rows = raw_samples if isinstance(raw_samples, list) else [payload]
553
607
  samples.extend(row for row in rows if isinstance(row, dict))
554
608
  return samples
555
609
 
@@ -558,7 +612,8 @@ def _read_json_items(paths: list[str], *, label: str) -> list[dict[str, Any]]:
558
612
  items: list[dict[str, Any]] = []
559
613
  for item in paths:
560
614
  payload = read_json_object(Path(item), label=label)
561
- rows = payload if isinstance(payload, list) else payload.get("items") if isinstance(payload.get("items"), list) else [payload]
615
+ raw_items = payload.get("items")
616
+ rows = raw_items if isinstance(raw_items, list) else [payload]
562
617
  items.extend(row for row in rows if isinstance(row, dict))
563
618
  return items
564
619
 
@@ -17,6 +17,14 @@ def _add_report_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentP
17
17
  event_feed = report_sub.add_parser("event-feed")
18
18
  event_feed.add_argument("--state", required=True)
19
19
  event_feed.add_argument("--out")
20
+ multi_run = report_sub.add_parser("multi-run", aliases=["attention"])
21
+ multi_run.add_argument("--project-root", default=".")
22
+ multi_run.add_argument("--run-root", "--run", dest="run_root", action="append", default=[])
23
+ multi_run.add_argument("--max-runs", type=int, default=32)
24
+ multi_run.add_argument("--max-bytes-per-run", type=int, default=1_048_576)
25
+ multi_run.add_argument("--stale-after-seconds", type=int, default=86_400)
26
+ multi_run.add_argument("--now")
27
+ multi_run.add_argument("--out")
20
28
  progress = report_sub.add_parser("progress")
21
29
  progress.add_argument("--state", required=True)
22
30
  progress.add_argument("--usage-receipt", action="append", default=[])
@@ -0,0 +1,114 @@
1
+ """Contracts for bounded, read-only views over several lifecycle runs."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+ from agent_lifecycle.contracts.schema_builders import open_object_schema
8
+
9
+ _DIGEST = {"type": "string", "minLength": 64, "maxLength": 64}
10
+ _BLOCKERS = {"type": "array", "items": {"type": "object"}, "maxItems": 64}
11
+
12
+ MULTI_RUN_ATTENTION_ITEM_SCHEMA = "agent-multi-run-attention-item.v1"
13
+ MULTI_RUN_OVERLAP_SCHEMA = "agent-multi-run-overlap.v1"
14
+ MULTI_RUN_VIEW_SCHEMA = "agent-multi-run-attention-view.v1"
15
+
16
+ MULTI_RUN_VIEW_SCHEMAS: dict[str, dict[str, Any]] = {
17
+ MULTI_RUN_ATTENTION_ITEM_SCHEMA: open_object_schema(
18
+ MULTI_RUN_ATTENTION_ITEM_SCHEMA,
19
+ required=[
20
+ "schemaVersion",
21
+ "itemId",
22
+ "reasonCode",
23
+ "severity",
24
+ "runId",
25
+ "packageId",
26
+ "planRevision",
27
+ "planDigest",
28
+ "sourceRevision",
29
+ "stateRevision",
30
+ ],
31
+ properties={
32
+ "itemId": {"type": "string", "minLength": 1, "maxLength": 256},
33
+ "reasonCode": {"enum": [
34
+ "BLOCKER_PRESENT",
35
+ "USER_ACTION_REQUIRED",
36
+ "PENDING_REVIEW",
37
+ "STALE_ATTEMPT",
38
+ "FAILED_EVIDENCE",
39
+ "TERMINAL_RUN",
40
+ "SOURCE_UNAVAILABLE",
41
+ ]},
42
+ "severity": {"enum": ["HIGH", "MEDIUM", "LOW", "INFO"]},
43
+ "runId": {"type": "string", "minLength": 1},
44
+ "packageId": {"type": ["string", "null"]},
45
+ "planRevision": {"type": ["integer", "null"], "minimum": 0},
46
+ "planDigest": {"type": ["string", "null"], "minLength": 0, "maxLength": 64},
47
+ "sourceRevision": {"type": ["string", "null"]},
48
+ "stateRevision": {"type": ["integer", "null"], "minimum": 1},
49
+ "taskId": {"type": ["string", "null"]},
50
+ "phase": {"type": ["string", "null"]},
51
+ "message": {"type": "string", "maxLength": 512},
52
+ "sourcePath": {"type": ["string", "null"]},
53
+ "blockerCode": {"type": ["string", "null"]},
54
+ },
55
+ ),
56
+ MULTI_RUN_OVERLAP_SCHEMA: open_object_schema(
57
+ MULTI_RUN_OVERLAP_SCHEMA,
58
+ required=["schemaVersion", "overlapId", "path", "runIds", "authorityRetained"],
59
+ properties={
60
+ "overlapId": {"type": "string", "minLength": 1, "maxLength": 256},
61
+ "path": {"type": "string", "minLength": 1},
62
+ "runIds": {"type": "array", "minItems": 2, "items": {"type": "string", "minLength": 1}},
63
+ "packageIds": {"type": "array", "items": {"type": "string", "minLength": 1}},
64
+ "planRevisions": {"type": "array", "items": {"type": "integer", "minimum": 0}},
65
+ "authorityRetained": {"const": True},
66
+ "reasonCode": {"const": "DECLARED_PATH_OVERLAP"},
67
+ },
68
+ ),
69
+ MULTI_RUN_VIEW_SCHEMA: open_object_schema(
70
+ MULTI_RUN_VIEW_SCHEMA,
71
+ required=[
72
+ "schemaVersion",
73
+ "status",
74
+ "sourceOfTruth",
75
+ "readOnly",
76
+ "modelCallsStarted",
77
+ "stateWritten",
78
+ "projectRoot",
79
+ "sourceCount",
80
+ "sources",
81
+ "attentionItems",
82
+ "overlaps",
83
+ "blockers",
84
+ "productionPromotionClaimed",
85
+ "viewDigest",
86
+ ],
87
+ properties={
88
+ "status": {"enum": ["PASS", "FAIL"]},
89
+ "sourceOfTruth": {"const": False},
90
+ "readOnly": {"const": True},
91
+ "modelCallsStarted": {"const": False},
92
+ "stateWritten": {"const": False},
93
+ "projectRoot": {"const": "<checkout>"},
94
+ "sourceCount": {"type": "integer", "minimum": 0},
95
+ "successfulSourceCount": {"type": "integer", "minimum": 0},
96
+ "failedSourceCount": {"type": "integer", "minimum": 0},
97
+ "sources": {"type": "array", "items": {"type": "object"}},
98
+ "attentionItems": {"type": "array", "items": {"type": "object"}},
99
+ "overlaps": {"type": "array", "items": {"type": "object"}},
100
+ "blockers": _BLOCKERS,
101
+ "limits": {"type": "object"},
102
+ "productionPromotionClaimed": {"const": False},
103
+ "viewDigest": _DIGEST,
104
+ },
105
+ ),
106
+ }
107
+
108
+
109
+ __all__ = [
110
+ "MULTI_RUN_ATTENTION_ITEM_SCHEMA",
111
+ "MULTI_RUN_OVERLAP_SCHEMA",
112
+ "MULTI_RUN_VIEW_SCHEMA",
113
+ "MULTI_RUN_VIEW_SCHEMAS",
114
+ ]
@@ -49,6 +49,7 @@ from agent_lifecycle.contracts.lifecycle_control_definitions import (
49
49
  QUALIFICATION_STATUSES,
50
50
  )
51
51
  from agent_lifecycle.contracts.metric_schemas import METRIC_SCHEMAS
52
+ from agent_lifecycle.contracts.multi_run_view_schemas import MULTI_RUN_VIEW_SCHEMAS
52
53
  from agent_lifecycle.contracts.plan_contract_schemas import PLAN_CONTRACT_SCHEMAS
53
54
  from agent_lifecycle.contracts.plan_delta_schemas import PLAN_DELTA_SCHEMAS
54
55
  from agent_lifecycle.contracts.plan_manifest_schemas import PLAN_MANIFEST_SCHEMAS
@@ -752,6 +753,7 @@ _SCHEMA_GROUPS = (
752
753
  PLAN_DELTA_SCHEMAS,
753
754
  PLANNING_LAUNCH_SCHEMAS,
754
755
  METRIC_SCHEMAS,
756
+ MULTI_RUN_VIEW_SCHEMAS,
755
757
  POLICY_SCHEMAS,
756
758
  LIFECYCLE_START_SCHEMAS,
757
759
  RISK_EXECUTION_SCHEMAS,
@@ -1,7 +1,9 @@
1
1
  """Read-only reporting views over existing lifecycle artifacts."""
2
2
 
3
- from agent_lifecycle.reporting.event_feed import build_workflow_event_feed
3
+ from agent_lifecycle.reporting.attention import build_attention_projection, build_multi_run_overlap
4
4
  from agent_lifecycle.reporting.change_summary import build_change_summary_receipt
5
+ from agent_lifecycle.reporting.event_feed import build_workflow_event_feed
6
+ from agent_lifecycle.reporting.multi_run import build_multi_run_attention_view, build_multi_run_view
5
7
  from agent_lifecycle.reporting.progress_bridge import (
6
8
  build_progress_bridge_config,
7
9
  build_progress_bridge_receipt,
@@ -12,23 +14,27 @@ from agent_lifecycle.reporting.progress_hooks import (
12
14
  build_progress_hook_receipt,
13
15
  write_progress_hook_receipt,
14
16
  )
15
- from agent_lifecycle.reporting.progress_view import build_lifecycle_progress_view, build_lifecycle_progress_watch
16
17
  from agent_lifecycle.reporting.progress_terminal import render_goal_view_terminal, render_progress_terminal
18
+ from agent_lifecycle.reporting.progress_view import build_lifecycle_progress_view, build_lifecycle_progress_watch
17
19
  from agent_lifecycle.reporting.status_view import build_status_view, require_status_view_pass
18
20
  from agent_lifecycle.reporting.usage_export import render_usage_export_json, render_usage_export_table
19
21
 
20
22
  __all__ = [
23
+ "build_attention_projection",
21
24
  "build_change_summary_receipt",
22
25
  "build_lifecycle_progress_view",
23
26
  "build_lifecycle_progress_watch",
27
+ "build_multi_run_attention_view",
28
+ "build_multi_run_overlap",
29
+ "build_multi_run_view",
24
30
  "build_progress_bridge_config",
25
31
  "build_progress_bridge_receipt",
26
32
  "build_progress_hook_policy",
27
33
  "build_progress_hook_receipt",
28
34
  "build_status_view",
29
35
  "build_workflow_event_feed",
30
- "render_progress_bridge_terminal",
31
36
  "render_goal_view_terminal",
37
+ "render_progress_bridge_terminal",
32
38
  "render_progress_terminal",
33
39
  "render_usage_export_json",
34
40
  "render_usage_export_table",