agent-lifecycle-kit 2.0.0__tar.gz → 2.2.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-2.0.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-2.2.0}/PKG-INFO +8 -8
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/README.md +7 -7
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/pyproject.toml +1 -1
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/_version.py +1 -1
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/__init__.py +32 -26
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/audit/domain_language.py +177 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/proof_integrity.py +8 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_planning.py +2 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/planning_parsers.py +2 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/project.py +70 -3
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/contracts/domain_language.py +479 -0
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/contracts/domain_language_schemas.py +230 -0
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/contracts/independent_evidence_schemas.py +389 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/review_mesh_schemas.py +5 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/schemas.py +4 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/__init__.py +18 -14
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/completeness.py +23 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/continuity.py +97 -11
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/deltas.py +45 -4
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/manifest_contract.py +11 -1
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/project/__init__.py +12 -0
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/project/domain_language.py +19 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/__init__.py +41 -29
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/assignments.py +54 -8
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/contracts.py +126 -19
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/review_mesh/independence.py +94 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/quorum.py +4 -0
- agent_lifecycle_kit-2.2.0/src/agent_lifecycle/workflow/review_mesh_gate.py +164 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0/src/agent_lifecycle_kit.egg-info}/PKG-INFO +8 -8
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle_kit.egg-info/SOURCES.txt +6 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/workflow/review_mesh_gate.py +0 -93
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/LICENSE +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/NOTICE +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/README.md +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/manifest.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt01-planning/oracle.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt01-planning/task.md +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt02-architecture-review/oracle.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt02-architecture-review/task.md +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt03-bug-forensics/oracle.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt03-bug-forensics/task.md +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt04-s1-managed-task/oracle.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt04-s1-managed-task/task.md +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/oracle.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/task.md +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/setup.cfg +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/__main__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/agent_plugin_probe.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/contracts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/env.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/external_check.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/launch_execution.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/launch_preflight.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/launcher.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/lifecycle_control.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/local_launch_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/planning_launch.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/planning_session.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/process.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/process_capture.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/process_control.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/process_groups.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/process_telemetry.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/qualification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/redaction.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/session_store.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/start_input.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/start_receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/start_routing.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/task_intake.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/unified_start.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/workflow_bridge.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/adapter_sessions/worktree_identity.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/bug_forensics.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/external_checks.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/implementation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/ownership.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/package.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/proof_chain.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/proof_findings.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/review_verdict.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/comparison.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/contracts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/evaluator.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/oracles.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/qualification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/reporting.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/benchmarks/stratification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/changesets/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/changesets/git.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/changesets/snapshot.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/adapter.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/benchmarks.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/command_registry.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_adapters.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_contracts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_lifecycle.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_metrics.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_observability.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_research.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/errors.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/followup.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/host_launch.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/lifecycle_parsers.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/main.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/metrics_parser.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/observability_parsers.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/parsers.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/policy.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/progress_hooks.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/research.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/start.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/strategy.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/worktree.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/compiler/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/compiler/output_contract.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/compiler/small_model_packets.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/compiler/task_packets.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/checkpoint_store.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/checkpoints.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/episode_retrieval.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/external_memory.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/profiles.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/rendering.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/context/thread_bridge_context.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/adapter_contract_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/adapter_event_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/adapter_session_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/adapter_task_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/agent_plugin_qualification_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/audit_optimization_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/audit_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/benchmark_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/bug_forensics_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/canonical.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/compatibility.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/context_checkpoint_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/context_model_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/core_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/cross_check_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/errors.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/evidence_import_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/execution_strategy_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/external_check_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/finding_check_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/goal_validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/host_capability_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/implementation_audit_validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/import_dialect_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/launch_qualification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/legacy_runner_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/lifecycle_action_catalog.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/lifecycle_control_definitions.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/lifecycle_control_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/lifecycle_control_validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/local_launch_validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/metric_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/ownership_paths.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/paths.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/performance_limits.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/persistence.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/plan_contract_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/plan_delta_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/plan_manifest_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/planning_launch_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/policy_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/process_execution_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/process_redaction.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/progress_bridge_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/progress_hook_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/project_profile_preset_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/project_profile_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/proof_integrity_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/proof_validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/public_locators.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/quality_modes.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/redaction.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/release_contract_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/research_evidence_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/review_mesh_recommendation_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/review_quality_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/review_verdict.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/runner_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/runner_worktree_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/sandbox_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/schema_builders.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/status_goal_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/structured_result_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/task_template_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/thread_bridge_schema_definitions.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/thread_bridge_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/thread_bridge_validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/token_estimation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/usage_export_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/workflow_artifact_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/workflow_authorization_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/workflow_run_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/contracts/workflow_state_schemas.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/external-checks/declared-dependencies.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/external-checks/import-boundaries.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/external-checks/module-dependencies.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/lifecycle-baselines.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/model-routing-profile.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/feature-implementation.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/quick-change.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/research-review.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/risk-execution-policy.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/data/profiles/small-context-profile.v1.json +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/diagnostics/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/diagnostics/bundles.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/diagnostics/installation_catalog.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/diagnostics/readiness.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/evidence_index/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/evidence_index/core.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/evidence_index/episode_index.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/evidence_index/external_context.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/followup/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/followup/records.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/freeze/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/freeze/locks.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/freeze/package_integrity.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/goal/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/goal/records.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/goal/view.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/acp_capability.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/agent_plugin_qualification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/capabilities.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/context_events.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/contracts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/event_capture.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/events.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_claude.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_codex.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_common.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_cursor.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_gemini_cli.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_hermes.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_kimi_code.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_opencode.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/inspection_qwen_code.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/lifecycle_control.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/lifecycle_control_qualification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/lifecycle_gate.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/process_port.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/sandbox_receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/scaffold.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/structured_results.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/thread_bridge.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/usage_normalizers.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/host_protocol/validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/agentskills_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/bmad_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/constitution_adr.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/dialect_profiles.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/external_agent.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/external_dialects.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/external_workflow.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/multi_markdown.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/openspec_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/planning.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/spec_kit_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/imports/spec_kitty_profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/audit_optimization.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/audit_samples.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/cost_collection.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/costs.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/outcome_index.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/phase_resources.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/recommendations.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/regression_signals.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/metrics/usage_export.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/migration/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/migration/legacy_runner.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/model_routing/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/model_routing/profiles.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/model_routing/receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/model_routing/resolver.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/__main__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/authority.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/canonical.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/cli.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/ed25519.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/errors.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/gate.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/git_objects.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/matching.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/paths.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/policy.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/receipt.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/scanner.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/neutrality/test_runner.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/acceptance_markdown.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/task_compatibility.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/templates.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/tiering.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/traceability.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/planning/verification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/adaptive_lifecycle.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/apply.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/execution_strategy.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/proposals.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/quality_floor.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/risk_execution.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/runtime_receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/policy/thread_bridge.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/project/guidance.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/project/merge.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/project/presets.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/project/principles.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/project/profile.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/py.typed +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/bug_forensics.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/bug_forensics_advisor.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/bug_forensics_recipes.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/cross_check.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/external_checks.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/failure_classification.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/quality/packs.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/change_summary.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/event_feed.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/execution_resources.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/progress_bridge.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/progress_hooks.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/progress_terminal.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/progress_view.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/status_view.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/reporting/usage_export.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/research/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/research/evidence.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/research/provenance.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/research/validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/resources.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review/validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/operator_templates.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/recommendation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/results.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/review_mesh/synthesis.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/runner/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/runner/core.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/runner/sandbox_receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/specification/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/specification/completion_check.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/specification/completion_gate.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/specification/completion_signal.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/specification/validation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/artifacts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/authorization.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/budget_decisions.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/budget_policy.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/budget_receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/bug_forensics_gates.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/checkpoint_gate.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/controller.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/events.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/final_proof_integrity.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/finalization.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/gates.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/implementation_audit_gate.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/initialization.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/leases.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/lineage.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/managed_runner.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/model_usage.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/next_action.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/operation_kernel.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/plan_adoption.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/query.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/reviews.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/risk_execution_gate.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/run.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/run_transitions.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/sandbox_policy.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/sandbox_receipts.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/selectors.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/state.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/task_outcomes.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/task_transitions.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/workflow/transition_contract.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/worktree/__init__.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/worktree/isolation.py +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle_kit.egg-info/dependency_links.txt +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle_kit.egg-info/entry_points.txt +0 -0
- {agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle_kit.egg-info/top_level.txt +0 -0
{agent_lifecycle_kit-2.0.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-2.2.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-lifecycle-kit
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.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.
|
|
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.
|
|
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).
|
|
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).
|
|
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.
|
|
@@ -187,16 +187,16 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
|
|
|
187
187
|
- Public release claims use tracked source files and redacted evidence summaries.
|
|
188
188
|
- External dialect imports and retrieved episodes enrich context, while reviewed
|
|
189
189
|
ALK artifacts remain the source of truth.
|
|
190
|
-
- Cross-check, Review Mesh and historical runner recovery receipts add evidence
|
|
191
|
-
|
|
192
|
-
|
|
190
|
+
- Cross-check, Review Mesh and historical runner recovery receipts add evidence when a task or plan enables them; legacy runner records are converted
|
|
191
|
+
read-only and the operator chooses the review depth. High-risk criteria can opt into [risk-bound independent verification](docs/reference/risk-bound-independent-verification.md);
|
|
192
|
+
ordinary criteria remain on the standard evidence path.
|
|
193
193
|
|
|
194
194
|
## Documentation
|
|
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), [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), [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
|
-
- 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), [Bug Forensics profile](docs/reference/bug-forensics.md), and [Bug Forensics context budget](docs/reference/bug-forensics-context-budget.md).
|
|
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).
|
|
202
202
|
Apache-2.0. See [LICENSE](LICENSE).
|
|
@@ -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.
|
|
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.
|
|
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).
|
|
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).
|
|
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.
|
|
@@ -165,16 +165,16 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
|
|
|
165
165
|
- Public release claims use tracked source files and redacted evidence summaries.
|
|
166
166
|
- External dialect imports and retrieved episodes enrich context, while reviewed
|
|
167
167
|
ALK artifacts remain the source of truth.
|
|
168
|
-
- Cross-check, Review Mesh and historical runner recovery receipts add evidence
|
|
169
|
-
|
|
170
|
-
|
|
168
|
+
- Cross-check, Review Mesh and historical runner recovery receipts add evidence when a task or plan enables them; legacy runner records are converted
|
|
169
|
+
read-only and the operator chooses the review depth. High-risk criteria can opt into [risk-bound independent verification](docs/reference/risk-bound-independent-verification.md);
|
|
170
|
+
ordinary criteria remain on the standard evidence path.
|
|
171
171
|
|
|
172
172
|
## Documentation
|
|
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), [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), [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
|
-
- 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), [Bug Forensics profile](docs/reference/bug-forensics.md), and [Bug Forensics context budget](docs/reference/bug-forensics-context-budget.md).
|
|
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).
|
|
180
180
|
Apache-2.0. See [LICENSE](LICENSE).
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "agent-lifecycle-kit"
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.2.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-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/__init__.py
RENAMED
|
@@ -1,6 +1,27 @@
|
|
|
1
1
|
"""Audit helpers for frozen lifecycle plans."""
|
|
2
2
|
|
|
3
|
+
from agent_lifecycle.audit.bug_forensics import (
|
|
4
|
+
build_bug_forensics_audit,
|
|
5
|
+
require_bug_forensics_audit_pass,
|
|
6
|
+
validate_bug_forensics_audit,
|
|
7
|
+
)
|
|
8
|
+
from agent_lifecycle.audit.domain_language import (
|
|
9
|
+
build_domain_language_impact_audit,
|
|
10
|
+
validate_domain_language_impact_audit,
|
|
11
|
+
)
|
|
12
|
+
from agent_lifecycle.audit.implementation import (
|
|
13
|
+
build_final_implementation_audit,
|
|
14
|
+
build_implementation_audit_report,
|
|
15
|
+
require_implementation_audit_accepted,
|
|
16
|
+
validate_final_implementation_audit,
|
|
17
|
+
validate_implementation_audit_report,
|
|
18
|
+
)
|
|
3
19
|
from agent_lifecycle.audit.ownership import build_ownership_report
|
|
20
|
+
from agent_lifecycle.audit.package import (
|
|
21
|
+
build_package_audit,
|
|
22
|
+
require_package_audit_pass,
|
|
23
|
+
validate_package_audit,
|
|
24
|
+
)
|
|
4
25
|
from agent_lifecycle.audit.proof_integrity import (
|
|
5
26
|
build_finding_identity,
|
|
6
27
|
build_fix_impact_receipt,
|
|
@@ -23,53 +44,38 @@ from agent_lifecycle.audit.review_verdict import (
|
|
|
23
44
|
require_review_verdict_pass,
|
|
24
45
|
validate_review_verdict,
|
|
25
46
|
)
|
|
26
|
-
from agent_lifecycle.audit.bug_forensics import (
|
|
27
|
-
build_bug_forensics_audit,
|
|
28
|
-
require_bug_forensics_audit_pass,
|
|
29
|
-
validate_bug_forensics_audit,
|
|
30
|
-
)
|
|
31
|
-
from agent_lifecycle.audit.implementation import (
|
|
32
|
-
build_final_implementation_audit,
|
|
33
|
-
build_implementation_audit_report,
|
|
34
|
-
require_implementation_audit_accepted,
|
|
35
|
-
validate_final_implementation_audit,
|
|
36
|
-
validate_implementation_audit_report,
|
|
37
|
-
)
|
|
38
|
-
from agent_lifecycle.audit.package import (
|
|
39
|
-
build_package_audit,
|
|
40
|
-
require_package_audit_pass,
|
|
41
|
-
validate_package_audit,
|
|
42
|
-
)
|
|
43
47
|
|
|
44
48
|
__all__ = [
|
|
45
49
|
"build_bug_forensics_audit",
|
|
46
|
-
"
|
|
50
|
+
"build_domain_language_impact_audit",
|
|
47
51
|
"build_final_implementation_audit",
|
|
48
|
-
"build_implementation_audit_report",
|
|
49
|
-
"build_package_audit",
|
|
50
52
|
"build_finding_identity",
|
|
51
53
|
"build_fix_impact_receipt",
|
|
52
54
|
"build_hash_chain_migration_policy",
|
|
55
|
+
"build_implementation_audit_report",
|
|
56
|
+
"build_ownership_report",
|
|
57
|
+
"build_package_audit",
|
|
53
58
|
"build_proof_integrity_receipt",
|
|
54
59
|
"build_receipt_hash_chain",
|
|
55
60
|
"build_root_cause_evidence",
|
|
56
61
|
"compact_review_routing",
|
|
57
62
|
"finding_identity_fields",
|
|
58
|
-
"require_proof_integrity_pass",
|
|
59
63
|
"require_bug_forensics_audit_pass",
|
|
60
|
-
"require_review_verdict_pass",
|
|
61
64
|
"require_implementation_audit_accepted",
|
|
62
65
|
"require_package_audit_pass",
|
|
63
|
-
"
|
|
66
|
+
"require_proof_integrity_pass",
|
|
67
|
+
"require_review_verdict_pass",
|
|
64
68
|
"stable_finding_id",
|
|
65
|
-
"validate_finding_identity",
|
|
66
69
|
"validate_bug_forensics_audit",
|
|
70
|
+
"validate_domain_language_impact_audit",
|
|
67
71
|
"validate_final_implementation_audit",
|
|
68
|
-
"
|
|
72
|
+
"validate_finding_identity",
|
|
69
73
|
"validate_fix_impact_receipt",
|
|
70
74
|
"validate_hash_chain_migration_policy",
|
|
75
|
+
"validate_implementation_audit_report",
|
|
76
|
+
"validate_package_audit",
|
|
71
77
|
"validate_proof_integrity_receipt",
|
|
72
78
|
"validate_receipt_hash_chain",
|
|
73
|
-
"validate_root_cause_evidence",
|
|
74
79
|
"validate_review_verdict",
|
|
80
|
+
"validate_root_cause_evidence",
|
|
75
81
|
]
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"""Read-only impact and stale-alias audits for project vocabularies."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from pathlib import Path
|
|
6
|
+
from typing import Any
|
|
7
|
+
|
|
8
|
+
from agent_lifecycle.contracts import LifecycleError, canonical_digest
|
|
9
|
+
from agent_lifecycle.contracts.domain_language import (
|
|
10
|
+
domain_language_digest,
|
|
11
|
+
language_terms,
|
|
12
|
+
validate_domain_language,
|
|
13
|
+
)
|
|
14
|
+
from agent_lifecycle.contracts.domain_language_schemas import DOMAIN_LANGUAGE_AUDIT_SCHEMA
|
|
15
|
+
from agent_lifecycle.contracts.paths import is_under_repo_path, normalize_repo_path
|
|
16
|
+
|
|
17
|
+
MAX_AUDIT_FILE_BYTES = 131072
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def build_domain_language_impact_audit(
|
|
21
|
+
language: dict[str, Any],
|
|
22
|
+
*,
|
|
23
|
+
changed_term_ids: list[str] | None = None,
|
|
24
|
+
changed_paths: list[str] | None = None,
|
|
25
|
+
project_root: Path | None = None,
|
|
26
|
+
) -> dict[str, Any]:
|
|
27
|
+
"""Report affected references and deprecated aliases without modifying files."""
|
|
28
|
+
|
|
29
|
+
blockers: list[dict[str, Any]] = []
|
|
30
|
+
validation = validate_domain_language(language, project_root=project_root)
|
|
31
|
+
if validation["status"] != "PASS":
|
|
32
|
+
blockers.append({"code": "domain-language-invalid", "validation": validation})
|
|
33
|
+
|
|
34
|
+
terms = language_terms(language)
|
|
35
|
+
selected = sorted(set(changed_term_ids or terms))
|
|
36
|
+
for term_id in selected:
|
|
37
|
+
if term_id not in terms:
|
|
38
|
+
blockers.append({"code": "domain-language-term-missing", "termId": term_id})
|
|
39
|
+
|
|
40
|
+
normalized_paths: list[str] = []
|
|
41
|
+
for raw_path in changed_paths or []:
|
|
42
|
+
try:
|
|
43
|
+
normalized_paths.append(normalize_repo_path(raw_path, label="changed domain language path"))
|
|
44
|
+
except (LifecycleError, TypeError):
|
|
45
|
+
blockers.append({"code": "domain-language-changed-path-invalid", "path": raw_path})
|
|
46
|
+
|
|
47
|
+
references: dict[tuple[str, str, str], dict[str, Any]] = {}
|
|
48
|
+
stale_aliases: list[dict[str, Any]] = []
|
|
49
|
+
for term_id in selected:
|
|
50
|
+
term = terms.get(term_id)
|
|
51
|
+
if not isinstance(term, dict):
|
|
52
|
+
continue
|
|
53
|
+
term_references = term.get("references", [])
|
|
54
|
+
for reference in term_references if isinstance(term_references, list) else []:
|
|
55
|
+
if not isinstance(reference, dict):
|
|
56
|
+
continue
|
|
57
|
+
path = reference.get("path")
|
|
58
|
+
if not isinstance(path, str):
|
|
59
|
+
continue
|
|
60
|
+
try:
|
|
61
|
+
normalized = normalize_repo_path(path, label="domain language reference path")
|
|
62
|
+
except (LifecycleError, TypeError):
|
|
63
|
+
continue
|
|
64
|
+
if normalized_paths and not any(is_under_repo_path(normalized, root) for root in normalized_paths):
|
|
65
|
+
continue
|
|
66
|
+
normalized_reference = {
|
|
67
|
+
"kind": reference.get("kind"),
|
|
68
|
+
"path": normalized,
|
|
69
|
+
**({"locator": reference["locator"]} if isinstance(reference.get("locator"), str) else {}),
|
|
70
|
+
}
|
|
71
|
+
references[(str(reference.get("kind")), normalized, str(reference.get("locator", "")))] = (
|
|
72
|
+
normalized_reference
|
|
73
|
+
)
|
|
74
|
+
content: str | None = None
|
|
75
|
+
reference_error: str | None = None
|
|
76
|
+
if project_root is not None:
|
|
77
|
+
content, reference_error = _read_reference(project_root, normalized)
|
|
78
|
+
if reference_error is not None:
|
|
79
|
+
blockers.append({"code": reference_error, "path": normalized})
|
|
80
|
+
|
|
81
|
+
aliases = term.get("aliases")
|
|
82
|
+
if not isinstance(aliases, list):
|
|
83
|
+
continue
|
|
84
|
+
for alias in aliases:
|
|
85
|
+
if not isinstance(alias, dict) or alias.get("status") != "DEPRECATED":
|
|
86
|
+
continue
|
|
87
|
+
value = alias.get("value")
|
|
88
|
+
locale = alias.get("locale")
|
|
89
|
+
if not isinstance(value, str) or not isinstance(locale, str):
|
|
90
|
+
continue
|
|
91
|
+
record = {
|
|
92
|
+
"termId": term_id,
|
|
93
|
+
"value": value,
|
|
94
|
+
"locale": locale,
|
|
95
|
+
"path": normalized,
|
|
96
|
+
"locator": reference.get("locator"),
|
|
97
|
+
"status": "DECLARED_DEPRECATED",
|
|
98
|
+
}
|
|
99
|
+
if (
|
|
100
|
+
project_root is not None
|
|
101
|
+
and reference_error is None
|
|
102
|
+
and content is not None
|
|
103
|
+
and value.casefold() in content.casefold()
|
|
104
|
+
):
|
|
105
|
+
record["status"] = "FOUND_IN_REFERENCE"
|
|
106
|
+
stale_aliases.append(record)
|
|
107
|
+
|
|
108
|
+
stale_aliases.sort(key=lambda item: (item["termId"], item["locale"], item["value"], item["path"]))
|
|
109
|
+
body = {
|
|
110
|
+
"schemaVersion": DOMAIN_LANGUAGE_AUDIT_SCHEMA,
|
|
111
|
+
"status": "FAIL" if blockers else ("DRIFT" if stale_aliases else "PASS"),
|
|
112
|
+
"languageDigest": domain_language_digest(language) if isinstance(language, dict) else None,
|
|
113
|
+
"selectedTermIds": selected,
|
|
114
|
+
"impactedReferences": [references[key] for key in sorted(references)],
|
|
115
|
+
"staleAliases": stale_aliases,
|
|
116
|
+
"blockers": blockers,
|
|
117
|
+
"readOnly": True,
|
|
118
|
+
"productionPromotionClaimed": False,
|
|
119
|
+
}
|
|
120
|
+
return {**body, "auditDigest": canonical_digest(body)}
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
def validate_domain_language_impact_audit(audit: dict[str, Any]) -> dict[str, Any]:
|
|
124
|
+
"""Validate an audit envelope and preserve its read-only boundary."""
|
|
125
|
+
|
|
126
|
+
blockers: list[dict[str, Any]] = []
|
|
127
|
+
if not isinstance(audit, dict):
|
|
128
|
+
blockers.append({"code": "domain-language-audit-invalid"})
|
|
129
|
+
audit = {}
|
|
130
|
+
if audit.get("schemaVersion") != DOMAIN_LANGUAGE_AUDIT_SCHEMA:
|
|
131
|
+
blockers.append({"code": "domain-language-audit-schema-invalid"})
|
|
132
|
+
if audit.get("readOnly") is not True:
|
|
133
|
+
blockers.append({"code": "domain-language-audit-not-read-only"})
|
|
134
|
+
if audit.get("productionPromotionClaimed") is not False:
|
|
135
|
+
blockers.append({"code": "domain-language-audit-production-claim"})
|
|
136
|
+
expected = canonical_digest({key: value for key, value in audit.items() if key != "auditDigest"})
|
|
137
|
+
if audit.get("auditDigest") != expected:
|
|
138
|
+
blockers.append({"code": "domain-language-audit-digest-mismatch", "expected": expected})
|
|
139
|
+
if audit.get("status") not in {"PASS", "DRIFT", "FAIL"}:
|
|
140
|
+
blockers.append({"code": "domain-language-audit-status-invalid"})
|
|
141
|
+
report = {
|
|
142
|
+
"schemaVersion": "agent-project-domain-language-audit-validation.v1",
|
|
143
|
+
"status": "PASS" if not blockers else "FAIL",
|
|
144
|
+
"auditStatus": audit.get("status"),
|
|
145
|
+
"blockers": blockers,
|
|
146
|
+
"productionPromotionClaimed": False,
|
|
147
|
+
}
|
|
148
|
+
return {**report, "validationDigest": canonical_digest(report)}
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
def _read_reference(root: Path, relative_path: str) -> tuple[str | None, str | None]:
|
|
152
|
+
resolved_root = root.resolve()
|
|
153
|
+
raw_candidate = resolved_root / relative_path
|
|
154
|
+
if _has_symlink_component(resolved_root, relative_path):
|
|
155
|
+
return None, "domain-language-reference-symlink"
|
|
156
|
+
candidate = raw_candidate.resolve(strict=False)
|
|
157
|
+
try:
|
|
158
|
+
candidate.relative_to(root.resolve())
|
|
159
|
+
except ValueError:
|
|
160
|
+
return None, "domain-language-reference-escape"
|
|
161
|
+
if not candidate.exists() or not candidate.is_file():
|
|
162
|
+
return None, "domain-language-reference-missing"
|
|
163
|
+
try:
|
|
164
|
+
if candidate.stat().st_size > MAX_AUDIT_FILE_BYTES:
|
|
165
|
+
return None, "domain-language-reference-too-large"
|
|
166
|
+
return candidate.read_text(encoding="utf-8", errors="ignore"), None
|
|
167
|
+
except OSError:
|
|
168
|
+
return None, "domain-language-reference-unreadable"
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
def _has_symlink_component(root: Path, relative_path: str) -> bool:
|
|
172
|
+
candidate = root
|
|
173
|
+
for component in Path(relative_path).parts:
|
|
174
|
+
candidate /= component
|
|
175
|
+
if candidate.is_symlink():
|
|
176
|
+
return True
|
|
177
|
+
return False
|
{agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/audit/proof_integrity.py
RENAMED
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
from agent_lifecycle.contracts.independent_evidence_schemas import (
|
|
6
|
+
require_independent_evidence_pass,
|
|
7
|
+
validate_independence_requirement,
|
|
8
|
+
validate_independent_evidence,
|
|
9
|
+
)
|
|
5
10
|
from agent_lifecycle.contracts.proof_validation import (
|
|
6
11
|
DEFAULT_LEGACY_EXEMPTIONS,
|
|
7
12
|
FINDING_SCHEMA,
|
|
@@ -46,11 +51,14 @@ __all__ = [
|
|
|
46
51
|
"build_receipt_hash_chain",
|
|
47
52
|
"build_root_cause_evidence",
|
|
48
53
|
"finding_identity_fields",
|
|
54
|
+
"require_independent_evidence_pass",
|
|
49
55
|
"require_proof_integrity_pass",
|
|
50
56
|
"stable_finding_id",
|
|
51
57
|
"validate_finding_identity",
|
|
52
58
|
"validate_fix_impact_receipt",
|
|
53
59
|
"validate_hash_chain_migration_policy",
|
|
60
|
+
"validate_independence_requirement",
|
|
61
|
+
"validate_independent_evidence",
|
|
54
62
|
"validate_proof_integrity_receipt",
|
|
55
63
|
"validate_receipt_hash_chain",
|
|
56
64
|
"validate_root_cause_evidence",
|
{agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/dispatch_planning.py
RENAMED
|
@@ -192,6 +192,8 @@ def _dispatch_plan(args: argparse.Namespace) -> dict[str, Any]:
|
|
|
192
192
|
before_lock=read(args.before_lock, "before plan lock"),
|
|
193
193
|
after_lock=read(args.after_lock, "after plan lock"),
|
|
194
194
|
principles=read(args.principles, "project principles"),
|
|
195
|
+
language_before=read(args.language_before, "before project domain language"),
|
|
196
|
+
language_after=read(args.language_after, "after project domain language"),
|
|
195
197
|
)
|
|
196
198
|
if args.out:
|
|
197
199
|
write_json_create(Path(args.out), payload)
|
{agent_lifecycle_kit-2.0.0 → agent_lifecycle_kit-2.2.0}/src/agent_lifecycle/cli/planning_parsers.py
RENAMED
|
@@ -55,6 +55,8 @@ def _add_plan_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentPar
|
|
|
55
55
|
delta.add_argument("--before-lock")
|
|
56
56
|
delta.add_argument("--after-lock")
|
|
57
57
|
delta.add_argument("--principles")
|
|
58
|
+
delta.add_argument("--language-before", help="optional previous project domain language artifact")
|
|
59
|
+
delta.add_argument("--language-after", help="optional current project domain language artifact")
|
|
58
60
|
delta.add_argument("--out")
|
|
59
61
|
delta_check = plan_sub.add_parser("delta-check", aliases=["delta-validate"])
|
|
60
62
|
delta_check.add_argument("--delta", required=True)
|
|
@@ -7,6 +7,7 @@ from pathlib import Path
|
|
|
7
7
|
from typing import Any
|
|
8
8
|
|
|
9
9
|
from agent_lifecycle.adapter_sessions import START_MODES
|
|
10
|
+
from agent_lifecycle.audit.domain_language import build_domain_language_impact_audit
|
|
10
11
|
from agent_lifecycle.contracts import (
|
|
11
12
|
LifecycleError,
|
|
12
13
|
canonical_digest,
|
|
@@ -24,6 +25,7 @@ from agent_lifecycle.project import (
|
|
|
24
25
|
load_project_preset,
|
|
25
26
|
load_project_profile,
|
|
26
27
|
render_project_preset,
|
|
28
|
+
validate_domain_language,
|
|
27
29
|
validate_project_preset,
|
|
28
30
|
validate_project_principles,
|
|
29
31
|
)
|
|
@@ -69,6 +71,18 @@ def add_project_parser(subparsers: argparse._SubParsersAction[argparse.ArgumentP
|
|
|
69
71
|
principles_check.add_argument("--file", "--path", dest="principles_path", required=True)
|
|
70
72
|
principles_check.add_argument("--project-root", default=".")
|
|
71
73
|
principles_check.add_argument("--out")
|
|
74
|
+
language = project_sub.add_parser("language", help="optional project domain language commands")
|
|
75
|
+
language_sub = language.add_subparsers(dest="language_command", required=True)
|
|
76
|
+
language_check = language_sub.add_parser("check", help="validate a project domain language artifact")
|
|
77
|
+
language_check.add_argument("--file", "--path", dest="language_path", required=True)
|
|
78
|
+
language_check.add_argument("--project-root", default=".")
|
|
79
|
+
language_check.add_argument("--out")
|
|
80
|
+
language_audit = language_sub.add_parser("audit", help="audit term impact and stale aliases without editing files")
|
|
81
|
+
language_audit.add_argument("--file", "--path", dest="language_path", required=True)
|
|
82
|
+
language_audit.add_argument("--project-root", default=".")
|
|
83
|
+
language_audit.add_argument("--term-id", action="append", default=[])
|
|
84
|
+
language_audit.add_argument("--changed-path", action="append", default=[])
|
|
85
|
+
language_audit.add_argument("--out")
|
|
72
86
|
preset = project_sub.add_parser("preset", help="inspect and render built-in workflow presets")
|
|
73
87
|
preset_sub = preset.add_subparsers(dest="preset_command", required=True)
|
|
74
88
|
preset_sub.add_parser("list", help="list built-in workflow presets")
|
|
@@ -89,6 +103,8 @@ def dispatch_project(args: argparse.Namespace) -> dict[str, Any]:
|
|
|
89
103
|
if args.principles_command not in {"check", "validate"}:
|
|
90
104
|
raise LifecycleError("command-not-implemented", "project principles command is not implemented")
|
|
91
105
|
return _check_principles(args)
|
|
106
|
+
if args.project_command == "language":
|
|
107
|
+
return _dispatch_domain_language(args)
|
|
92
108
|
if args.project_command == "preset":
|
|
93
109
|
return _dispatch_preset(args)
|
|
94
110
|
if args.project_command != "profile":
|
|
@@ -243,9 +259,7 @@ def _explain_profile(args: argparse.Namespace) -> dict[str, Any]:
|
|
|
243
259
|
blockers.append(
|
|
244
260
|
{
|
|
245
261
|
"code": "project-profile-capability-unavailable",
|
|
246
|
-
"causes": _validation_codes(
|
|
247
|
-
capability_validation, capability_error
|
|
248
|
-
)
|
|
262
|
+
"causes": _validation_codes(capability_validation, capability_error)
|
|
249
263
|
+ _validation_codes(level_validation, None),
|
|
250
264
|
}
|
|
251
265
|
)
|
|
@@ -402,6 +416,59 @@ def _check_principles(args: argparse.Namespace) -> dict[str, Any]:
|
|
|
402
416
|
return result
|
|
403
417
|
|
|
404
418
|
|
|
419
|
+
def _dispatch_domain_language(args: argparse.Namespace) -> dict[str, Any]:
|
|
420
|
+
if args.language_command == "check":
|
|
421
|
+
return _check_domain_language(args)
|
|
422
|
+
if args.language_command == "audit":
|
|
423
|
+
return _audit_domain_language(args)
|
|
424
|
+
raise LifecycleError("command-not-implemented", "project language command is not implemented")
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
def _read_domain_language_for_command(args: argparse.Namespace) -> tuple[Path, Path, dict[str, Any]]:
|
|
428
|
+
root = Path(args.project_root).resolve()
|
|
429
|
+
source = Path(args.language_path)
|
|
430
|
+
if not source.is_absolute():
|
|
431
|
+
source = root / source
|
|
432
|
+
try:
|
|
433
|
+
payload = read_json_object(source, label="project domain language")
|
|
434
|
+
except OSError as exc:
|
|
435
|
+
raise LifecycleError(
|
|
436
|
+
"domain-language-read-failed",
|
|
437
|
+
"project domain language cannot be read",
|
|
438
|
+
{"path": str(args.language_path)},
|
|
439
|
+
) from exc
|
|
440
|
+
return root, source, payload
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
def _check_domain_language(args: argparse.Namespace) -> dict[str, Any]:
|
|
444
|
+
root, source, payload = _read_domain_language_for_command(args)
|
|
445
|
+
result = validate_domain_language(payload, project_root=root, source_path=source)
|
|
446
|
+
if args.out:
|
|
447
|
+
output = Path(args.out)
|
|
448
|
+
if not output.is_absolute():
|
|
449
|
+
output = root / output
|
|
450
|
+
_ensure_output_contained(output, root)
|
|
451
|
+
write_json_create(output, result)
|
|
452
|
+
return result
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
def _audit_domain_language(args: argparse.Namespace) -> dict[str, Any]:
|
|
456
|
+
root, _source, payload = _read_domain_language_for_command(args)
|
|
457
|
+
result = build_domain_language_impact_audit(
|
|
458
|
+
payload,
|
|
459
|
+
changed_term_ids=args.term_id,
|
|
460
|
+
changed_paths=args.changed_path,
|
|
461
|
+
project_root=root,
|
|
462
|
+
)
|
|
463
|
+
if args.out:
|
|
464
|
+
output = Path(args.out)
|
|
465
|
+
if not output.is_absolute():
|
|
466
|
+
output = root / output
|
|
467
|
+
_ensure_output_contained(output, root)
|
|
468
|
+
write_json_create(output, result)
|
|
469
|
+
return result
|
|
470
|
+
|
|
471
|
+
|
|
405
472
|
def _dispatch_preset(args: argparse.Namespace) -> dict[str, Any]:
|
|
406
473
|
root = Path(getattr(args, "project_root", ".")).resolve()
|
|
407
474
|
if args.preset_command == "list":
|