agent-lifecycle-kit 1.88.0__tar.gz → 2.0.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.88.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-2.0.0}/PKG-INFO +7 -7
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/README.md +6 -6
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/manifest.json +5 -5
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/pyproject.toml +1 -1
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/_version.py +1 -1
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/qualification.py +152 -14
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/workflow_bridge.py +6 -6
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/contracts.py +151 -16
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/qualification.py +72 -8
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/command_registry.py +0 -1
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_lifecycle.py +14 -102
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/lifecycle_parsers.py +8 -39
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/parsers.py +0 -33
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/compiler/__init__.py +3 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/compiler/output_contract.py +67 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/compiler/small_model_packets.py +19 -30
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/compatibility.py +265 -54
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/host_capability_schemas.py +1 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/contracts/legacy_runner_schemas.py +115 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/lifecycle_action_catalog.py +10 -10
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/contracts/runner_schemas.py +9 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/runner_worktree_schemas.py +94 -8
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/schemas.py +8 -4
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/contracts/structured_result_schemas.py +395 -0
- agent_lifecycle_kit-1.88.0/src/agent_lifecycle/contracts/runner_schemas.py → agent_lifecycle_kit-2.0.0/src/agent_lifecycle/contracts/workflow_run_schemas.py +11 -6
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/capabilities.py +1 -1
- {agent_lifecycle_kit-1.88.0/src/agent_lifecycle/runner → agent_lifecycle_kit-2.0.0/src/agent_lifecycle/host_protocol}/sandbox_receipts.py +80 -27
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/host_protocol/structured_results.py +85 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/cost_collection.py +1 -1
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/migration/__init__.py +13 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/migration/legacy_runner.py +403 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/task_compatibility.py +39 -20
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/runner/__init__.py +23 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/runner/core.py +74 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/runner/sandbox_receipts.py +9 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/__init__.py +6 -1
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/artifacts.py +83 -0
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/workflow/managed_runner.py +11 -0
- agent_lifecycle_kit-1.88.0/src/agent_lifecycle/workflow/managed_runner.py → agent_lifecycle_kit-2.0.0/src/agent_lifecycle/workflow/run.py +4 -4
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/sandbox_policy.py +5 -7
- agent_lifecycle_kit-2.0.0/src/agent_lifecycle/workflow/sandbox_receipts.py +42 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/transition_contract.py +2 -2
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0/src/agent_lifecycle_kit.egg-info}/PKG-INFO +7 -7
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle_kit.egg-info/SOURCES.txt +10 -1
- agent_lifecycle_kit-1.88.0/src/agent_lifecycle/runner/__init__.py +0 -47
- agent_lifecycle_kit-1.88.0/src/agent_lifecycle/runner/attempt_snapshots.py +0 -280
- agent_lifecycle_kit-1.88.0/src/agent_lifecycle/runner/core.py +0 -778
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/LICENSE +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/NOTICE +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/README.md +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt01-planning/oracle.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt01-planning/task.md +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt02-architecture-review/oracle.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt02-architecture-review/task.md +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt03-bug-forensics/oracle.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt03-bug-forensics/task.md +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt04-s1-managed-task/oracle.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt04-s1-managed-task/task.md +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/oracle.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/rt05-s2-evidence-task/task.md +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/setup.cfg +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/__main__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/agent_plugin_probe.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/contracts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/env.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/external_check.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/launch_execution.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/launch_preflight.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/launcher.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/lifecycle_control.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/local_launch_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/planning_launch.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/planning_session.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/process.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/process_capture.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/process_control.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/process_groups.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/process_telemetry.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/redaction.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/session_store.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/start_input.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/start_receipts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/start_routing.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/task_intake.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/unified_start.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/adapter_sessions/worktree_identity.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/bug_forensics.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/external_checks.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/implementation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/ownership.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/package.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/proof_chain.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/proof_findings.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/proof_integrity.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/audit/review_verdict.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/comparison.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/evaluator.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/oracles.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/reporting.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/benchmarks/stratification.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/changesets/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/changesets/git.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/changesets/snapshot.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/adapter.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/benchmarks.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_adapters.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_contracts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_metrics.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_observability.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_planning.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/dispatch_research.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/errors.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/followup.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/host_launch.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/main.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/metrics_parser.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/observability_parsers.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/planning_parsers.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/policy.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/progress_hooks.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/project.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/research.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/start.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/strategy.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/cli/worktree.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/compiler/task_packets.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/checkpoint_store.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/checkpoints.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/episode_retrieval.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/external_memory.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/profiles.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/rendering.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/context/thread_bridge_context.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/adapter_contract_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/adapter_event_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/adapter_session_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/adapter_task_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/agent_plugin_qualification_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/audit_optimization_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/audit_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/benchmark_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/bug_forensics_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/canonical.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/context_checkpoint_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/context_model_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/core_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/cross_check_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/errors.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/evidence_import_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/execution_strategy_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/external_check_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/finding_check_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/goal_validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/implementation_audit_validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/import_dialect_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/launch_qualification.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/lifecycle_control_definitions.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/lifecycle_control_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/lifecycle_control_validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/local_launch_validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/metric_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/ownership_paths.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/paths.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/performance_limits.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/persistence.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/plan_contract_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/plan_delta_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/plan_manifest_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/planning_launch_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/policy_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/process_execution_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/process_redaction.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/progress_bridge_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/progress_hook_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/project_profile_preset_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/project_profile_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/proof_integrity_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/proof_validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/public_locators.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/quality_modes.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/redaction.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/release_contract_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/research_evidence_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/review_mesh_recommendation_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/review_mesh_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/review_quality_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/review_verdict.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/sandbox_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/schema_builders.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/status_goal_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/task_template_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/thread_bridge_schema_definitions.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/thread_bridge_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/thread_bridge_validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/token_estimation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/usage_export_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/workflow_artifact_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/workflow_authorization_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/contracts/workflow_state_schemas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/external-checks/declared-dependencies.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/external-checks/import-boundaries.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/external-checks/module-dependencies.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/lifecycle-baselines.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/model-routing-profile.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/feature-implementation.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/quick-change.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/project-workflow-presets/research-review.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/risk-execution-policy.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/data/profiles/small-context-profile.v1.json +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/diagnostics/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/diagnostics/bundles.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/diagnostics/installation_catalog.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/diagnostics/readiness.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/evidence_index/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/evidence_index/core.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/evidence_index/episode_index.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/evidence_index/external_context.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/followup/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/followup/records.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/freeze/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/freeze/locks.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/freeze/package_integrity.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/goal/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/goal/records.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/goal/view.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/acp_capability.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/agent_plugin_qualification.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/context_events.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/contracts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/event_capture.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/events.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_claude.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_codex.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_common.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_cursor.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_gemini_cli.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_hermes.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_kimi_code.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_opencode.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/inspection_qwen_code.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/lifecycle_control.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/lifecycle_control_qualification.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/lifecycle_gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/process_port.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/receipts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/scaffold.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/thread_bridge.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/usage_normalizers.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/host_protocol/validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/agentskills_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/bmad_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/constitution_adr.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/dialect_profiles.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/external_agent.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/external_dialects.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/external_workflow.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/multi_markdown.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/openspec_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/planning.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/spec_kit_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/imports/spec_kitty_profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/audit_optimization.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/audit_samples.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/costs.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/outcome_index.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/phase_resources.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/recommendations.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/regression_signals.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/metrics/usage_export.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/model_routing/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/model_routing/profiles.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/model_routing/receipts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/model_routing/resolver.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/__main__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/authority.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/canonical.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/cli.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/ed25519.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/errors.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/git_objects.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/matching.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/paths.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/policy.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/receipt.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/scanner.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/neutrality/test_runner.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/acceptance_markdown.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/completeness.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/continuity.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/deltas.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/manifest_contract.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/templates.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/tiering.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/traceability.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/planning/verification.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/adaptive_lifecycle.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/apply.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/execution_strategy.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/proposals.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/quality_floor.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/risk_execution.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/runtime_receipts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/policy/thread_bridge.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/project/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/project/guidance.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/project/merge.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/project/presets.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/project/principles.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/project/profile.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/py.typed +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/bug_forensics.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/bug_forensics_advisor.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/bug_forensics_recipes.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/cross_check.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/external_checks.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/failure_classification.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/quality/packs.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/change_summary.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/event_feed.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/execution_resources.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/progress_bridge.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/progress_hooks.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/progress_terminal.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/progress_view.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/status_view.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/reporting/usage_export.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/research/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/research/evidence.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/research/provenance.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/research/validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/resources.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review/validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/assignments.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/contracts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/operator_templates.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/quorum.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/recommendation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/results.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/review_mesh/synthesis.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/specification/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/specification/completion_check.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/specification/completion_gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/specification/completion_signal.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/specification/validation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/authorization.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/budget_decisions.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/budget_policy.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/budget_receipts.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/bug_forensics_gates.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/checkpoint_gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/controller.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/events.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/final_proof_integrity.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/finalization.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/gates.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/implementation_audit_gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/initialization.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/leases.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/lineage.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/model_usage.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/next_action.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/operation_kernel.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/plan_adoption.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/query.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/review_mesh_gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/reviews.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/risk_execution_gate.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/run_transitions.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/selectors.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/state.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/task_outcomes.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/workflow/task_transitions.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/worktree/__init__.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle/worktree/isolation.py +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle_kit.egg-info/dependency_links.txt +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle_kit.egg-info/entry_points.txt +0 -0
- {agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/src/agent_lifecycle_kit.egg-info/top_level.txt +0 -0
{agent_lifecycle_kit-1.88.0/src/agent_lifecycle_kit.egg-info → agent_lifecycle_kit-2.0.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-lifecycle-kit
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2.0.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==
|
|
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.0.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) 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).
|
|
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,8 +187,9 @@ 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 runner recovery receipts add evidence
|
|
191
|
-
or plan enables them;
|
|
190
|
+
- Cross-check, Review Mesh and historical runner recovery receipts add evidence
|
|
191
|
+
when a task or plan enables them; legacy runner records are converted
|
|
192
|
+
read-only and the operator chooses the review depth.
|
|
192
193
|
|
|
193
194
|
## Documentation
|
|
194
195
|
|
|
@@ -196,7 +197,6 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
|
|
|
196
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).
|
|
197
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
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).
|
|
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
|
+
- 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
201
|
- Release assets: [Task templates](templates/tasks/README.md), [Neutrality scanning](docs/reference/neutrality.md), and [Release security](docs/security/release-security.md).
|
|
201
|
-
|
|
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==
|
|
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.0.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) 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).
|
|
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,8 +165,9 @@ 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 runner recovery receipts add evidence
|
|
169
|
-
or plan enables them;
|
|
168
|
+
- Cross-check, Review Mesh and historical runner recovery receipts add evidence
|
|
169
|
+
when a task or plan enables them; legacy runner records are converted
|
|
170
|
+
read-only and the operator chooses the review depth.
|
|
170
171
|
|
|
171
172
|
## Documentation
|
|
172
173
|
|
|
@@ -174,7 +175,6 @@ Adapter installation and support-level details live in [Adapter install](docs/ad
|
|
|
174
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).
|
|
175
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
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).
|
|
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
|
+
- 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
179
|
- Release assets: [Task templates](templates/tasks/README.md), [Neutrality scanning](docs/reference/neutrality.md), and [Release security](docs/security/release-security.md).
|
|
179
|
-
|
|
180
180
|
Apache-2.0. See [LICENSE](LICENSE).
|
{agent_lifecycle_kit-1.88.0 → agent_lifecycle_kit-2.0.0}/benchmarks/reference-tasks/manifest.json
RENAMED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
"suiteId": "alk-core-reference",
|
|
4
4
|
"suiteVersion": "1.0.0",
|
|
5
5
|
"tasks": [
|
|
6
|
-
{"id": "rt01-planning", "version": "1.0.0", "family": "planning", "tier": "S0", "shape": "planning", "taskPath": "rt01-planning/task.md", "oraclePath": "rt01-planning/oracle.json"},
|
|
7
|
-
{"id": "rt02-architecture-review", "version": "1.0.0", "family": "architecture-review", "tier": "S2", "shape": "review", "taskPath": "rt02-architecture-review/task.md", "oraclePath": "rt02-architecture-review/oracle.json"},
|
|
8
|
-
{"id": "rt03-bug-forensics", "version": "1.0.0", "family": "bug-forensics", "tier": "S1", "shape": "investigation", "taskPath": "rt03-bug-forensics/task.md", "oraclePath": "rt03-bug-forensics/oracle.json"},
|
|
9
|
-
{"id": "rt04-s1-managed-task", "version": "1.0.0", "family": "s1-managed-task", "tier": "S1", "shape": "implementation", "taskPath": "rt04-s1-managed-task/task.md", "oraclePath": "rt04-s1-managed-task/oracle.json"},
|
|
10
|
-
{"id": "rt05-s2-evidence-task", "version": "1.0.0", "family": "s2-evidence-task", "tier": "S2", "shape": "evidence", "taskPath": "rt05-s2-evidence-task/task.md", "oraclePath": "rt05-s2-evidence-task/oracle.json"}
|
|
6
|
+
{"id": "rt01-planning", "version": "1.0.0", "family": "planning", "tier": "S0", "shape": "planning", "taskPath": "rt01-planning/task.md", "oraclePath": "rt01-planning/oracle.json", "structuredResult": {"operationId": "reference-evaluation", "requiredModes": ["JSON_ENFORCED", "VALIDATED_TEXT"], "fixtureClasses": ["positive", "boundary", "malformed"]}},
|
|
7
|
+
{"id": "rt02-architecture-review", "version": "1.0.0", "family": "architecture-review", "tier": "S2", "shape": "review", "taskPath": "rt02-architecture-review/task.md", "oraclePath": "rt02-architecture-review/oracle.json", "structuredResult": {"operationId": "reference-evaluation", "requiredModes": ["SCHEMA_ENFORCED", "JSON_ENFORCED"], "fixtureClasses": ["positive", "boundary", "malformed"]}},
|
|
8
|
+
{"id": "rt03-bug-forensics", "version": "1.0.0", "family": "bug-forensics", "tier": "S1", "shape": "investigation", "taskPath": "rt03-bug-forensics/task.md", "oraclePath": "rt03-bug-forensics/oracle.json", "structuredResult": {"operationId": "reference-evaluation", "requiredModes": ["JSON_ENFORCED", "VALIDATED_TEXT"], "fixtureClasses": ["positive", "boundary", "malformed"]}},
|
|
9
|
+
{"id": "rt04-s1-managed-task", "version": "1.0.0", "family": "s1-managed-task", "tier": "S1", "shape": "implementation", "taskPath": "rt04-s1-managed-task/task.md", "oraclePath": "rt04-s1-managed-task/oracle.json", "structuredResult": {"operationId": "reference-evaluation", "requiredModes": ["SCHEMA_ENFORCED", "JSON_ENFORCED"], "fixtureClasses": ["positive", "boundary", "malformed"]}},
|
|
10
|
+
{"id": "rt05-s2-evidence-task", "version": "1.0.0", "family": "s2-evidence-task", "tier": "S2", "shape": "evidence", "taskPath": "rt05-s2-evidence-task/task.md", "oraclePath": "rt05-s2-evidence-task/oracle.json", "structuredResult": {"operationId": "reference-evaluation", "requiredModes": ["SCHEMA_ENFORCED", "JSON_ENFORCED"], "fixtureClasses": ["positive", "boundary", "malformed"]}}
|
|
11
11
|
],
|
|
12
12
|
"productionPromotionClaimed": false
|
|
13
13
|
}
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "agent-lifecycle-kit"
|
|
7
|
-
version = "
|
|
7
|
+
version = "2.0.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"
|
|
@@ -8,11 +8,15 @@ from typing import Any
|
|
|
8
8
|
|
|
9
9
|
from agent_lifecycle.contracts import LifecycleError, canonical_digest, read_json_object, write_json_create
|
|
10
10
|
from agent_lifecycle.contracts.launch_qualification import (
|
|
11
|
-
QUALIFICATION_POLICY_SCHEMA,
|
|
12
11
|
QUALIFICATION_RECEIPT_SCHEMA,
|
|
13
|
-
QUALIFIED_PROFILE_STATUS,
|
|
14
12
|
validate_qualification_policy,
|
|
15
13
|
)
|
|
14
|
+
from agent_lifecycle.contracts.structured_result_schemas import (
|
|
15
|
+
STRUCTURED_RESULT_SELECTION_SCHEMA,
|
|
16
|
+
build_structured_result_capability,
|
|
17
|
+
select_structured_result_mode,
|
|
18
|
+
validate_structured_result_selection,
|
|
19
|
+
)
|
|
16
20
|
from agent_lifecycle.contracts.validation import load_bounded_literal_profile
|
|
17
21
|
|
|
18
22
|
_VERSION = re.compile(r"(?<![0-9])([0-9]+\.[0-9]+\.[0-9]+)(?![0-9])")
|
|
@@ -43,7 +47,6 @@ def load_shipped_launch_profile(adapter_id: str, *, repository_root: Path | None
|
|
|
43
47
|
raise LifecycleError("qualified-launch-adapter-invalid", "adapter id is invalid")
|
|
44
48
|
root = (repository_root or Path.cwd()).resolve()
|
|
45
49
|
adapter_root = root / "adapters" / adapter_id
|
|
46
|
-
path = adapter_root / "launch_profile.py"
|
|
47
50
|
profile = load_bounded_literal_profile(
|
|
48
51
|
Path("launch_profile.py"),
|
|
49
52
|
root=adapter_root,
|
|
@@ -75,10 +78,7 @@ def build_qualification_receipt(
|
|
|
75
78
|
policy = profile.get("qualification")
|
|
76
79
|
if not isinstance(policy, dict):
|
|
77
80
|
raise LifecycleError("qualified-launch-policy-missing", "profile does not require qualification")
|
|
78
|
-
combined = "\n".join(
|
|
79
|
-
str(probe_receipt.get(stream, {}).get("tail", ""))
|
|
80
|
-
for stream in ("stdout", "stderr")
|
|
81
|
-
)
|
|
81
|
+
combined = "\n".join(str(probe_receipt.get(stream, {}).get("tail", "")) for stream in ("stdout", "stderr"))
|
|
82
82
|
match = _VERSION.search(combined)
|
|
83
83
|
actual = match.group(1) if match else None
|
|
84
84
|
expected = policy.get("expectedVersion")
|
|
@@ -88,7 +88,9 @@ def build_qualification_receipt(
|
|
|
88
88
|
if actual is None:
|
|
89
89
|
blockers.append({"code": "qualified-launch-version-missing"})
|
|
90
90
|
elif actual != expected:
|
|
91
|
-
blockers.append(
|
|
91
|
+
blockers.append(
|
|
92
|
+
{"code": "qualified-launch-version-mismatch", "expectedVersion": expected, "actualVersion": actual}
|
|
93
|
+
)
|
|
92
94
|
body = {
|
|
93
95
|
"schemaVersion": QUALIFICATION_RECEIPT_SCHEMA,
|
|
94
96
|
"status": "PASS" if not blockers else "FAIL",
|
|
@@ -139,13 +141,17 @@ def require_qualification_receipt(
|
|
|
139
141
|
return None
|
|
140
142
|
blockers = validate_qualification_policy(profile)
|
|
141
143
|
if blockers:
|
|
142
|
-
raise LifecycleError(
|
|
144
|
+
raise LifecycleError(
|
|
145
|
+
"qualified-launch-policy-invalid", "qualification policy is invalid", {"blockers": blockers}
|
|
146
|
+
)
|
|
143
147
|
path = project_root.resolve() / ".alk" / "host-launch" / policy["receiptFile"]
|
|
144
148
|
try:
|
|
145
149
|
resolved = path.resolve(strict=True)
|
|
146
150
|
resolved.relative_to((project_root.resolve() / ".alk" / "host-launch").resolve(strict=True))
|
|
147
151
|
except (OSError, ValueError) as exc:
|
|
148
|
-
raise LifecycleError(
|
|
152
|
+
raise LifecycleError(
|
|
153
|
+
"qualified-launch-receipt-missing", "run host-launch preflight before managed launch"
|
|
154
|
+
) from exc
|
|
149
155
|
if path.is_symlink() or not path.is_file():
|
|
150
156
|
raise LifecycleError("qualified-launch-receipt-path", "qualification receipt must be a regular file")
|
|
151
157
|
receipt = read_json_object(path, label="host launch qualification receipt")
|
|
@@ -160,10 +166,17 @@ def require_qualification_receipt(
|
|
|
160
166
|
"modelCallsStarted": False,
|
|
161
167
|
"productionPromotionClaimed": False,
|
|
162
168
|
}
|
|
163
|
-
if any(receipt.get(key) != value for key, value in expected.items()) or receipt.get(
|
|
164
|
-
|
|
169
|
+
if any(receipt.get(key) != value for key, value in expected.items()) or receipt.get(
|
|
170
|
+
"receiptDigest"
|
|
171
|
+
) != canonical_digest({k: v for k, v in receipt.items() if k != "receiptDigest"}):
|
|
172
|
+
raise LifecycleError(
|
|
173
|
+
"qualified-launch-receipt-invalid", "qualification receipt does not bind this profile and version"
|
|
174
|
+
)
|
|
165
175
|
if executable_identity is not None and receipt.get("executableIdentity") != executable_identity:
|
|
166
|
-
raise LifecycleError(
|
|
176
|
+
raise LifecycleError(
|
|
177
|
+
"qualified-launch-executable-identity-mismatch",
|
|
178
|
+
"qualification receipt does not bind the current executable identity",
|
|
179
|
+
)
|
|
167
180
|
if receipt.get("blockers") != []:
|
|
168
181
|
raise LifecycleError("qualified-launch-receipt-invalid", "qualification receipt contains blockers")
|
|
169
182
|
return receipt
|
|
@@ -198,7 +211,13 @@ def require_planning_qualification_receipt(
|
|
|
198
211
|
raise LifecycleError(
|
|
199
212
|
"planning-launch-qualification-required",
|
|
200
213
|
"planning launch is unsupported until exact-version live qualification passes",
|
|
201
|
-
{
|
|
214
|
+
{
|
|
215
|
+
"preparationCommand": (
|
|
216
|
+
"agent-lifecycle adapter launch-profile "
|
|
217
|
+
f"--adapter {profile.get('adapterId')} "
|
|
218
|
+
f"--out .alk/host-launch/{profile.get('adapterId')}.json"
|
|
219
|
+
)
|
|
220
|
+
},
|
|
202
221
|
)
|
|
203
222
|
receipt = require_qualification_receipt(
|
|
204
223
|
project_root=project_root,
|
|
@@ -212,3 +231,122 @@ def require_planning_qualification_receipt(
|
|
|
212
231
|
"local version receipt is not bound to qualified planning support",
|
|
213
232
|
)
|
|
214
233
|
return receipt
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
def build_structured_result_qualification_receipt(
|
|
237
|
+
*,
|
|
238
|
+
operation_id: str,
|
|
239
|
+
adapter_id: str,
|
|
240
|
+
descriptor_digest: str,
|
|
241
|
+
host_version: str,
|
|
242
|
+
model_class: str,
|
|
243
|
+
required_mode: str,
|
|
244
|
+
required_schema_digest: str,
|
|
245
|
+
capability_manifest_digest: str,
|
|
246
|
+
capability_level: str,
|
|
247
|
+
evidence_digest: str,
|
|
248
|
+
measured_run_count: int,
|
|
249
|
+
plan_digest: str,
|
|
250
|
+
lock_digest: str,
|
|
251
|
+
) -> dict[str, Any]:
|
|
252
|
+
"""Build an advisory, operation-bound structured-result qualification receipt."""
|
|
253
|
+
|
|
254
|
+
capability = build_structured_result_capability(
|
|
255
|
+
operation_id=operation_id,
|
|
256
|
+
adapter_id=adapter_id,
|
|
257
|
+
descriptor_digest=descriptor_digest,
|
|
258
|
+
host_version=host_version,
|
|
259
|
+
model_class=model_class,
|
|
260
|
+
capability_level=capability_level,
|
|
261
|
+
qualification_status="QUALIFIED" if capability_level != "UNAVAILABLE" else "UNAVAILABLE",
|
|
262
|
+
capability_manifest_digest=capability_manifest_digest,
|
|
263
|
+
evidence_digest=evidence_digest,
|
|
264
|
+
measured_run_count=measured_run_count,
|
|
265
|
+
)
|
|
266
|
+
selection = select_structured_result_mode(
|
|
267
|
+
[capability],
|
|
268
|
+
operation_id=operation_id,
|
|
269
|
+
required_mode=required_mode,
|
|
270
|
+
adapter_id=adapter_id,
|
|
271
|
+
descriptor_digest=descriptor_digest,
|
|
272
|
+
host_version=host_version,
|
|
273
|
+
model_class=model_class,
|
|
274
|
+
capability_manifest_digest=capability_manifest_digest,
|
|
275
|
+
required_schema_digest=required_schema_digest,
|
|
276
|
+
lineage={"planDigest": plan_digest, "lockDigest": lock_digest},
|
|
277
|
+
)
|
|
278
|
+
body = {
|
|
279
|
+
"schemaVersion": "agent-structured-result-qualification-receipt.v1",
|
|
280
|
+
"status": "PASS" if selection["status"] == "PASS" else "UNAVAILABLE",
|
|
281
|
+
"qualificationStatus": "QUALIFIED" if selection["status"] == "PASS" else "UNAVAILABLE",
|
|
282
|
+
"operationId": operation_id,
|
|
283
|
+
"adapterId": adapter_id,
|
|
284
|
+
"descriptorDigest": descriptor_digest,
|
|
285
|
+
"hostVersion": host_version,
|
|
286
|
+
"modelClass": model_class,
|
|
287
|
+
"capabilityManifestDigest": capability_manifest_digest,
|
|
288
|
+
"requiredMode": required_mode,
|
|
289
|
+
"requiredSchemaDigest": required_schema_digest,
|
|
290
|
+
"planDigest": plan_digest,
|
|
291
|
+
"lockDigest": lock_digest,
|
|
292
|
+
"capability": capability,
|
|
293
|
+
"selection": selection,
|
|
294
|
+
"advisoryOnly": True,
|
|
295
|
+
"automaticRouteAdoptionEligible": False,
|
|
296
|
+
"modelCallsStarted": False,
|
|
297
|
+
"hostLaunchStarted": False,
|
|
298
|
+
"productionPromotionClaimed": False,
|
|
299
|
+
}
|
|
300
|
+
return {**body, "receiptDigest": canonical_digest(body)}
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
def validate_structured_result_qualification_receipt(
|
|
304
|
+
receipt: dict[str, Any], *, expected: dict[str, Any] | None = None
|
|
305
|
+
) -> dict[str, Any]:
|
|
306
|
+
"""Validate structured-result qualification without granting workflow authority."""
|
|
307
|
+
|
|
308
|
+
blockers: list[dict[str, Any]] = []
|
|
309
|
+
if receipt.get("schemaVersion") != "agent-structured-result-qualification-receipt.v1":
|
|
310
|
+
blockers.append({"code": "structured-result-qualification-schema"})
|
|
311
|
+
if receipt.get("advisoryOnly") is not True or receipt.get("automaticRouteAdoptionEligible") is not False:
|
|
312
|
+
blockers.append({"code": "structured-result-qualification-authority"})
|
|
313
|
+
if receipt.get("modelCallsStarted") is not False or receipt.get("hostLaunchStarted") is not False:
|
|
314
|
+
blockers.append({"code": "structured-result-qualification-side-effect"})
|
|
315
|
+
for key, value in (expected or {}).items():
|
|
316
|
+
if receipt.get(key) != value:
|
|
317
|
+
blockers.append({"code": "structured-result-qualification-lineage", "field": key})
|
|
318
|
+
selection = receipt.get("selection")
|
|
319
|
+
if not isinstance(selection, dict):
|
|
320
|
+
blockers.append({"code": "structured-result-qualification-selection"})
|
|
321
|
+
else:
|
|
322
|
+
selection_validation = validate_structured_result_selection(
|
|
323
|
+
selection,
|
|
324
|
+
expected={
|
|
325
|
+
key: receipt.get(key)
|
|
326
|
+
for key in (
|
|
327
|
+
"operationId",
|
|
328
|
+
"adapterId",
|
|
329
|
+
"descriptorDigest",
|
|
330
|
+
"hostVersion",
|
|
331
|
+
"modelClass",
|
|
332
|
+
"capabilityManifestDigest",
|
|
333
|
+
"requiredSchemaDigest",
|
|
334
|
+
)
|
|
335
|
+
if receipt.get(key) is not None
|
|
336
|
+
},
|
|
337
|
+
)
|
|
338
|
+
if selection_validation["status"] != "PASS":
|
|
339
|
+
blockers.append({"code": "structured-result-qualification-selection-invalid"})
|
|
340
|
+
if receipt.get("status") == "PASS" and selection.get("schemaVersion") != STRUCTURED_RESULT_SELECTION_SCHEMA:
|
|
341
|
+
blockers.append({"code": "structured-result-qualification-selection-schema"})
|
|
342
|
+
expected_digest = canonical_digest({key: value for key, value in receipt.items() if key != "receiptDigest"})
|
|
343
|
+
if receipt.get("receiptDigest") != expected_digest:
|
|
344
|
+
blockers.append({"code": "structured-result-qualification-digest"})
|
|
345
|
+
body = {
|
|
346
|
+
"schemaVersion": "agent-structured-result-qualification-validation.v1",
|
|
347
|
+
"status": "PASS" if not blockers else "FAIL",
|
|
348
|
+
"qualificationStatus": receipt.get("qualificationStatus"),
|
|
349
|
+
"blockers": blockers,
|
|
350
|
+
"productionPromotionClaimed": False,
|
|
351
|
+
}
|
|
352
|
+
return {**body, "validationDigest": canonical_digest(body)}
|
|
@@ -11,7 +11,7 @@ from agent_lifecycle.adapter_sessions.session_store import create_session, load_
|
|
|
11
11
|
from agent_lifecycle.contracts import canonical_digest, read_json_object
|
|
12
12
|
from agent_lifecycle.policy.risk_execution import derive_risk_execution_profile
|
|
13
13
|
from agent_lifecycle.resources import builtin_profile_path
|
|
14
|
-
from agent_lifecycle.workflow import
|
|
14
|
+
from agent_lifecycle.workflow import run_workflow_step
|
|
15
15
|
from agent_lifecycle.workflow.transition_contract import validate_action_catalog
|
|
16
16
|
|
|
17
17
|
|
|
@@ -35,7 +35,7 @@ def managed_adapter_run(
|
|
|
35
35
|
) -> dict[str, Any]:
|
|
36
36
|
_descriptor_path, descriptor = load_adapter_descriptor(adapter_id, descriptor_path)
|
|
37
37
|
profile = managed_launch_profile(descriptor)
|
|
38
|
-
|
|
38
|
+
workflow_receipt = run_workflow_step(
|
|
39
39
|
state_path=state_path,
|
|
40
40
|
manifest_path=manifest_path,
|
|
41
41
|
lock_path=lock_path,
|
|
@@ -44,8 +44,8 @@ def managed_adapter_run(
|
|
|
44
44
|
source_revision=source_revision,
|
|
45
45
|
reason=f"managed adapter run for {task_id}",
|
|
46
46
|
)
|
|
47
|
-
next_action =
|
|
48
|
-
if
|
|
47
|
+
next_action = workflow_receipt.get("nextAction")
|
|
48
|
+
if workflow_receipt["status"] == "PASS" and requested_risk is not None:
|
|
49
49
|
risk_profile = derive_risk_execution_profile(
|
|
50
50
|
manifest=read_json_object(manifest_path, label="frozen plan manifest"),
|
|
51
51
|
state=read_json_object(state_path, label="workflow state"),
|
|
@@ -84,7 +84,7 @@ def managed_adapter_run(
|
|
|
84
84
|
session = create_session(
|
|
85
85
|
adapter_id=adapter_id,
|
|
86
86
|
mode="MANAGED_TASK",
|
|
87
|
-
status="READY" if
|
|
87
|
+
status="READY" if workflow_receipt["status"] == "PASS" else "BLOCKED",
|
|
88
88
|
launch_profile=profile,
|
|
89
89
|
session_root=session_root,
|
|
90
90
|
state_identity=state_identity,
|
|
@@ -100,7 +100,7 @@ def managed_adapter_run(
|
|
|
100
100
|
managed_workflow_proof=proof,
|
|
101
101
|
progress_hook_default="stderr",
|
|
102
102
|
host_launch_started=False,
|
|
103
|
-
blockers=
|
|
103
|
+
blockers=workflow_receipt.get("blockers", []),
|
|
104
104
|
next_action=next_action,
|
|
105
105
|
)
|
|
106
106
|
|