agent-lifecycle-kit 1.85.0__tar.gz → 1.87.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.
- {agent_lifecycle_kit-1.85.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-1.87.0}/PKG-INFO +4 -4
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/README.md +3 -3
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/pyproject.toml +1 -1
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/_version.py +1 -1
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/package.py +98 -30
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/proof_findings.py +16 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_planning.py +60 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/lifecycle_parsers.py +3 -39
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/planning_parsers.py +35 -0
- agent_lifecycle_kit-1.87.0/src/agent_lifecycle/cli/project.py +450 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/adapter_event_schemas.py +83 -1
- agent_lifecycle_kit-1.87.0/src/agent_lifecycle/contracts/finding_check_schemas.py +632 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/lifecycle_control_schemas.py +194 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/project_profile_schemas.py +43 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/schemas.py +2 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/event_capture.py +166 -2
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/lifecycle_control_qualification.py +78 -3
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/deltas.py +83 -22
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/traceability.py +127 -1
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/proposals.py +148 -19
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/project/merge.py +181 -4
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/artifacts.py +31 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0/src/agent_lifecycle_kit.egg-info}/PKG-INFO +4 -4
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle_kit.egg-info/SOURCES.txt +1 -0
- agent_lifecycle_kit-1.85.0/src/agent_lifecycle/cli/project.py +0 -177
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/LICENSE +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/NOTICE +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/README.md +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/manifest.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt01-planning/oracle.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt01-planning/task.md +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt02-architecture-review/oracle.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt02-architecture-review/task.md +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt03-bug-forensics/oracle.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt03-bug-forensics/task.md +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt04-s1-managed-task/oracle.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt04-s1-managed-task/task.md +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/oracle.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/task.md +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/setup.cfg +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/__main__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/agent_plugin_probe.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/contracts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/env.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/launch_execution.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/launch_preflight.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/launcher.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/lifecycle_control.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/local_launch_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/planning_launch.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/planning_session.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/process.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/process_capture.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/process_control.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/process_groups.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/process_telemetry.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/qualification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/redaction.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/session_store.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/start_input.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/start_receipts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/start_routing.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/task_intake.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/unified_start.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/workflow_bridge.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/adapter_sessions/worktree_identity.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/bug_forensics.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/implementation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/ownership.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/proof_chain.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/proof_integrity.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/review_verdict.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/comparison.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/contracts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/evaluator.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/oracles.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/qualification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/reporting.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/benchmarks/stratification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/changesets/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/changesets/git.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/changesets/snapshot.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/adapter.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/benchmarks.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/command_registry.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_adapters.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_contracts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_lifecycle.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_metrics.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_observability.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/dispatch_research.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/errors.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/followup.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/host_launch.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/main.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/metrics_parser.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/observability_parsers.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/parsers.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/policy.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/progress_hooks.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/research.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/start.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/strategy.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/cli/worktree.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/compiler/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/compiler/small_model_packets.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/compiler/task_packets.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/checkpoint_store.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/checkpoints.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/episode_retrieval.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/external_memory.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/profiles.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/rendering.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/context/thread_bridge_context.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/adapter_contract_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/adapter_session_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/adapter_task_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/agent_plugin_qualification_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/audit_optimization_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/audit_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/benchmark_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/bug_forensics_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/canonical.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/compatibility.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/context_checkpoint_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/context_model_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/core_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/cross_check_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/errors.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/evidence_import_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/execution_strategy_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/goal_validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/host_capability_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/implementation_audit_validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/import_dialect_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/launch_qualification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/lifecycle_action_catalog.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/lifecycle_control_definitions.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/lifecycle_control_validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/local_launch_validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/metric_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/ownership_paths.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/paths.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/performance_limits.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/persistence.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/plan_contract_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/plan_delta_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/plan_manifest_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/planning_launch_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/policy_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/process_execution_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/process_redaction.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/progress_bridge_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/progress_hook_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/project_profile_preset_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/proof_integrity_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/proof_validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/public_locators.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/quality_modes.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/redaction.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/release_contract_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/research_evidence_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/review_mesh_recommendation_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/review_mesh_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/review_quality_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/review_verdict.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/runner_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/runner_worktree_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/sandbox_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/schema_builders.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/status_goal_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/task_template_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/thread_bridge_schema_definitions.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/thread_bridge_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/thread_bridge_validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/token_estimation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/usage_export_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/workflow_artifact_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/workflow_authorization_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/contracts/workflow_state_schemas.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/lifecycle-baselines.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/model-routing-profile.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/feature-implementation.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/quick-change.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/research-review.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/risk-execution-policy.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/data/profiles/small-context-profile.v1.json +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/diagnostics/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/diagnostics/bundles.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/diagnostics/installation_catalog.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/diagnostics/readiness.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/evidence_index/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/evidence_index/core.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/evidence_index/episode_index.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/evidence_index/external_context.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/followup/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/followup/records.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/freeze/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/freeze/locks.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/freeze/package_integrity.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/goal/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/goal/records.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/goal/view.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/acp_capability.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/agent_plugin_qualification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/capabilities.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/context_events.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/contracts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/events.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_claude.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_codex.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_common.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_cursor.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_gemini_cli.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_hermes.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_kimi_code.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_opencode.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/inspection_qwen_code.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/lifecycle_control.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/lifecycle_gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/process_port.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/receipts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/scaffold.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/thread_bridge.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/usage_normalizers.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/host_protocol/validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/agentskills_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/bmad_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/constitution_adr.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/dialect_profiles.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/external_agent.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/external_dialects.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/external_workflow.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/multi_markdown.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/openspec_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/planning.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/spec_kit_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/imports/spec_kitty_profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/audit_optimization.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/audit_samples.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/cost_collection.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/costs.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/outcome_index.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/phase_resources.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/recommendations.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/regression_signals.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/metrics/usage_export.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/model_routing/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/model_routing/profiles.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/model_routing/receipts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/model_routing/resolver.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/__main__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/authority.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/canonical.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/cli.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/ed25519.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/errors.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/git_objects.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/matching.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/paths.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/policy.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/receipt.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/scanner.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/neutrality/test_runner.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/acceptance_markdown.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/completeness.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/continuity.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/manifest_contract.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/task_compatibility.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/templates.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/tiering.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/planning/verification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/adaptive_lifecycle.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/apply.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/execution_strategy.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/quality_floor.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/risk_execution.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/runtime_receipts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/policy/thread_bridge.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/project/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/project/guidance.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/project/presets.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/project/principles.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/project/profile.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/py.typed +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/bug_forensics.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/bug_forensics_advisor.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/bug_forensics_recipes.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/cross_check.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/failure_classification.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/quality/packs.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/change_summary.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/event_feed.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/execution_resources.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/progress_bridge.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/progress_hooks.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/progress_terminal.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/progress_view.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/status_view.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/reporting/usage_export.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/research/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/research/evidence.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/research/provenance.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/research/validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/resources.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review/validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/assignments.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/contracts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/operator_templates.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/quorum.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/recommendation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/results.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/review_mesh/synthesis.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/runner/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/runner/attempt_snapshots.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/runner/core.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/runner/sandbox_receipts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/specification/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/specification/completion_check.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/specification/completion_gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/specification/completion_signal.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/specification/validation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/authorization.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/budget_decisions.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/budget_policy.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/budget_receipts.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/bug_forensics_gates.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/checkpoint_gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/controller.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/events.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/final_proof_integrity.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/finalization.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/gates.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/implementation_audit_gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/initialization.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/leases.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/lineage.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/managed_runner.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/model_usage.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/next_action.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/operation_kernel.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/plan_adoption.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/query.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/review_mesh_gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/reviews.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/risk_execution_gate.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/run_transitions.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/sandbox_policy.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/selectors.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/state.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/task_outcomes.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/task_transitions.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/workflow/transition_contract.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/worktree/__init__.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/worktree/isolation.py +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle_kit.egg-info/dependency_links.txt +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle_kit.egg-info/entry_points.txt +0 -0
- {agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle_kit.egg-info/top_level.txt +0 -0
{agent_lifecycle_kit-1.85.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-1.87.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-lifecycle-kit
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.87.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==1.
|
|
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==1.87.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).
|
|
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) and [adapter action evidence](docs/reference/adapter-action-evidence.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.
|
|
@@ -194,7 +194,7 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
|
|
|
194
194
|
|
|
195
195
|
- 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).
|
|
196
196
|
- 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).
|
|
197
|
-
- 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), [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), [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).
|
|
197
|
+
- 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), [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
198
|
- 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).
|
|
199
199
|
- 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 recovery](docs/reference/runner-recovery.md), [Cross-check profile](docs/reference/cross-check-profile.md), [Review Mesh](docs/reference/review-mesh.md), [Bug Forensics profile](docs/reference/bug-forensics.md), and [Bug Forensics context budget](docs/reference/bug-forensics-context-budget.md).
|
|
200
200
|
- 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==1.
|
|
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==1.87.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).
|
|
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) and [adapter action evidence](docs/reference/adapter-action-evidence.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.
|
|
@@ -172,7 +172,7 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
|
|
|
172
172
|
|
|
173
173
|
- 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).
|
|
174
174
|
- 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).
|
|
175
|
-
- 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), [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), [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).
|
|
175
|
+
- 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), [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
176
|
- 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).
|
|
177
177
|
- 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 recovery](docs/reference/runner-recovery.md), [Cross-check profile](docs/reference/cross-check-profile.md), [Review Mesh](docs/reference/review-mesh.md), [Bug Forensics profile](docs/reference/bug-forensics.md), and [Bug Forensics context budget](docs/reference/bug-forensics-context-budget.md).
|
|
178
178
|
- 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 = "1.
|
|
7
|
+
version = "1.87.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"
|
{agent_lifecycle_kit-1.85.0 → agent_lifecycle_kit-1.87.0}/src/agent_lifecycle/audit/package.py
RENAMED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
from collections.abc import Callable
|
|
5
6
|
from pathlib import Path
|
|
6
|
-
from typing import Any
|
|
7
|
+
from typing import Any
|
|
7
8
|
|
|
8
9
|
from agent_lifecycle.audit.implementation import (
|
|
9
10
|
build_final_implementation_audit,
|
|
@@ -22,10 +23,10 @@ from agent_lifecycle.planning import (
|
|
|
22
23
|
validate_plan_manifest,
|
|
23
24
|
validate_repository_references,
|
|
24
25
|
)
|
|
26
|
+
from agent_lifecycle.planning.traceability import validate_finding_check_traceability
|
|
25
27
|
from agent_lifecycle.workflow.artifacts import package_root
|
|
26
28
|
from agent_lifecycle.workflow.state import load_state
|
|
27
29
|
|
|
28
|
-
|
|
29
30
|
PACKAGE_AUDIT_SCHEMA = "agent-plan-package-audit-report.v1"
|
|
30
31
|
_PLAN_FILES = (
|
|
31
32
|
"README.md",
|
|
@@ -66,7 +67,9 @@ def build_package_audit(
|
|
|
66
67
|
raise LifecycleError("plan-directory-missing", "plan directory was not found", {"path": str(package_dir)})
|
|
67
68
|
manifest_path = package_dir / "plan.manifest.json"
|
|
68
69
|
if manifest_path.is_symlink():
|
|
69
|
-
raise LifecycleError(
|
|
70
|
+
raise LifecycleError(
|
|
71
|
+
"plan-manifest-symlink", "plan manifest must not be a symlink", {"path": str(manifest_path)}
|
|
72
|
+
)
|
|
70
73
|
manifest = read_json_object(manifest_path, label="plan manifest")
|
|
71
74
|
package_id = _package_id(manifest)
|
|
72
75
|
findings: list[dict[str, Any]] = []
|
|
@@ -92,20 +95,24 @@ def build_package_audit(
|
|
|
92
95
|
_capture_check_failure("lock", lock_check, findings, blockers)
|
|
93
96
|
|
|
94
97
|
acceptance_path = package_dir / "acceptance-criteria.md"
|
|
95
|
-
acceptance_check =
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
98
|
+
acceptance_check = (
|
|
99
|
+
_run_check(
|
|
100
|
+
lambda: validate_acceptance_checklist(
|
|
101
|
+
manifest,
|
|
102
|
+
acceptance_path.read_text(encoding="utf-8"),
|
|
103
|
+
)
|
|
104
|
+
)
|
|
105
|
+
if acceptance_path.is_file() and not acceptance_path.is_symlink()
|
|
106
|
+
else _missing_check(
|
|
107
|
+
"acceptance-checklist-symlink" if acceptance_path.is_symlink() else "acceptance-checklist-missing",
|
|
108
|
+
"acceptance checklist must not be a symlink"
|
|
109
|
+
if acceptance_path.is_symlink()
|
|
110
|
+
else "acceptance checklist was not found",
|
|
99
111
|
)
|
|
100
|
-
) if acceptance_path.is_file() and not acceptance_path.is_symlink() else _missing_check(
|
|
101
|
-
"acceptance-checklist-symlink" if acceptance_path.is_symlink() else "acceptance-checklist-missing",
|
|
102
|
-
"acceptance checklist must not be a symlink" if acceptance_path.is_symlink() else "acceptance checklist was not found",
|
|
103
112
|
)
|
|
104
113
|
_capture_check_failure("acceptance", acceptance_check, findings, blockers)
|
|
105
114
|
|
|
106
|
-
references_check = _run_check(
|
|
107
|
-
lambda: require_repository_references_pass(validate_repository_references(manifest))
|
|
108
|
-
)
|
|
115
|
+
references_check = _run_check(lambda: require_repository_references_pass(validate_repository_references(manifest)))
|
|
109
116
|
_capture_check_failure("references", references_check, findings, blockers)
|
|
110
117
|
|
|
111
118
|
plan_status = _plan_status(
|
|
@@ -188,6 +195,27 @@ def require_package_audit_pass(audit: dict[str, Any]) -> dict[str, Any]:
|
|
|
188
195
|
return audit
|
|
189
196
|
|
|
190
197
|
|
|
198
|
+
def build_finding_check_adoption_audit(
|
|
199
|
+
*,
|
|
200
|
+
findings: list[dict[str, Any]],
|
|
201
|
+
bindings: list[dict[str, Any]],
|
|
202
|
+
plan_deltas: list[dict[str, Any]],
|
|
203
|
+
evidence: list[dict[str, Any]] | None = None,
|
|
204
|
+
active_binding_ids: list[str] | None = None,
|
|
205
|
+
source_revision: str | None = None,
|
|
206
|
+
) -> dict[str, Any]:
|
|
207
|
+
"""Audit finding/check adoption as a read-only package-level gate."""
|
|
208
|
+
|
|
209
|
+
return validate_finding_check_traceability(
|
|
210
|
+
findings=findings,
|
|
211
|
+
bindings=bindings,
|
|
212
|
+
plan_deltas=plan_deltas,
|
|
213
|
+
evidence=evidence,
|
|
214
|
+
active_binding_ids=active_binding_ids,
|
|
215
|
+
source_revision=source_revision,
|
|
216
|
+
)
|
|
217
|
+
|
|
218
|
+
|
|
191
219
|
def validate_package_audit(audit: dict[str, Any]) -> dict[str, Any]:
|
|
192
220
|
"""Validate the integrity and top-level semantics of a package receipt."""
|
|
193
221
|
|
|
@@ -200,12 +228,16 @@ def validate_package_audit(audit: dict[str, Any]) -> dict[str, Any]:
|
|
|
200
228
|
if audit.get("status") not in {"PASS", "FAIL", "REVIEW_REQUIRED"}:
|
|
201
229
|
blockers.append({"code": "package-audit-status", "message": "package audit status is unsupported"})
|
|
202
230
|
if audit.get("productionPromotionClaimed") is not False:
|
|
203
|
-
blockers.append(
|
|
231
|
+
blockers.append(
|
|
232
|
+
{"code": "package-audit-production-claim", "message": "package audit must not claim production promotion"}
|
|
233
|
+
)
|
|
204
234
|
auditor = audit.get("auditor")
|
|
205
235
|
if not isinstance(auditor, dict) or auditor.get("independent") is not True:
|
|
206
236
|
blockers.append({"code": "package-audit-auditor", "message": "package auditor must be independent"})
|
|
207
237
|
if audit.get("status") == "PASS" and audit.get("blockers"):
|
|
208
|
-
blockers.append(
|
|
238
|
+
blockers.append(
|
|
239
|
+
{"code": "package-audit-open-blockers", "message": "PASS package audit must not contain blockers"}
|
|
240
|
+
)
|
|
209
241
|
result = {
|
|
210
242
|
"schemaVersion": "agent-plan-package-audit-validation.v1",
|
|
211
243
|
"status": "PASS" if not blockers else "FAIL",
|
|
@@ -301,10 +333,20 @@ def _build_implementation_section(
|
|
|
301
333
|
final_audit = aggregate["result"]
|
|
302
334
|
final_validation = validate_final_implementation_audit(final_audit, state=state)
|
|
303
335
|
if final_validation.get("status") != "PASS":
|
|
304
|
-
_capture_check_failure(
|
|
336
|
+
_capture_check_failure(
|
|
337
|
+
"final-implementation-validation",
|
|
338
|
+
{"status": "FAIL", "blockers": final_validation.get("blockers", []), "result": final_validation},
|
|
339
|
+
findings,
|
|
340
|
+
blockers,
|
|
341
|
+
)
|
|
305
342
|
report_status = "FAIL"
|
|
306
343
|
elif final_audit.get("status") != "PASS":
|
|
307
|
-
_capture_check_failure(
|
|
344
|
+
_capture_check_failure(
|
|
345
|
+
"final-implementation",
|
|
346
|
+
{"status": "FAIL", "blockers": final_audit.get("blockers", []), "result": final_audit},
|
|
347
|
+
findings,
|
|
348
|
+
blockers,
|
|
349
|
+
)
|
|
308
350
|
report_status = "FAIL"
|
|
309
351
|
elif require_implementation:
|
|
310
352
|
_add_finding(
|
|
@@ -452,7 +494,9 @@ def _contained_relative_path(root: Path, raw: str) -> str:
|
|
|
452
494
|
{"root": str(root), "path": str(resolved)},
|
|
453
495
|
) from exc
|
|
454
496
|
if not resolved.is_file():
|
|
455
|
-
raise LifecycleError(
|
|
497
|
+
raise LifecycleError(
|
|
498
|
+
"implementation-report-missing", "implementation audit report was not found", {"path": str(resolved)}
|
|
499
|
+
)
|
|
456
500
|
return normalize_repo_path(relative.as_posix(), label="implementation audit report")
|
|
457
501
|
|
|
458
502
|
|
|
@@ -477,10 +521,7 @@ def _package_file_check(
|
|
|
477
521
|
)
|
|
478
522
|
except LifecycleError as exc:
|
|
479
523
|
return {"status": "FAIL", "blockers": [_error(exc)]}
|
|
480
|
-
entries = [
|
|
481
|
-
{"path": item["path"], "status": "PASS", "bytes": item["bytes"]}
|
|
482
|
-
for item in verification["entries"]
|
|
483
|
-
]
|
|
524
|
+
entries = [{"path": item["path"], "status": "PASS", "bytes": item["bytes"]} for item in verification["entries"]]
|
|
484
525
|
body = {
|
|
485
526
|
"schemaVersion": "agent-plan-package-files.v2",
|
|
486
527
|
"status": "PASS",
|
|
@@ -497,8 +538,14 @@ def _package_file_check(
|
|
|
497
538
|
exists = path.is_file()
|
|
498
539
|
is_symlink = path.is_symlink()
|
|
499
540
|
optional_draft_lock = name == "plan.lock.json" and not exists and not is_symlink
|
|
500
|
-
status =
|
|
501
|
-
|
|
541
|
+
status = (
|
|
542
|
+
"SYMLINK"
|
|
543
|
+
if is_symlink
|
|
544
|
+
else ("PASS" if exists else ("REVIEW_REQUIRED" if optional_draft_lock else "MISSING"))
|
|
545
|
+
)
|
|
546
|
+
entries.append(
|
|
547
|
+
{"path": name, "status": status, "bytes": path.stat().st_size if exists and not is_symlink else 0}
|
|
548
|
+
)
|
|
502
549
|
if (not exists and not optional_draft_lock) or is_symlink:
|
|
503
550
|
missing.append(name)
|
|
504
551
|
body = {
|
|
@@ -552,29 +599,50 @@ def _missing_check(code: str, message: str) -> dict[str, Any]:
|
|
|
552
599
|
return {"status": "FAIL", "blockers": [{"code": code, "message": message, "context": {}}]}
|
|
553
600
|
|
|
554
601
|
|
|
555
|
-
def _capture_check_failure(
|
|
602
|
+
def _capture_check_failure(
|
|
603
|
+
category: str, check: dict[str, Any], findings: list[dict[str, Any]], blockers: list[dict[str, Any]]
|
|
604
|
+
) -> None:
|
|
556
605
|
if check.get("status") != "FAIL":
|
|
557
606
|
return
|
|
558
607
|
for item in check.get("blockers", []):
|
|
559
608
|
if not isinstance(item, dict):
|
|
560
609
|
continue
|
|
610
|
+
context = item.get("context")
|
|
611
|
+
context_payload = context if isinstance(context, dict) else {}
|
|
561
612
|
_add_finding(
|
|
562
613
|
findings,
|
|
563
614
|
blockers,
|
|
564
615
|
code=str(item.get("code") or f"{category}-failed"),
|
|
565
|
-
severity="HIGH"
|
|
616
|
+
severity="HIGH"
|
|
617
|
+
if category in {"manifest", "completeness", "lock", "implementation-state", "implementation-reports"}
|
|
618
|
+
else "MEDIUM",
|
|
566
619
|
category=category,
|
|
567
620
|
message=str(item.get("message") or f"{category} check failed"),
|
|
568
|
-
context=
|
|
621
|
+
context=context_payload,
|
|
569
622
|
)
|
|
570
623
|
|
|
571
624
|
|
|
572
625
|
def _lineage_blockers(state: dict[str, Any], manifest: dict[str, Any], package_id: str) -> list[dict[str, Any]]:
|
|
573
626
|
expected_digest = canonical_digest(manifest)
|
|
574
627
|
checks = (
|
|
575
|
-
(
|
|
576
|
-
|
|
577
|
-
|
|
628
|
+
(
|
|
629
|
+
"implementation-package-mismatch",
|
|
630
|
+
"workflow state packageId does not match the plan package",
|
|
631
|
+
state.get("packageId"),
|
|
632
|
+
package_id,
|
|
633
|
+
),
|
|
634
|
+
(
|
|
635
|
+
"implementation-revision-mismatch",
|
|
636
|
+
"workflow state planRevision does not match the plan",
|
|
637
|
+
state.get("planRevision"),
|
|
638
|
+
manifest.get("planRevision"),
|
|
639
|
+
),
|
|
640
|
+
(
|
|
641
|
+
"implementation-digest-mismatch",
|
|
642
|
+
"workflow state planDigest does not match the plan",
|
|
643
|
+
state.get("planDigest"),
|
|
644
|
+
expected_digest,
|
|
645
|
+
),
|
|
578
646
|
)
|
|
579
647
|
return [
|
|
580
648
|
{"code": code, "message": message, "context": {"actual": actual, "expected": expected}}
|
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
from agent_lifecycle.contracts.finding_check_schemas import (
|
|
6
|
+
FINDING_CHECK_BINDING_SCHEMA,
|
|
7
|
+
FINDING_CHECK_EVIDENCE_SCHEMA,
|
|
8
|
+
build_finding_check_binding,
|
|
9
|
+
build_finding_check_evidence,
|
|
10
|
+
transition_finding_check_binding,
|
|
11
|
+
validate_finding_check_binding,
|
|
12
|
+
validate_finding_check_evidence,
|
|
13
|
+
)
|
|
5
14
|
from agent_lifecycle.contracts.proof_validation import (
|
|
6
15
|
FINDING_SCHEMA,
|
|
7
16
|
ROOT_CAUSE_SCHEMA,
|
|
@@ -14,12 +23,19 @@ from agent_lifecycle.contracts.proof_validation import (
|
|
|
14
23
|
)
|
|
15
24
|
|
|
16
25
|
__all__ = [
|
|
26
|
+
"FINDING_CHECK_BINDING_SCHEMA",
|
|
27
|
+
"FINDING_CHECK_EVIDENCE_SCHEMA",
|
|
17
28
|
"FINDING_SCHEMA",
|
|
18
29
|
"ROOT_CAUSE_SCHEMA",
|
|
30
|
+
"build_finding_check_binding",
|
|
31
|
+
"build_finding_check_evidence",
|
|
19
32
|
"build_finding_identity",
|
|
20
33
|
"build_root_cause_evidence",
|
|
21
34
|
"finding_identity_fields",
|
|
22
35
|
"stable_finding_id",
|
|
36
|
+
"transition_finding_check_binding",
|
|
37
|
+
"validate_finding_check_binding",
|
|
38
|
+
"validate_finding_check_evidence",
|
|
23
39
|
"validate_finding_identity",
|
|
24
40
|
"validate_root_cause_evidence",
|
|
25
41
|
]
|
|
@@ -12,6 +12,11 @@ from agent_lifecycle.contracts import (
|
|
|
12
12
|
read_json_object,
|
|
13
13
|
write_json_create,
|
|
14
14
|
)
|
|
15
|
+
from agent_lifecycle.contracts.finding_check_schemas import (
|
|
16
|
+
validate_finding_check_binding,
|
|
17
|
+
validate_finding_check_evidence,
|
|
18
|
+
validate_finding_check_proposal,
|
|
19
|
+
)
|
|
15
20
|
from agent_lifecycle.freeze import verify_plan_lock
|
|
16
21
|
from agent_lifecycle.planning import (
|
|
17
22
|
build_plan_delta,
|
|
@@ -33,10 +38,12 @@ from agent_lifecycle.planning.verification import (
|
|
|
33
38
|
load_verification_inputs,
|
|
34
39
|
require_plan_verification_pass,
|
|
35
40
|
)
|
|
41
|
+
from agent_lifecycle.policy.proposals import accept_finding_check_proposal, build_finding_check_proposal
|
|
36
42
|
from agent_lifecycle.specification import (
|
|
37
43
|
build_completion_gate_receipt,
|
|
38
44
|
validate_specification,
|
|
39
45
|
)
|
|
46
|
+
from agent_lifecycle.workflow.artifacts import build_finding_check_evidence_artifact
|
|
40
47
|
|
|
41
48
|
|
|
42
49
|
def dispatch_planning(args: argparse.Namespace) -> dict[str, Any]:
|
|
@@ -194,9 +201,62 @@ def _dispatch_plan(args: argparse.Namespace) -> dict[str, Any]:
|
|
|
194
201
|
if args.out:
|
|
195
202
|
write_json_create(Path(args.out), payload)
|
|
196
203
|
return payload
|
|
204
|
+
if args.plan_command == "finding-check":
|
|
205
|
+
return _dispatch_finding_check(args)
|
|
197
206
|
raise LifecycleError("command-not-implemented", "plan command is not implemented")
|
|
198
207
|
|
|
199
208
|
|
|
209
|
+
def _dispatch_finding_check(args: argparse.Namespace) -> dict[str, Any]:
|
|
210
|
+
def read(path: str, label: str) -> dict[str, Any]:
|
|
211
|
+
return read_json_object(Path(path), label=label)
|
|
212
|
+
|
|
213
|
+
if args.finding_check_command == "propose":
|
|
214
|
+
payload = build_finding_check_proposal(
|
|
215
|
+
finding=read(args.finding, "finding"),
|
|
216
|
+
plan_delta=read(args.delta, "plan delta"),
|
|
217
|
+
check_identity=read(args.check, "check identity"),
|
|
218
|
+
owner=args.owner,
|
|
219
|
+
scope=read(args.scope, "check scope"),
|
|
220
|
+
source_revision=args.source_revision,
|
|
221
|
+
expected_result=args.expected_result,
|
|
222
|
+
proposal_id=args.proposal_id,
|
|
223
|
+
)
|
|
224
|
+
elif args.finding_check_command == "validate":
|
|
225
|
+
if args.binding:
|
|
226
|
+
payload = validate_finding_check_binding(read(args.binding, "finding-check binding"))
|
|
227
|
+
elif args.proposal:
|
|
228
|
+
payload = validate_finding_check_proposal(read(args.proposal, "finding-check proposal"))
|
|
229
|
+
elif args.evidence:
|
|
230
|
+
payload = validate_finding_check_evidence(read(args.evidence, "finding-check evidence"))
|
|
231
|
+
else:
|
|
232
|
+
raise LifecycleError("finding-check-input-required", "binding, proposal or evidence is required")
|
|
233
|
+
elif args.finding_check_command == "accept":
|
|
234
|
+
payload = accept_finding_check_proposal(
|
|
235
|
+
read(args.proposal, "finding-check proposal"), read(args.authorization, "authorization")
|
|
236
|
+
)
|
|
237
|
+
elif args.finding_check_command == "evidence":
|
|
238
|
+
payload = build_finding_check_evidence_artifact(
|
|
239
|
+
read(args.binding, "finding-check binding"),
|
|
240
|
+
result=args.result,
|
|
241
|
+
source_revision=args.source_revision,
|
|
242
|
+
evidence_ids=args.evidence_id,
|
|
243
|
+
)
|
|
244
|
+
elif args.finding_check_command == "transition":
|
|
245
|
+
from agent_lifecycle.contracts.finding_check_schemas import transition_finding_check_binding
|
|
246
|
+
|
|
247
|
+
payload = transition_finding_check_binding(
|
|
248
|
+
read(args.binding, "finding-check binding"),
|
|
249
|
+
args.target_status,
|
|
250
|
+
authorization=read(args.authorization, "authorization"),
|
|
251
|
+
evidence=read(args.evidence, "finding-check evidence") if args.evidence else None,
|
|
252
|
+
)
|
|
253
|
+
else:
|
|
254
|
+
raise LifecycleError("command-not-implemented", "finding-check command is not implemented")
|
|
255
|
+
if args.out:
|
|
256
|
+
write_json_create(Path(args.out), payload)
|
|
257
|
+
return payload
|
|
258
|
+
|
|
259
|
+
|
|
200
260
|
def _dispatch_task(args: argparse.Namespace) -> dict[str, Any]:
|
|
201
261
|
if args.task_command == "compile":
|
|
202
262
|
execution_strategy = (
|
|
@@ -6,11 +6,14 @@ import argparse
|
|
|
6
6
|
|
|
7
7
|
from agent_lifecycle.adapter_sessions import START_MODES
|
|
8
8
|
from agent_lifecycle.cli.progress_hooks import add_progress_hook_args
|
|
9
|
+
from agent_lifecycle.cli.project import add_project_parser
|
|
9
10
|
from agent_lifecycle.contracts.lifecycle_action_catalog import COMPATIBILITY_COMMANDS
|
|
10
11
|
from agent_lifecycle.contracts.review_mesh_schemas import REVIEW_MESH_MODE_IDS
|
|
11
12
|
from agent_lifecycle.resources import builtin_profile_path
|
|
12
13
|
from agent_lifecycle.review_mesh.operator_templates import REVIEW_MESH_OPERATOR_TEMPLATE_IDS
|
|
13
14
|
|
|
15
|
+
_add_project_parser = add_project_parser
|
|
16
|
+
|
|
14
17
|
_BASELINE_PROFILE = builtin_profile_path("lifecycle-baselines.v1.json")
|
|
15
18
|
_MODEL_ROUTING_PROFILE = builtin_profile_path("model-routing-profile.v1.json")
|
|
16
19
|
_RISK_POLICY = builtin_profile_path("risk-execution-policy.v1.json")
|
|
@@ -61,45 +64,6 @@ def _add_start_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentPa
|
|
|
61
64
|
)
|
|
62
65
|
|
|
63
66
|
|
|
64
|
-
def _add_project_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentParser]) -> None:
|
|
65
|
-
project = subparsers.add_parser("project", help="project-local ALK configuration")
|
|
66
|
-
project_sub = project.add_subparsers(dest="project_command", required=True)
|
|
67
|
-
profile = project_sub.add_parser("profile", help="project workflow profile commands")
|
|
68
|
-
profile_sub = profile.add_subparsers(dest="profile_command", required=True)
|
|
69
|
-
init = profile_sub.add_parser("init", help="create a minimal local project profile")
|
|
70
|
-
init.add_argument("--project-root", default=".")
|
|
71
|
-
init.add_argument("--out", default=".alk/project-profile.json")
|
|
72
|
-
init.add_argument("--adapter", help="set the default adapter in the new profile")
|
|
73
|
-
check = profile_sub.add_parser("check", help="validate and resolve a project profile")
|
|
74
|
-
check.add_argument("--project-root", default=".")
|
|
75
|
-
check.add_argument("--profile")
|
|
76
|
-
check.add_argument("--manifest")
|
|
77
|
-
check.add_argument("--lock")
|
|
78
|
-
check.add_argument("--adapter")
|
|
79
|
-
check.add_argument("--mode", choices=list(START_MODES))
|
|
80
|
-
check.add_argument("--risk", choices=["auto", "S0", "S1", "S2"])
|
|
81
|
-
check.add_argument("--out")
|
|
82
|
-
principles = project_sub.add_parser("principles", help="check a bounded project-principles artifact")
|
|
83
|
-
principles_sub = principles.add_subparsers(dest="principles_command", required=True)
|
|
84
|
-
principles_check = principles_sub.add_parser("check", aliases=["validate"])
|
|
85
|
-
principles_check.add_argument("--file", "--path", dest="principles_path", required=True)
|
|
86
|
-
principles_check.add_argument("--project-root", default=".")
|
|
87
|
-
principles_check.add_argument("--out")
|
|
88
|
-
preset = project_sub.add_parser("preset", help="inspect and render built-in workflow presets")
|
|
89
|
-
preset_sub = preset.add_subparsers(dest="preset_command", required=True)
|
|
90
|
-
preset_sub.add_parser("list", help="list built-in workflow presets")
|
|
91
|
-
for command in ("inspect", "validate"):
|
|
92
|
-
child = preset_sub.add_parser(command, help=f"{command} a built-in workflow preset")
|
|
93
|
-
child.add_argument("--preset", required=True)
|
|
94
|
-
child.add_argument("--project-root", default=".")
|
|
95
|
-
render = preset_sub.add_parser("render", help="render a preset to an explicit profile path")
|
|
96
|
-
render.add_argument("--preset", required=True)
|
|
97
|
-
render.add_argument("--project-root", default=".")
|
|
98
|
-
render.add_argument("--profile-id")
|
|
99
|
-
render.add_argument("--adapter")
|
|
100
|
-
render.add_argument("--out", required=True)
|
|
101
|
-
|
|
102
|
-
|
|
103
67
|
def _add_host_launch_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentParser]) -> None:
|
|
104
68
|
host_launch = subparsers.add_parser("host-launch", help="inspect or preflight an operator-local host profile")
|
|
105
69
|
host_launch_sub = host_launch.add_subparsers(dest="host_launch_command", required=True)
|
|
@@ -59,6 +59,41 @@ def _add_plan_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentPar
|
|
|
59
59
|
delta_check = plan_sub.add_parser("delta-check", aliases=["delta-validate"])
|
|
60
60
|
delta_check.add_argument("--delta", required=True)
|
|
61
61
|
delta_check.add_argument("--out")
|
|
62
|
+
finding_check = plan_sub.add_parser("finding-check", help="bind accepted findings to deterministic checks")
|
|
63
|
+
finding_check_sub = finding_check.add_subparsers(dest="finding_check_command", required=True)
|
|
64
|
+
propose = finding_check_sub.add_parser("propose")
|
|
65
|
+
propose.add_argument("--finding", required=True)
|
|
66
|
+
propose.add_argument("--delta", required=True)
|
|
67
|
+
propose.add_argument("--check", required=True)
|
|
68
|
+
propose.add_argument("--scope", required=True)
|
|
69
|
+
propose.add_argument("--owner", required=True)
|
|
70
|
+
propose.add_argument("--source-revision", required=True)
|
|
71
|
+
propose.add_argument("--expected-result", choices=["PASS", "FAIL", "BLOCKED"], default="PASS")
|
|
72
|
+
propose.add_argument("--proposal-id", default="finding-check-adoption-proposal")
|
|
73
|
+
propose.add_argument("--out")
|
|
74
|
+
validate = finding_check_sub.add_parser("validate")
|
|
75
|
+
validate.add_argument("--binding")
|
|
76
|
+
validate.add_argument("--proposal")
|
|
77
|
+
validate.add_argument("--evidence")
|
|
78
|
+
validate.add_argument("--out")
|
|
79
|
+
accept = finding_check_sub.add_parser("accept")
|
|
80
|
+
accept.add_argument("--proposal", required=True)
|
|
81
|
+
accept.add_argument("--authorization", required=True)
|
|
82
|
+
accept.add_argument("--out")
|
|
83
|
+
evidence = finding_check_sub.add_parser("evidence")
|
|
84
|
+
evidence.add_argument("--binding", required=True)
|
|
85
|
+
evidence.add_argument("--result", choices=["PASS", "FAIL", "BLOCKED"], required=True)
|
|
86
|
+
evidence.add_argument("--source-revision", required=True)
|
|
87
|
+
evidence.add_argument("--evidence-id", action="append", required=True)
|
|
88
|
+
evidence.add_argument("--out")
|
|
89
|
+
transition = finding_check_sub.add_parser("transition")
|
|
90
|
+
transition.add_argument("--binding", required=True)
|
|
91
|
+
transition.add_argument(
|
|
92
|
+
"--target-status", choices=["PROPOSED", "ACCEPTED", "IMPLEMENTED", "VERIFIED", "RETIRED"], required=True
|
|
93
|
+
)
|
|
94
|
+
transition.add_argument("--authorization", required=True)
|
|
95
|
+
transition.add_argument("--evidence")
|
|
96
|
+
transition.add_argument("--out")
|
|
62
97
|
|
|
63
98
|
|
|
64
99
|
def _add_task_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentParser]) -> None:
|