eawf 0.7.0.dev1__tar.gz → 0.7.0.dev2__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.
- eawf-0.7.0.dev2/.ea/artifacts/audits/2026-09-16-A-P32-closeout.md +78 -0
- eawf-0.7.0.dev2/.ea/artifacts/evidence/2026-09-11-dev1-burn/2026-09-11-burn-basis.md +52 -0
- eawf-0.7.0.dev2/.ea/artifacts/evidence/2026-09-11-dev2-cut/2026-09-11-dev2-publication-handoff.md +63 -0
- eawf-0.7.0.dev2/.ea/artifacts/incidents/2026-09-11-dev1-published-outside-release-machinery.md +83 -0
- eawf-0.7.0.dev2/.ea/artifacts/research/2026-09-11-dev2-gate-profile-binding.md +110 -0
- eawf-0.7.0.dev2/.ea/config.yaml +38 -0
- eawf-0.7.0.dev2/.ea/state.json +180589 -0
- eawf-0.7.0.dev2/.ea/store/audit.jsonl +107 -0
- eawf-0.7.0.dev2/.ea/store/auditor_report.jsonl +33 -0
- eawf-0.7.0.dev2/.ea/store/evidence.jsonl +859 -0
- eawf-0.7.0.dev2/.ea/store/gate_receipt.jsonl +82 -0
- eawf-0.7.0.dev2/.ea/store/incident.jsonl +36 -0
- eawf-0.7.0.dev2/.ea/store/release_record.jsonl +3 -0
- eawf-0.7.0.dev2/.github/workflows/ci.yaml +378 -0
- eawf-0.7.0.dev2/.github/workflows/console-replay.yaml +46 -0
- eawf-0.7.0.dev2/.github/workflows/plugin-release.yaml +729 -0
- eawf-0.7.0.dev2/.github/workflows/release.yaml +380 -0
- eawf-0.7.0.dev2/.gitignore +122 -0
- eawf-0.7.0.dev2/.pre-commit-config.yaml +399 -0
- eawf-0.7.0.dev2/.vale/styles/config/vocabularies/eawf/accept.txt +157 -0
- eawf-0.7.0.dev2/CHANGELOG.md +406 -0
- eawf-0.7.0.dev2/PKG-INFO +120 -0
- eawf-0.7.0.dev2/docs/reference/autogen/cli.md +695 -0
- eawf-0.7.0.dev2/docs/reference/autogen/enums.md +65 -0
- eawf-0.7.0.dev2/docs/reference/autogen/event.schema.json +211 -0
- eawf-0.7.0.dev2/docs/reference/snapshot-gate.md +34 -0
- eawf-0.7.0.dev2/justfile +100 -0
- eawf-0.7.0.dev2/pyproject.toml +645 -0
- eawf-0.7.0.dev2/src/eawf/_version.py +22 -0
- eawf-0.7.0.dev2/src/eawf/kernel/identity/__init__.py +71 -0
- eawf-0.7.0.dev2/src/eawf/kernel/identity/alias.py +257 -0
- eawf-0.7.0.dev2/src/eawf/kernel/identity/errors.py +86 -0
- eawf-0.7.0.dev2/src/eawf/kernel/identity/keys.py +408 -0
- eawf-0.7.0.dev2/src/eawf/kernel/identity/urn.py +286 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/__init__.py +9 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/__init__.py +10 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/allowlist.py +132 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/apply.py +674 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/audits.py +111 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/backlog.py +425 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/canary.py +335 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/census.py +275 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/corpus.py +87 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/criteria.py +196 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/cutover.py +663 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/dispositions.py +329 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/envelopes.py +448 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/errors.py +313 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/export.py +126 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/generation.py +790 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/journal.py +338 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/lifecycle.py +1003 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/manifest.py +797 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/manifest_rows.py +884 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/measurements.py +306 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/origins.py +76 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/plan.py +475 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/plan_mode.py +1125 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/quiescence.py +240 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/recovery.py +848 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/registry.py +162 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/restore.py +492 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/rows.py +401 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/rules.py +126 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/runs.py +462 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/scrub.py +226 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/snapshot.py +374 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/status_map.py +190 -0
- eawf-0.7.0.dev2/src/eawf/kernel/migration/epoch2/validation.py +1242 -0
- eawf-0.7.0.dev2/src/eawf/kernel/release/__init__.py +36 -0
- eawf-0.7.0.dev2/src/eawf/kernel/release/checkpoint_template.py +134 -0
- eawf-0.7.0.dev2/src/eawf/kernel/release/gate_binding.py +649 -0
- eawf-0.7.0.dev2/src/eawf/kernel/release/models.py +514 -0
- eawf-0.7.0.dev2/src/eawf/kernel/release/signals.py +234 -0
- eawf-0.7.0.dev2/src/eawf/kernel/spec/__init__.py +215 -0
- eawf-0.7.0.dev2/src/eawf/kernel/spec/falsifiability.py +204 -0
- eawf-0.7.0.dev2/src/eawf/kernel/spec/promotion.py +183 -0
- eawf-0.7.0.dev2/src/eawf/kernel/spec/publication.py +446 -0
- eawf-0.7.0.dev2/src/eawf/kernel/spec/release.py +883 -0
- eawf-0.7.0.dev2/src/eawf/kernel/spec/release_config.py +588 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/canonical_sequence.py +316 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/enums.py +770 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/__init__.py +221 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/base.py +210 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/batch.py +116 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/domain_events.py +196 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/milestone.py +378 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/policy.py +202 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/run.py +405 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/task.py +159 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/track.py +212 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/transitions.py +1173 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/urns.py +211 -0
- eawf-0.7.0.dev2/src/eawf/kernel/state/epoch2/values.py +253 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/__init__.py +158 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/append.py +76 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/commit_census.py +134 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/commit_policy.py +432 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/compact.py +117 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/compaction.py +417 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/generated.py +185 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/index.py +183 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/kinds/__init__.py +70 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/kinds/event.py +172 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/kinds/events/__init__.py +102 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/kinds/events/session_closed.py +106 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/ledger.py +291 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/paths.py +135 -0
- eawf-0.7.0.dev2/src/eawf/kernel/store/tiers.py +289 -0
- eawf-0.7.0.dev2/src/eawf/kernel/validate/strict.py +231 -0
- eawf-0.7.0.dev2/src/eawf/observability/telemetry/aggregator.py +526 -0
- eawf-0.7.0.dev2/src/eawf/observability/telemetry/projector.py +505 -0
- eawf-0.7.0.dev2/src/eawf/platform/install/gitignore_writer.py +206 -0
- eawf-0.7.0.dev2/src/eawf/platform/profiles/data/quality.yaml +116 -0
- eawf-0.7.0.dev2/src/eawf/platform/registry/__init__.py +96 -0
- eawf-0.7.0.dev2/src/eawf/platform/registry/models.py +352 -0
- eawf-0.7.0.dev2/src/eawf/platform/registry/workspace.py +387 -0
- eawf-0.7.0.dev2/src/eawf/runtime/__init__.py +19 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/dispatch_runner.py +1849 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/gate_execution.py +753 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/close.py +1371 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/close_evidence.py +492 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/close_hosted.py +133 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/migration.py +200 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/registry_workspace.py +422 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/release.py +1306 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/release_context.py +134 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/release_disposition.py +302 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/spec.py +1213 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/spec_context.py +185 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/spec_convert.py +670 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/spec_repoint.py +374 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/state.py +1394 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/methods/state_close.py +1130 -0
- eawf-0.7.0.dev2/src/eawf/runtime/daemon/server.py +667 -0
- eawf-0.7.0.dev2/src/eawf/runtime/release/__init__.py +29 -0
- eawf-0.7.0.dev2/src/eawf/runtime/release/chokepoint.py +86 -0
- eawf-0.7.0.dev2/src/eawf/runtime/sandbox/env_scrub.py +355 -0
- eawf-0.7.0.dev2/src/eawf/runtime/session/store.py +675 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/close.py +340 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/hook.py +2371 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/lifecycle_iter.py +818 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/migrate.py +809 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/release.py +1343 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/spec.py +811 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/cli/commands/workspace.py +1215 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/tui/screens/help.py +480 -0
- eawf-0.7.0.dev2/src/eawf/surfaces/tui/snapshot/pilot_harness.py +1030 -0
- eawf-0.7.0.dev2/src/eawf/workflow/audit_dsl/registry.py +1222 -0
- eawf-0.7.0.dev2/src/eawf/workflow/evidence/_io.py +217 -0
- eawf-0.7.0.dev2/src/eawf/workflow/evidence/measured_contract.py +686 -0
- eawf-0.7.0.dev2/src/eawf/workflow/evidence/migration_rehearsal.py +701 -0
- eawf-0.7.0.dev2/src/eawf/workflow/lifecycle/epoch2.py +358 -0
- eawf-0.7.0.dev2/src/eawf/workflow/lifecycle/gate_repoint.py +277 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/adapters.py +641 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/admission.py +203 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/adoption.py +138 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/lifecycle.py +503 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/pipeline_receipts.py +169 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/produce.py +336 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/publication.py +624 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/publication_receipt.py +193 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/records.py +203 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/settlement.py +289 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/signal_probes.py +291 -0
- eawf-0.7.0.dev2/src/eawf/workflow/release/train.py +411 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/__init__.py +85 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/checkpoint_succession.py +187 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/gate_receipt_floor.py +202 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/gate_receipts.py +144 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/hosted_close.py +150 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/oracle.py +918 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/readiness.py +1836 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/release_probes.py +485 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/release_readiness.py +784 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/sandboxed_checks.py +292 -0
- eawf-0.7.0.dev2/src/eawf/workflow/verify/vacuous_gate.py +126 -0
- eawf-0.7.0.dev2/tests/_gate_child_helpers.py +202 -0
- eawf-0.7.0.dev2/tests/_release_helpers.py +242 -0
- eawf-0.7.0.dev2/tests/conftest.py +497 -0
- eawf-0.7.0.dev2/tests/contract/kernel/state/test_epoch2_models_strict.py +121 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/fixture/detail.json +3970 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/fixture/g.json +1285 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/fixture/proto.json +1593 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/fixture/settings.json +1963 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/normalisation-map.json +229 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-connection.json +726 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-entry.json +510 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-notifications.json +987 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-overlays.json +1359 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-routes-120.json +734 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-routes-160.json +734 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/frames-routes-80.json +734 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/index.json +36 -0
- eawf-0.7.0.dev2/tests/fixtures/console/golden/sequences/journeys.json +3287 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/milestone_create_spec.yaml +28 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/run_scopes.yaml +41 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/track_create_spec.yaml +37 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/track_policy.yaml +21 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/track_profiles.yaml +18 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/batch.mmd +22 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/milestone.mmd +14 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/release.mmd +36 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/run.mmd +17 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/seed_records.yaml +282 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/task.mmd +28 -0
- eawf-0.7.0.dev2/tests/fixtures/epoch2/transitions/track.mmd +5 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/alias-collision/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/alias-collision/snapshot/document.json +88 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/alias-collision/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/alias-collision/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/allowed_legacy_symbols.txt +53 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/ambiguous-history/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/ambiguous-history/snapshot/document.json +311 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/ambiguous-history/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/ambiguous-history/snapshot/store/audit.jsonl +1 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/ambiguous-history/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/document.json +339 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/store/audit.jsonl +1 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/store/auditor_report.jsonl +1 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/store/executor_report.jsonl +6 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/attempt-map/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/active-session/state.json +14 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/canary/epoch2-disposable-canary.json +5 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/crash-points.json +292 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/held-lease/locks/worktrees.lock +1 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/managed-worktree/state.json +14 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/pending-wal/locks/wal/wal-canary-0001.pending.json +23 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/quiescent/state.json +15 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/registry/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/registry-without-workspace/registry.json +7 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/cutover-faults/undeclared-canary/epoch2-disposable-canary.json +5 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-empty-collections/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-empty-collections/snapshot/document.json +283 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-empty-collections/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-empty-collections/snapshot/store/audit.jsonl +3 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-empty-collections/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/backlog_corpus.json +3459 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/config/overlay.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/document.json +4697 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/store/audit.jsonl +105 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/store/decision.jsonl +2 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-full/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-malformed/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-malformed/snapshot/document.json +83 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-malformed/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-malformed/snapshot/store/audit.jsonl +2 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch1-malformed/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/epoch2/complete-manifest.json +1153 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/live-cutover/corpus-pin.json +11 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/provenance.json +62 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/snapshot/document.json +8106 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/snapshot/store/audit.jsonl +100 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/snapshot/store/decision.jsonl +59 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/p30-i26-history/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/all-terminal/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/all-terminal/snapshot/document.json +161 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/all-terminal/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/all-terminal/snapshot/store/audit.jsonl +1 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/all-terminal/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/corrupt-reference/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/corrupt-reference/snapshot/document.json +85 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/corrupt-reference/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/corrupt-reference/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/empty-repository/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/empty-repository/snapshot/document.json +48 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/empty-repository/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/empty-repository/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/interrupted-close/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/interrupted-close/snapshot/document.json +96 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/interrupted-close/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/interrupted-close/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/minimal-active/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/minimal-active/snapshot/document.json +106 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/minimal-active/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/minimal-active/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/multi-root-workspace/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/multi-root-workspace/snapshot/document.json +105 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/multi-root-workspace/snapshot/registry.json +29 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/multi-root-workspace/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/open-attention/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/open-attention/snapshot/document.json +138 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/open-attention/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/open-attention/snapshot/store/audit.jsonl +2 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/open-attention/snapshot/store/decision.jsonl +1 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/open-attention/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/unknown-extension-field/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/unknown-extension-field/snapshot/document.json +85 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/unknown-extension-field/snapshot/registry.json +18 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/unknown-extension-field/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/config/base.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/config/overlay.yaml +4 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/document.json +987 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/registry.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/store/audit.jsonl +105 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/store/decision.jsonl +2 -0
- eawf-0.7.0.dev2/tests/fixtures/migration/sparse-history/snapshot/telemetry.json +10 -0
- eawf-0.7.0.dev2/tests/fixtures/registry/version1_no_workspaces.json +9 -0
- eawf-0.7.0.dev2/tests/fixtures/registry/version1_with_workspaces.json +18 -0
- eawf-0.7.0.dev2/tests/golden/audit_dsl/sample.yaml +24 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/all-terminal.json +248 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/corrupt-reference.json +16 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/empty-repository.json +248 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/interrupted-close.json +248 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/largest-supported-state.json +41 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/minimal-active.json +248 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/multi-root-workspace.json +250 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/open-attention.json +250 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/p30-i26-history.json +316 -0
- eawf-0.7.0.dev2/tests/golden/kernel/migration/rehearsal/unknown-extension-field.json +15 -0
- eawf-0.7.0.dev2/tests/golden/plugin_install/claude/settings.json +170 -0
- eawf-0.7.0.dev2/tests/golden/plugin_install/opencode/plugins/eawf.js.golden +48 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_corpus_builders.py +838 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_corpus_shapes.py +583 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_crash_apply.py +125 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_cutover_harness.py +247 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_historical_freeze.py +367 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_live_corpus.py +334 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_rehearsal.py +720 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/_rehearsal_set.py +183 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_epoch1_epoch2_inventory.py +499 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_epoch2_apply_guards.py +582 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_epoch2_plan_mode.py +403 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_epoch2_recovery_mode.py +420 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_epoch2_rollback.py +572 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_epoch2_tier_placement.py +385 -0
- eawf-0.7.0.dev2/tests/integration/kernel/migration/test_v07_rehearsal.py +1083 -0
- eawf-0.7.0.dev2/tests/integration/observability/__init__.py +1 -0
- eawf-0.7.0.dev2/tests/integration/observability/test_session_close_emitter.py +531 -0
- eawf-0.7.0.dev2/tests/integration/observability/test_telemetry_session_rebuild.py +264 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/methods/test_boundary_totality.py +265 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/methods/test_pipeline_live.py +150 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/methods/test_reproducible_build.py +387 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/test_close_fault_matrix.py +1209 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/test_close_lock_split.py +496 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/test_durable_close.py +1168 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/test_fleet_close_gates.py +398 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/test_gate_isolation.py +481 -0
- eawf-0.7.0.dev2/tests/integration/runtime/daemon/test_headless_close.py +464 -0
- eawf-0.7.0.dev2/tests/integration/runtime/release/test_tag_chokepoint.py +450 -0
- eawf-0.7.0.dev2/tests/integration/runtime/sandbox/test_child_env_scrub.py +179 -0
- eawf-0.7.0.dev2/tests/integration/surfaces/cli/test_release_cli.py +506 -0
- eawf-0.7.0.dev2/tests/integration/surfaces/test_agent_output_events.py +269 -0
- eawf-0.7.0.dev2/tests/integration/test_cli_release_tag.py +486 -0
- eawf-0.7.0.dev2/tests/integration/test_cli_workspace_registry.py +423 -0
- eawf-0.7.0.dev2/tests/integration/test_close_gate_affordance_parity.py +370 -0
- eawf-0.7.0.dev2/tests/integration/test_close_gate_evidence.py +455 -0
- eawf-0.7.0.dev2/tests/integration/test_close_gate_mockup_golden_diff.py +396 -0
- eawf-0.7.0.dev2/tests/integration/test_commit_prefix_lint_amend_e2e.py +187 -0
- eawf-0.7.0.dev2/tests/integration/test_packaging.py +823 -0
- eawf-0.7.0.dev2/tests/integration/test_snapshot_pairing_gate.py +565 -0
- eawf-0.7.0.dev2/tests/integration/test_snapshot_update.py +696 -0
- eawf-0.7.0.dev2/tests/integration/test_typer_command_cache.py +112 -0
- eawf-0.7.0.dev2/tests/integration/workflow/audit_dsl/test_registry_timeouts.py +1103 -0
- eawf-0.7.0.dev2/tests/integration/workflow/evidence/test_measured_contract_promotion.py +397 -0
- eawf-0.7.0.dev2/tests/integration/workflow/lifecycle/test_gate_repoint.py +618 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_cancel_refuses_observed_effect.py +330 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_checkpoint_cut.py +460 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_dev1_adopted_terminal.py +296 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_dev1_adoption.py +401 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_dev1_approved_on_main.py +629 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_dev1_burn.py +899 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_dev2_checkpoint.py +655 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_measured_before_build.py +394 -0
- eawf-0.7.0.dev2/tests/integration/workflow/release/test_waiver_count.py +402 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/_close_gate_helpers.py +328 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_close_receipt_floor.py +538 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_dev2_profile.py +419 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_floor_pack_integration.py +774 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_floor_pack_isolation.py +747 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_gate_execution_stability.py +387 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_gate_falsifiability.py +425 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_gate_selector_refusal.py +537 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_migration_signal.py +504 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_oracle_isolation.py +342 -0
- eawf-0.7.0.dev2/tests/integration/workflow/verify/test_release_readiness.py +337 -0
- eawf-0.7.0.dev2/tests/lint/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/lint/test_console_replay_ci_job.py +172 -0
- eawf-0.7.0.dev2/tests/lint/test_ea_commit_census.py +314 -0
- eawf-0.7.0.dev2/tests/lint/test_phase_ci_gates.py +1212 -0
- eawf-0.7.0.dev2/tests/perf/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/platform/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/platform/lint/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/platform/profiles/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/property/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/property/kernel/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/property/kernel/migration/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/property/kernel/migration/conftest.py +118 -0
- eawf-0.7.0.dev2/tests/property/kernel/migration/test_epoch2_alias_index.py +384 -0
- eawf-0.7.0.dev2/tests/property/kernel/migration/test_epoch2_idempotence.py +269 -0
- eawf-0.7.0.dev2/tests/property/kernel/migration/test_epoch2_no_fabrication.py +694 -0
- eawf-0.7.0.dev2/tests/property/kernel/migration/test_epoch2_reference_validation.py +320 -0
- eawf-0.7.0.dev2/tests/property/kernel/state/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/property/kernel/state/test_canonical_sequence_monotonic.py +189 -0
- eawf-0.7.0.dev2/tests/property/kernel/state/test_epoch2_illegal_transitions.py +135 -0
- eawf-0.7.0.dev2/tests/property/kernel/state/test_epoch2_lifecycle_recovery.py +233 -0
- eawf-0.7.0.dev2/tests/property/kernel/store/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/property/kernel/store/test_compaction_atomic.py +402 -0
- eawf-0.7.0.dev2/tests/property/test_five_consecutive_runs.py +135 -0
- eawf-0.7.0.dev2/tests/property/workflow/lifecycle/test_transition_tables.py +632 -0
- eawf-0.7.0.dev2/tests/snapshots/statusline/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/snapshots/svg/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/__init__.py +3 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/conftest.py +29 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/__init__.py +9 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/__init__.py +3 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/app.py +179 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/attention.py +187 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/derive.py +605 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/drawers/__init__.py +48 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/drawers/actions.py +30 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/drawers/go.py +20 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/drawers/inspect.py +37 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/drawers/raw.py +21 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/fixture.py +199 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/frame.py +346 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/keys.py +1272 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/__init__.py +132 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/consequence.py +82 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/draft.py +121 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/evidence.py +77 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/help.py +46 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/marker.py +87 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/palette.py +194 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/pause.py +43 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/question.py +68 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/readiness.py +43 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/overlays/resolution.py +30 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/rack.py +96 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/registry.py +300 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/__init__.py +101 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/activity.py +112 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/attention.py +144 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/backlog.py +96 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/batch_detail.py +59 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/campaign.py +265 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/campaign_artifact.py +110 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/campaign_step.py +194 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/cost_ceiling.py +53 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/crash_recovery.py +58 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/entry.py +62 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/evidence.py +132 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/evidence_digest.py +65 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/export.py +50 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/git_pr.py +70 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/health.py +87 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/history.py +70 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/history_diff.py +67 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/merge_conflict.py +59 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/milestone.py +115 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/notifications.py +53 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/receipt.py +52 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/release.py +53 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/run_detail.py +72 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/sandbox_log.py +106 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/scope_home.py +140 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/search.py +59 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/settings.py +836 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/settings_stack.py +73 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/task_detail.py +73 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/timeline.py +146 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/track.py +94 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/transcript.py +262 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/trust.py +60 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/renderers/unattended.py +92 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/seam.py +71 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/session.py +324 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/tokens.py +89 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/widgets.py +55 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/chassis/width.py +79 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/goldens.py +37 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/harness/__init__.py +3 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/harness/capture.py +20 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/harness/keymap.py +60 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/harness/replay.py +255 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/harness/settle.py +29 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/normalisation.py +134 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/console_chassis/ruff.toml +33 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/test_golden_frames.py +78 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/test_golden_journeys.py +47 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/console/test_normalisation_map.py +160 -0
- eawf-0.7.0.dev2/tests/snapshots/tui/test_pilot_harness_quiesce_w11.py +209 -0
- eawf-0.7.0.dev2/tests/tui/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/tui/test_modes_feed.py +631 -0
- eawf-0.7.0.dev2/tests/unit/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/unit/kernel/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/unit/kernel/config/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/unit/kernel/identity/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/unit/kernel/identity/test_entity_key_grammar.py +229 -0
- eawf-0.7.0.dev2/tests/unit/kernel/identity/test_legacy_alias_index.py +217 -0
- eawf-0.7.0.dev2/tests/unit/kernel/identity/test_urn_grammar.py +205 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/conftest.py +55 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_backlog_import_plan.py +172 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_backlog_obsolescence_sweep.py +202 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_backlog_resolution_classifier.py +243 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_criteria_disposition.py +174 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_cutover_scrub_gate.py +234 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_disposition_rules.py +221 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_legacy_envelopes.py +388 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_lifecycle_mapping.py +372 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_measurement_repoint.py +326 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_migration_manifest.py +737 -0
- eawf-0.7.0.dev2/tests/unit/kernel/migration/test_status_map_and_defaults.py +182 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/conftest.py +20 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_dependency_inventory.py +617 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_gate_binding.py +384 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_models.py +455 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_platform_signal.py +203 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_publication_records.py +347 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_publish_edges.py +474 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_readiness_gate_block.py +259 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_required_signals.py +278 -0
- eawf-0.7.0.dev2/tests/unit/kernel/release/test_vulnerability_report.py +353 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/_epoch2_transition_fixtures.py +257 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_delivery_batch_model.py +142 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_domain_event_names.py +181 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_epoch2_transition_parity.py +271 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_epoch2_values.py +180 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_milestone_model.py +334 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_run_scope.py +234 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_run_suspension_reason.py +177 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_task_model.py +250 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_track_policy.py +357 -0
- eawf-0.7.0.dev2/tests/unit/kernel/state/test_wave_dependency_models.py +116 -0
- eawf-0.7.0.dev2/tests/unit/kernel/store/test_derived_index_reproducible.py +223 -0
- eawf-0.7.0.dev2/tests/unit/kernel/store/test_generated_output_root.py +198 -0
- eawf-0.7.0.dev2/tests/unit/kernel/store/test_ledger_append_only.py +348 -0
- eawf-0.7.0.dev2/tests/unit/kernel/store/test_tier_assignment.py +283 -0
- eawf-0.7.0.dev2/tests/unit/observability/telemetry/test_session_close_projection.py +272 -0
- eawf-0.7.0.dev2/tests/unit/platform/__init__.py +0 -0
- eawf-0.7.0.dev2/tests/unit/platform/registry/__init__.py +3 -0
- eawf-0.7.0.dev2/tests/unit/platform/registry/test_workspace_record.py +182 -0
- eawf-0.7.0.dev2/tests/unit/platform/registry/test_workspace_resolution.py +308 -0
- eawf-0.7.0.dev2/tests/unit/runtime/daemon/methods/test_spec_context.py +210 -0
- eawf-0.7.0.dev2/tests/unit/runtime/daemon/test_anchor_fallback_warn_once.py +123 -0
- eawf-0.7.0.dev2/tests/unit/runtime/daemon/test_gate_execution_claim.py +500 -0
- eawf-0.7.0.dev2/tests/unit/runtime/daemon/test_recovery.py +487 -0
- eawf-0.7.0.dev2/tests/unit/runtime/daemon/test_state_methods_import_graph.py +230 -0
- eawf-0.7.0.dev2/tests/unit/runtime/daemon/test_wave_land_batch_async.py +131 -0
- eawf-0.7.0.dev2/tests/unit/runtime/session/test_session_ended_at_stamp.py +264 -0
- eawf-0.7.0.dev2/tests/unit/surfaces/cli/test_lifecycle_iter_close.py +306 -0
- eawf-0.7.0.dev2/tests/unit/test_audit_dsl.py +556 -0
- eawf-0.7.0.dev2/tests/unit/test_commit_prefix_lint_amend.py +358 -0
- eawf-0.7.0.dev2/tests/unit/test_enums.py +533 -0
- eawf-0.7.0.dev2/tests/unit/test_event_payload_union.py +399 -0
- eawf-0.7.0.dev2/tests/unit/test_evidence_evibound.py +271 -0
- eawf-0.7.0.dev2/tests/unit/test_idle_surface_report.py +231 -0
- eawf-0.7.0.dev2/tests/unit/test_install_wizard.py +160 -0
- eawf-0.7.0.dev2/tests/unit/test_lock_portalock.py +193 -0
- eawf-0.7.0.dev2/tests/unit/test_skill_audit.py +492 -0
- eawf-0.7.0.dev2/tests/unit/workflow/audit_dsl/test_gate_argv_validation.py +260 -0
- eawf-0.7.0.dev2/tests/unit/workflow/audit_dsl/test_mockup_golden_diff.py +139 -0
- eawf-0.7.0.dev2/tests/unit/workflow/evidence/__init__.py +1 -0
- eawf-0.7.0.dev2/tests/unit/workflow/lifecycle/__init__.py +1 -0
- eawf-0.7.0.dev2/tests/unit/workflow/lifecycle/test_epoch2_guards.py +353 -0
- eawf-0.7.0.dev2/tests/unit/workflow/propose/__init__.py +1 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/conftest.py +20 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_canonical_names.py +150 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_distinct_checkpoint.py +189 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_mirror_placement.py +131 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_observe_adapters.py +449 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_observer_only.py +395 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_prerelease_channel.py +222 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_prerequisite_receipts.py +252 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_target_status_machine.py +460 -0
- eawf-0.7.0.dev2/tests/unit/workflow/release/test_train_advance.py +284 -0
- eawf-0.7.0.dev2/tests/unit/workflow/skills/__init__.py +1 -0
- eawf-0.7.0.dev2/tests/unit/workflow/verify/__init__.py +1 -0
- eawf-0.7.0.dev2/tests/unit/workflow/verify/test_run_oracle.py +971 -0
- eawf-0.7.0.dev2/tools/bundle_data.py +115 -0
- eawf-0.7.0.dev2/tools/commit_prefix_lint.py +1220 -0
- eawf-0.7.0.dev2/tools/ea_commit_census.py +56 -0
- eawf-0.7.0.dev2/tools/snapshot_pairing_gate.py +494 -0
- eawf-0.7.0.dev1/.ea/config.yaml +0 -38
- eawf-0.7.0.dev1/.ea/state.json +0 -172818
- eawf-0.7.0.dev1/.ea/store/audit.jsonl +0 -105
- eawf-0.7.0.dev1/.ea/store/auditor_report.jsonl +0 -24
- eawf-0.7.0.dev1/.ea/store/evidence.jsonl +0 -734
- eawf-0.7.0.dev1/.ea/store/gate_receipt.jsonl +0 -32
- eawf-0.7.0.dev1/.ea/store/incident.jsonl +0 -35
- eawf-0.7.0.dev1/.github/workflows/ci.yaml +0 -373
- eawf-0.7.0.dev1/.github/workflows/plugin-release.yaml +0 -706
- eawf-0.7.0.dev1/.github/workflows/release.yaml +0 -381
- eawf-0.7.0.dev1/.gitignore +0 -115
- eawf-0.7.0.dev1/.pre-commit-config.yaml +0 -387
- eawf-0.7.0.dev1/.vale/styles/config/vocabularies/eawf/accept.txt +0 -156
- eawf-0.7.0.dev1/CHANGELOG.md +0 -312
- eawf-0.7.0.dev1/PKG-INFO +0 -120
- eawf-0.7.0.dev1/docs/reference/autogen/cli.md +0 -678
- eawf-0.7.0.dev1/docs/reference/autogen/enums.md +0 -65
- eawf-0.7.0.dev1/docs/reference/autogen/event.schema.json +0 -210
- eawf-0.7.0.dev1/docs/reference/snapshot-gate.md +0 -30
- eawf-0.7.0.dev1/justfile +0 -100
- eawf-0.7.0.dev1/pyproject.toml +0 -653
- eawf-0.7.0.dev1/src/eawf/_version.py +0 -22
- eawf-0.7.0.dev1/src/eawf/kernel/release/__init__.py +0 -15
- eawf-0.7.0.dev1/src/eawf/kernel/release/gate_binding.py +0 -602
- eawf-0.7.0.dev1/src/eawf/kernel/release/signals.py +0 -234
- eawf-0.7.0.dev1/src/eawf/kernel/spec/__init__.py +0 -213
- eawf-0.7.0.dev1/src/eawf/kernel/spec/promotion.py +0 -167
- eawf-0.7.0.dev1/src/eawf/kernel/spec/publication.py +0 -450
- eawf-0.7.0.dev1/src/eawf/kernel/spec/release.py +0 -697
- eawf-0.7.0.dev1/src/eawf/kernel/spec/release_config.py +0 -581
- eawf-0.7.0.dev1/src/eawf/kernel/state/enums.py +0 -769
- eawf-0.7.0.dev1/src/eawf/kernel/store/__init__.py +0 -36
- eawf-0.7.0.dev1/src/eawf/kernel/store/append.py +0 -54
- eawf-0.7.0.dev1/src/eawf/kernel/store/compact.py +0 -101
- eawf-0.7.0.dev1/src/eawf/kernel/store/kinds/__init__.py +0 -65
- eawf-0.7.0.dev1/src/eawf/kernel/store/kinds/event.py +0 -171
- eawf-0.7.0.dev1/src/eawf/kernel/store/kinds/events/__init__.py +0 -95
- eawf-0.7.0.dev1/src/eawf/kernel/store/paths.py +0 -42
- eawf-0.7.0.dev1/src/eawf/kernel/validate/strict.py +0 -241
- eawf-0.7.0.dev1/src/eawf/observability/telemetry/aggregator.py +0 -425
- eawf-0.7.0.dev1/src/eawf/observability/telemetry/projector.py +0 -486
- eawf-0.7.0.dev1/src/eawf/platform/install/gitignore_writer.py +0 -204
- eawf-0.7.0.dev1/src/eawf/platform/profiles/data/quality.yaml +0 -115
- eawf-0.7.0.dev1/src/eawf/platform/registry/__init__.py +0 -61
- eawf-0.7.0.dev1/src/eawf/platform/registry/models.py +0 -232
- eawf-0.7.0.dev1/src/eawf/runtime/__init__.py +0 -18
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/dispatch_runner.py +0 -1621
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/gate_execution.py +0 -536
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/close.py +0 -1371
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/close_evidence.py +0 -492
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/release.py +0 -1127
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/spec.py +0 -1318
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/spec_convert.py +0 -670
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/state.py +0 -1392
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/methods/state_close.py +0 -991
- eawf-0.7.0.dev1/src/eawf/runtime/daemon/server.py +0 -662
- eawf-0.7.0.dev1/src/eawf/runtime/sandbox/env_scrub.py +0 -295
- eawf-0.7.0.dev1/src/eawf/runtime/session/store.py +0 -638
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/close.py +0 -275
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/hook.py +0 -2215
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/lifecycle_iter.py +0 -808
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/migrate.py +0 -214
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/release.py +0 -697
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/spec.py +0 -706
- eawf-0.7.0.dev1/src/eawf/surfaces/cli/commands/workspace.py +0 -706
- eawf-0.7.0.dev1/src/eawf/surfaces/tui/screens/help.py +0 -496
- eawf-0.7.0.dev1/src/eawf/surfaces/tui/snapshot/pilot_harness.py +0 -957
- eawf-0.7.0.dev1/src/eawf/workflow/audit_dsl/registry.py +0 -1172
- eawf-0.7.0.dev1/src/eawf/workflow/evidence/_io.py +0 -241
- eawf-0.7.0.dev1/src/eawf/workflow/evidence/measured_contract.py +0 -591
- eawf-0.7.0.dev1/src/eawf/workflow/release/adapters.py +0 -636
- eawf-0.7.0.dev1/src/eawf/workflow/release/admission.py +0 -156
- eawf-0.7.0.dev1/src/eawf/workflow/release/lifecycle.py +0 -417
- eawf-0.7.0.dev1/src/eawf/workflow/release/observe.py +0 -280
- eawf-0.7.0.dev1/src/eawf/workflow/release/produce.py +0 -336
- eawf-0.7.0.dev1/src/eawf/workflow/release/producers.py +0 -286
- eawf-0.7.0.dev1/src/eawf/workflow/release/publication.py +0 -574
- eawf-0.7.0.dev1/src/eawf/workflow/release/publication_receipt.py +0 -193
- eawf-0.7.0.dev1/src/eawf/workflow/release/receipts.py +0 -162
- eawf-0.7.0.dev1/src/eawf/workflow/release/train.py +0 -304
- eawf-0.7.0.dev1/src/eawf/workflow/verify/__init__.py +0 -68
- eawf-0.7.0.dev1/src/eawf/workflow/verify/oracle.py +0 -660
- eawf-0.7.0.dev1/src/eawf/workflow/verify/readiness.py +0 -1777
- eawf-0.7.0.dev1/src/eawf/workflow/verify/release_probes.py +0 -484
- eawf-0.7.0.dev1/src/eawf/workflow/verify/release_readiness.py +0 -734
- eawf-0.7.0.dev1/tests/conftest.py +0 -430
- eawf-0.7.0.dev1/tests/golden/audit_dsl/sample.yaml +0 -24
- eawf-0.7.0.dev1/tests/golden/plugin_install/claude/settings.json +0 -170
- eawf-0.7.0.dev1/tests/golden/plugin_install/opencode/plugins/eawf.js.golden +0 -48
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/methods/test_boundary_totality.py +0 -262
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/methods/test_pipeline_live.py +0 -150
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/methods/test_reproducible_build.py +0 -387
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/test_close_fault_matrix.py +0 -1208
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/test_close_lock_split.py +0 -489
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/test_durable_close.py +0 -1168
- eawf-0.7.0.dev1/tests/integration/runtime/daemon/test_fleet_close_gates.py +0 -390
- eawf-0.7.0.dev1/tests/integration/test_cli_release_tag.py +0 -450
- eawf-0.7.0.dev1/tests/integration/test_close_gate_affordance_parity.py +0 -322
- eawf-0.7.0.dev1/tests/integration/test_close_gate_evidence.py +0 -444
- eawf-0.7.0.dev1/tests/integration/test_close_gate_mockup_golden_diff.py +0 -342
- eawf-0.7.0.dev1/tests/integration/test_packaging.py +0 -703
- eawf-0.7.0.dev1/tests/integration/test_snapshot_pairing_gate.py +0 -361
- eawf-0.7.0.dev1/tests/integration/test_snapshot_update.py +0 -670
- eawf-0.7.0.dev1/tests/integration/workflow/audit_dsl/test_registry_timeouts.py +0 -1099
- eawf-0.7.0.dev1/tests/integration/workflow/evidence/test_measured_contract_promotion.py +0 -385
- eawf-0.7.0.dev1/tests/integration/workflow/release/test_checkpoint_cut.py +0 -459
- eawf-0.7.0.dev1/tests/integration/workflow/release/test_measured_before_build.py +0 -252
- eawf-0.7.0.dev1/tests/integration/workflow/release/test_waiver_count.py +0 -389
- eawf-0.7.0.dev1/tests/integration/workflow/verify/test_floor_pack_integration.py +0 -768
- eawf-0.7.0.dev1/tests/integration/workflow/verify/test_release_readiness.py +0 -338
- eawf-0.7.0.dev1/tests/lint/test_phase_ci_gates.py +0 -1137
- eawf-0.7.0.dev1/tests/property/test_five_consecutive_runs.py +0 -135
- eawf-0.7.0.dev1/tests/property/workflow/lifecycle/test_transition_tables.py +0 -625
- eawf-0.7.0.dev1/tests/snapshots/tui/test_pilot_harness_quiesce_w11.py +0 -170
- eawf-0.7.0.dev1/tests/tui/test_modes_feed.py +0 -627
- eawf-0.7.0.dev1/tests/unit/kernel/release/conftest.py +0 -146
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_dependency_inventory.py +0 -617
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_distinct_checkpoint.py +0 -189
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_gate_binding.py +0 -370
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_observe_adapters.py +0 -449
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_observer_only.py +0 -395
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_platform_signal.py +0 -203
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_prerelease_channel.py +0 -222
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_prerequisite_receipts.py +0 -252
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_publication_records.py +0 -347
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_publish_edges.py +0 -459
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_readiness_gate_block.py +0 -259
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_required_signals.py +0 -286
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_target_status_machine.py +0 -460
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_train_advance.py +0 -284
- eawf-0.7.0.dev1/tests/unit/kernel/release/test_vulnerability_report.py +0 -353
- eawf-0.7.0.dev1/tests/unit/runtime/daemon/test_gate_execution_claim.py +0 -492
- eawf-0.7.0.dev1/tests/unit/runtime/daemon/test_recovery.py +0 -487
- eawf-0.7.0.dev1/tests/unit/runtime/daemon/test_state_methods_import_graph.py +0 -235
- eawf-0.7.0.dev1/tests/unit/runtime/daemon/test_wave_land_batch_async.py +0 -131
- eawf-0.7.0.dev1/tests/unit/runtime/session/test_session_ended_at_stamp.py +0 -255
- eawf-0.7.0.dev1/tests/unit/test_audit_dsl.py +0 -550
- eawf-0.7.0.dev1/tests/unit/test_enums.py +0 -530
- eawf-0.7.0.dev1/tests/unit/test_event_payload_union.py +0 -361
- eawf-0.7.0.dev1/tests/unit/test_evidence_evibound.py +0 -269
- eawf-0.7.0.dev1/tests/unit/test_idle_surface_report.py +0 -212
- eawf-0.7.0.dev1/tests/unit/test_install_wizard.py +0 -155
- eawf-0.7.0.dev1/tests/unit/test_lock_portalock.py +0 -156
- eawf-0.7.0.dev1/tests/unit/test_skill_audit.py +0 -483
- eawf-0.7.0.dev1/tests/unit/workflow/audit_dsl/test_mockup_golden_diff.py +0 -93
- eawf-0.7.0.dev1/tests/unit/workflow/verify/test_run_oracle.py +0 -834
- eawf-0.7.0.dev1/tools/bundle_data.py +0 -114
- eawf-0.7.0.dev1/tools/commit_prefix_lint.py +0 -1075
- eawf-0.7.0.dev1/tools/snapshot_pairing_gate.py +0 -374
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.agents/plugins/marketplace.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.claude-plugin/marketplace.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-20-p26-i01-surfaces.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-21-p26-i01-tui-fixes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-22-p26-i02-tui-qol.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-23-p27-i02-review-fixes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-23-p27-i03-closure.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-24-p27-i04-closure.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-25-p27-i05-backlog-closeout.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-26-p27-i06-cleanup-closeout.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-05-27-p28-i01-verify-spine-closeout.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-01-A44-P29-i01-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-01-A45-P29-i02-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-02-A46-P29-i03-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-02-A47-P29-i04-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-03-A48-P29-i05-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-03-A49-P29-i06-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-03-A50-P29-i07-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-03-A51-P29-i08-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-04-A52-P29-i09-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-06-A53-P29-i10-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-06-A54-P29-i11-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-07-A55-P29-i12-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-07-A56-P29-i13-closeout.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-10-A59-P30-i02-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-10-A60-P30-i03-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-10-A61-P30-i04-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-10-A62-P30-i05-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-10-A63-P30-i06-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-12-A-P30-i16-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-12-A-P30-i17-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-12-A-P30-i18-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-12-A-P30-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-06-13-A-P30-I20-W21-repair.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-07-02-A-P30-I20-iter-close.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-07-02-A-P30-I22-flow-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-07-04-A-P30-I24-iter-close.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-07-14-A-P30-I21-iter-close.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-07-14-A-P30-I25-iter-close.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-09-07-A-P31-backlog-reconciliation.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/2026-09-07-A-P31-closeout.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A09-P08-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A10-P09-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A11-P10-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A12-P11-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A13-P12-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A14-P13-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A15-P14-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A16-P14-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A17-P14-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A18-P14-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A19-P14-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A20-P15-p15-skills-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A21-P16-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A22-P17-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A23-P18-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A24-P19-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A25-P19-I02-W16-backlog-bulk-close.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A26-P19-I02-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A27-P20-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A28-P22-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A29-P23-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A30-P24-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/A31-P25-ship-gate.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/audit-2026-05-28-p28-i03-deep-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/audits/v0.1-closeout.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/2026-07-03-attestation.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/close_gates.log +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/dispatch_cost.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/events.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/jail_smoke.log +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/summary.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-i23-live-drive/watch_tail.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-03-v060-reval/2026-07-03-attestation.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-13-eu-capture/2026-07-13-attestation.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-13-eu-capture/state-rows.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/evidence/2026-07-13-eu-capture/stop-payload-keys.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/incidents/2026-06-02-tui-brief-criteria-drift.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/plans/2026-07-03-v0.6.0-reclose-runbook.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/2026-06-10-P30-I05-W10-wall-clock-fallback.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/2026-09-03-v07-finalization-brief.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/2026-09-04-dev1-config-defaults-benchmark.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/2026-09-04-dev1-turn-cost-baseline.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/2026-09-04-epoch2-state-tree-shape.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c00-spec-index.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c01-foundations.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c02-daemon-topology.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c03-spec-infrastructure.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c04-workflow-skills.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c05-cli-surface.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c07a-runtime-skill-dispatch.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c07b-vcs-worktree-events.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-16-c08-configurability-profiles.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-17-c06-operator-surface.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-17-c09-quality-observability.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-17-c10-operations.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-17-c11-external-integrations.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-17-spec-series-combined-audit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-18-authority-map.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-18-c12-implementation-rollup.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-18-future-ideas.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-18-migration-dag.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/2026-05-19-sdk-prerelease-probe.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/c04a-workflow.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/c04b-skills.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/c04c-agent.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/long-term/c04d-runtime.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/research-2026-05-24-python-package-structure.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/research/research-2026-05-30-tui-chassis.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/reviews/2026-07-03-i22-preship-review.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/artifacts/reviews/2026-08-07-v07-packet-round3-verification.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/bench/thresholds.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/profiles/researchcfg.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/commit_repin.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/decision.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/executor_report.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/flow.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/gold_label.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/legacy_audit_disposition.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.ea/store/reviewer_report.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.eawf/drift-acks.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.gitattributes +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.github/workflows/phase-release.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.github/workflows/reviewdog.yml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.python-version +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.secrets.baseline +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.vale/styles/eawf/InternalCode.yml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.vale/styles/eawf/Readability.yml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/.vale.ini +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/AGENTS.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/CONTRIBUTING.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/LICENSE +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/README.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/benches/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/benches/daemon_cold_spawn.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/benches/validate_invariants.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/README.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/_static/tutorial/profile-picker.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/_static/tutorial/tui-command-palette.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/_static/tutorial/tui-repo-dashboard.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/_static/tutorial/tui-status-fallback.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/agent-reports.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/audit-checks.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/cli-surface.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/coauthor.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/envelope.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/installation.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/memory.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/overview.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/plugins.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/profiles.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/source-map.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/state-model.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/statusline.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/tui.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/windows-named-pipe-threat-model.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/architecture/workflow.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/concepts.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/conventions.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/help/daemon.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/help/exit-codes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/help/migration.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/help/profiles.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/help/streaming.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/help/urns.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/policy/agents-claude-md.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/policy/fixed-decisions.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/policy/no-plan-md.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/error-codes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/exit-codes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/index.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/output-envelope.schema.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/schema.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/skills.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/autogen/state.schema.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/coverage-gates.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/doctor.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/enums.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/error-codes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/exit-codes.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/hook-events.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/index.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/lockfile-semantics.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/mutation-testing.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/qa-gate-register.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/reference/urn-namespace.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/agent-driven-cadence-adr-pointer.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/agent-driven-large-phase-pr.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/agent-driven-phase-equals-release.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/artifact-chassis.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/clarity-contract.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/code-craft-dry.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/code-craft-explicit-over-implicit.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/code-craft-fail-fast.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/code-craft-single-responsibility.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/comment-economy.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/commit-granularity.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/commit-prefix.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/engineering-practice.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/engineering-principles.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/entity-title-naming.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/gate-fire-proof-sunset.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/lean-wave-verification.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/memory-hygiene.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/naming-conventions.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/orchestrator-decision-surface.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/planned-scope-revisability.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/release-process.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/ship-process.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/spike-workflow.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/rules/workflow-lifecycle.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/first-workflow.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/install.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/profile-picker.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/quickstart.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/research-campaigns.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/troubleshooting.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/docs/tutorial/tui-tour.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/mkdocs.yml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/__main__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/defaults.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/layered.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/loader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/migration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/profile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/registry/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/registry/coercion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/registry/config_keys.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/registry/leaf_catalog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/registry/leaf_keys.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/config/schema.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/fsync.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/_base.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_0_to_v1_1.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_10_to_v1_11.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_11_to_v1_12.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_12_to_v1_13.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_13_to_v1_14.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_14_to_v1_15.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_15_to_v1_16.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_16_to_v1_17.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_17_to_v1_18.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_18_to_v1_19.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_19_to_v1_20.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_1_to_v1_2.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_2_to_v1_3.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_3_to_v1_4.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_4_to_v1_5.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_5_to_v1_6.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_6_to_v1_7.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_7_to_v1_8.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_8_to_v1_9.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/migrations/v1_9_to_v1_10.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/release/waiver.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/auq_bridge.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/cache.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/campaign_driver.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/common.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/eval_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/heuristics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/intent.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/iter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/live_rounds.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/math.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/measured_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/operator_input.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/phase.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/pruning.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/research_campaign.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/roadmap_plan.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/round_loop.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/rubric.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/saturation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/validators.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/visual.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/wave.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/wave_body.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/spec/writer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/ids.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/io.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/migration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/mutations.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/resolve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/types.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/urn.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/wave_graph.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/state/writer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/envelope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/actual.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/agent_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/commit_repin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/config_updated.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/decision.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/estimate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/agent_output_chunk.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/base.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/cache_mislayer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/dispatch_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/runtime_switched.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/session_continued.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/events/session_failover.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/flow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/gate_receipt.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/incident.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/jury_ballot.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/legacy_audit_disposition.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/operator_input.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/registry_updated.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/research_campaign.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/research_round.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/spec_updated.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/store/kinds/subscription_lag.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/validate/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/kernel/validate/invariants.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/bench/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/bench/harness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/bench/seed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/bench/turn_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/checks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/daemon_checks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/doc_verify.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/repair.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/doctor/workflow_health.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/cross_vendor_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/experiments/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/experiments/rule_adherence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/jury_validation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/reputation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/rule_adherence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/score.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/eval/self_eval.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/logging/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/logging/scrub.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/metrics/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/metrics/odr.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/_VENDOR_PROVENANCE.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/cost_class.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/exporter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/join.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/metrics_projection.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/otel.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/pricing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/base.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/claude_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/codex_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/dispatch_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/event_jsonl.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/sources/opencode_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/store/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/store/base.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/store/duckdb_store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/store/sqlite_store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/observability/telemetry/turn_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/artifacts/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/artifacts/config_defaults_benchmark.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/artifacts/references.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/artifacts/validation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/backup/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/backup/service.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/backup/store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/docs/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/docs/autogen.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/install/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/install/dist_tag.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/install/instrument_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/install/steps.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/install/wizard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/_conditional.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/clarity_anchors.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf001.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf002.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf003.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf010.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf011.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf012_design_provenance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf013_bracket_position.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf014_no_manual_wrap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf015_ears_advisory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf016_title_clarity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf017_inline_reference.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf018_structure_smell.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf019_math_facets.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf021_measurable_criterion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf022_propose_coverage.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf023_artifact_placement.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf024_test_tier_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/eawf025_test_placement.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/exclusion_expiry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/kind_taxonomy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/sigil_totality.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/tools/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/tools/agents_md_budget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/tools/astgrep_floor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/tools/eawf020_laconic_bullet.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/tools/title_backfill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/lint/validate_prose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/digest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/gc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/markdown_view.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/promotion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/prune.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/render_context.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/staleness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/memory/store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/clarity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/compose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/a11y.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/agent_driven.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/apps.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/core.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/docs.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/game.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/infra.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/ml.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/python.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/quant.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/re.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/research.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/data/robotics.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/discovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/loader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/selection.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/profiles/trust.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/registry/staleness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/render_block.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/scrub/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/scrub/scan.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/subprocess_detach.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/AGENTS.md.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/CLAUDE.md.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/SKILL.md.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/agent.md.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/hook.sh.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/marketplace.json.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/plugin-readme.md.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/plugin.json.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/claude/settings.json.fragment.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/init/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/init/engineering.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/init/research.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/init/reverse-engineering.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/platform/templates/themes.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/py.typed +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/budget/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/budget/policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/budget/service.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/ci_loop/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/ci_loop/parser.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/ci_loop/policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/auth.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/budget_interlock.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/bus.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/close_workspace.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/gate_receipt_hygiene.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/idle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/lifecycle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/limits.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/main.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/agent.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/daemon.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/event.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/fleet.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/integration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/needs_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/spec_sync_lints.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_apply.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_codex.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_context.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_events.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_runtime.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_subscribe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/state_worktree.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/methods/wal_admin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/recovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/runtime_dir.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/service_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/session_ttl.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/singleton.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/spawn.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/stale_wave.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/wal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/win_service.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/windows_pipe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/daemon/windows_security.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/hooks/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/hooks/event.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/hooks/runner.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/lock/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/lock/portalock.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/lock/sibling.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/lock/stale.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/mcp/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/mcp/catalog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/mcp/env_ref.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/mcp/installer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtime_counter_sidecar.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/adapter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/cache_control.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/cancel.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/capabilities.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/capabilities.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/adapter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/hook_map.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/hooks_router.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/plugin_conflict.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/plugin_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/plugin_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/plugin_package.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/plugin_update.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/runtime_counters.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/context_tokens.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/git.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/hooks_plugins.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/mcp_health.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/model_session_cwd.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/state.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/statusline_modules/token_saving.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/claude/transcript_counters.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/adapter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/hook_map.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/plugin_conflict.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/plugin_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/plugin_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/plugin_package.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/rollout_counters.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/codex/skills.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/fallback.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/helpers/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/helpers/fs.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/helpers/json_canonical.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/helpers/sidecar.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/manifest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/metering.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/adapter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/plugin_conflict.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/plugin_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/plugin_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/templates/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/opencode/templates/plugin.js +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/plugin_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/plugin_manifest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/plugin_sync.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/probes/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/probes/sdk_baseline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/selector.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/runtimes/stream_json.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/argv_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/cwd_guard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/egress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/egress_proxy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/jail.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/sandbox/policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/session/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/session/recovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/statusline_cache.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/vcs/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/vcs/checkpoint.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/vcs/coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/autoland.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/cleanup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/create.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/git.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/locks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/merge_back.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/runtime/worktree/wave_land.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/schemas/config.schema.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/schemas/plan-view.schema.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/schemas/skill-output.schema.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/schemas/state.schema.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/_daemon_client.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/_mutation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/_stdin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/_version_display.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/app.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/agent_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/backfill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/backup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/bench.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/calibrate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/cc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/clone_repo.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/completion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/daemon.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/doc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/draft.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/estimation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/evidence_artifact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/evidence_backlog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/evidence_hypothesis.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/evidence_incident.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/flow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/help.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/impact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/init.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/lifecycle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/lifecycle_phase.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/lifecycle_wave.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/lifecycle_wave_read.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/mcp.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/memory_read.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/memory_write.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/metrics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/plan.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/plugin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/plugin_render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/plugin_verbs.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/pr.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/pr_review.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/profile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/render_output.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/repo.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/repo_link.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/repo_registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/roadmap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/schema.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/skill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/snapshot.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/state.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/status.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/statusline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/sync.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/telemetry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/track.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/validate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/vfl.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/wal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/wave_ci.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/wave_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/why.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/wiki.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/commands/worktree.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/error_codes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/errors.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/exit_codes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/flags.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/help_panels.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/output.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/scope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/cli/streaming.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/doctor_repair.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/_atomic.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/agent_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/agents.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/agents_md.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/artifact_chassis.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/assets/ea-seal.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/audit_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/bars.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/brand.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/changelog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/claude_shim.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/decision_graph.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/drift.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/envelope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/eu.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/frontmatter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/hooks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/impact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/link_wrap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/manifest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/metrics_view.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/mode.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/narrative.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/plan_view.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/pr_body.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/regions.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/release_notes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/skills/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/skills/registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/skills/render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/snapshot_normalize.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/spinner.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/statusline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/units.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/unwrap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/render/wiki.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/app.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/attention.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/calibration_drill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/evidence_drill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/evidence_reader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/report_detail.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/tour.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/tour_cards.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modals/verifier_drill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/agent_watch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/autopilot.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/brief_viewer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/feed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/nav.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/placeholder.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/research_board.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/sandbox_events.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/modes/trust.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/offline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/palette/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/palette/command_palette.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/palette/verbs.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/poc_defects.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/scopes/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/scopes/_zoom.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/scopes/repo.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/scopes/user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/scopes/workspace.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/arm.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/audit_failed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/audit_running.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/config_modal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/config_modal_logic.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/confirm.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/cross_repo_pr.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/detail.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/detail_attempts.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/detail_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/detail_incident.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/edit_field.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/events.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/fork_inbox.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/init_wizard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/init_wizard_render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/metrics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/multichoice_checklist.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/needs_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/needs_user_inbox.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/plan_preview.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/pr_list.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/reference.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/screens/overlays/run_summary.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/snapshot/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/snapshot/asciinema.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/snapshot/behaviour_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/state_binding.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/theme.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/theme.tcss +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/toast_emitter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/attention_feed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/backlog_table.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/calibration_table.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/cvd.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/empty_state.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/eu_bar.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/footer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/git_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/header.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/heartbeat.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/markup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/output_tail.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/progress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/registry_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/roadmap_tree.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/seal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/sigils.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/status_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/status_tint.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/variance_tile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/surfaces/tui/widgets/workspace_table.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agent_report/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agent_report/rollup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agent_report/store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agents/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agents/specs/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agents/specs/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/agents/specs/roles.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/affordance_parity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/backlog_resolution.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/criterion_in_diff.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/journal_chain.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/jury_calibrated.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/mockup_image_diff.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/schema_validate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/svg_pixel_diff.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/svg_well_formed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/transition_coverage.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/tui_flow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/kinds/verify_implements.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/register_lint.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/audit_dsl/runner.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/clarity_judge.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/cost_ab.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/llm_assist.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/renderer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/retry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/routing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/seed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/spec_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/dispatch/verdict.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/buckets.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/eu.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/metrics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/recovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/segments.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/thresholds.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/estimation/trust_scorecard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/artifact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/backlog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/chain.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/decision.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/evibound.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/goal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/guards.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/hypothesis.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/incident.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/outcome.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/resolve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/rung2.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/rung3.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/evidence/rung4.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/_audit_acceptance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/_capacity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/_claim_guards.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/_claim_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/_errors.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/allocator.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/ceremony.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/criterion_drift.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/integration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/iter_.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/legacy_audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/phase.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/project.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/repin_provenance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/spec.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/spec_archive.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/track.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/transitions.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/waivers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/wave.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/lifecycle/wave_sha.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/pr_review/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/pr_review/parser.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/pr_review/policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/propose/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/propose/coverage.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/propose/generator.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/advance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/boundaries.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/dependencies.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/ledger.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/observation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/preflight.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/reproducibility.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/source_host_assets.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/target_machine.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/release/vulnerability.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/_bootstrap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/_common.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/agent_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/blitz.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/agent_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/blitz.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/compress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/differentiate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/flow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/init.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/mockup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/polish.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/prep.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/review.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/roadmap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/security_review.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/ship.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/user_question.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/bodies/wave_spec.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/clarify.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/compress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/differentiate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/discovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/engine.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/flow/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/flow/store_io.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/init.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/needs_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/polish.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/prep.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/review.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/roadmap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/security_review.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/ship.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/skills/wave_spec.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/verify/compile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/verify/dispatch_close.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/verify/models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/src/eawf/workflow/verify/preflight.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/templates/dev.eawf.eawfd.plist.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/templates/eawfd.service.j2 +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/_criteria_helpers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/_session_helpers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/contract/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/golden/surfaces → eawf-0.7.0.dev2/tests/contract/kernel}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/golden/surfaces/render → eawf-0.7.0.dev2/tests/contract/kernel/state}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/contract/test_jsonrpc_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/contract/test_runtime_resolution_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/e2e/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/e2e/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/e2e/test_agent_dispatch_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/e2e/test_daemon_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/e2e/test_lifecycle_consistency.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/e2e/test_spec_jury_poc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/experiments/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/experiments/golden/rule_adherence_experiments.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/experiments/test_rule_adherence_experiments.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/golden/audit.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/golden/polish.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/golden/prep.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/golden/research.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/golden/review.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/golden/ship.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/binary-blocked-veto.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/binary-minority-veto.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/binary-split-no-veto.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/binary-unanimous-pass.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/graded-consensus-fail.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/graded-consensus-pass.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/graded-high-variance.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/graded-midband-split.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/mixed-both-pass.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/mixed-veto-dominates.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/single-binary-pass.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/fixtures/single-binary-veto.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/test_aggregate_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/test_cross_vendor_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/test_jury_reliability.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/test_jury_reliability_wiring.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/jury/test_per_item_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_gold_label_seed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_jury_block_authority.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_jury_stores.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_jury_validation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_jury_validation_probes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_jury_validation_reducer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_reputation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_rule_adherence_corpus.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_self_eval.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/test_skill_eval.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/bare-python.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/baseline.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/clean.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/destructive-git.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/direct-state-edit.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/missing-rtk.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/eval/waves/recorded/pydantic-extra-open.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/bench/small-event.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/bench/small.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/conftest.py +0 -0
- /eawf-0.7.0.dev1/tests/golden/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/alias-collision/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/golden/surfaces/cli/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/all-terminal/snapshot/store/decision.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/integration/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/corrupt-reference/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/lint/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/corrupt-reference/snapshot/store/decision.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/perf/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/empty-repository/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/platform/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/empty-repository/snapshot/store/decision.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/platform/lint/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/interrupted-close/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/platform/profiles/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/interrupted-close/snapshot/store/decision.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/property/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/minimal-active/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/snapshots/statusline/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/minimal-active/snapshot/store/decision.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/snapshots/svg/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/multi-root-workspace/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/snapshots/tui/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/multi-root-workspace/snapshot/store/decision.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/tui/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/unknown-extension-field/snapshot/store/audit.jsonl +0 -0
- /eawf-0.7.0.dev1/tests/unit/__init__.py → /eawf-0.7.0.dev2/tests/fixtures/migration/rehearsal/unknown-extension-field/snapshot/store/decision.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/VIS1_gate_spec.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/evidence_mode_reference.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/init_wizard_j1_actual_tui_screenshot.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/init_wizard_j1_redesign_mockup.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/init_wizard_j1_redesign_mockup.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/mockup_round_1col.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/roadmap_board_reference.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/tui_round_1col_faithful.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/tui_round_2col_divergent.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/mockup_image_diff/tui_square_1col_divergent.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/manifest.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/npm_registry-default-channel.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/npm_registry-match.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/npm_registry-mismatch.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/npm_registry-missing.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/npm_registry-unknown.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/package_index-match.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/package_index-mismatch.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/package_index-missing.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/package_index-unknown.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/source_host_release-default-channel.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/source_host_release-match.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/source_host_release-mismatch.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/source_host_release-missing.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/observations/source_host_release-unknown.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/pip-audit-acknowledged.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/pip-audit-blocking.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/release/v07/publication-operation-complete.yaml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/01-extra-field.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/02-iter-references-missing-phase.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/03-wave-id-parent-mismatch.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/04-current-points-to-closed-phase.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/05-closed-phase-with-open-iter.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/06-outcome-met-no-audit.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/07-hypothesis-verdict-no-audit.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/08-bad-urn.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/09-active-wave-not-claimed.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/10-mcp-non-eawf-owner.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/11-plugin-non-claude.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/12-scope-repo-no-project.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/13-scope-workspace-no-index.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/14-current-iter-phase-mismatch.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/15-plugin-non-eawf-owner.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/16-closed-phase-no-closed-at.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/17-closed-wave-no-closed-at.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/invalid/18-stale-session-no-ended-at.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/01-empty-repo.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/02-single-phase-active.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/03-phase-iter-wave-active.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/04-research-profile-materialized.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/05-workspace-state.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/06-multi-subproject.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/07-decisions-and-backlog.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/08-incident-open.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/09-estimates-and-actuals.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/states/valid/10-memory-and-mcp.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/store/incident_sample.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/claude/sess-placeholder-aaaa.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/claude/sess-placeholder-bbbb.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/codex/rollout-2026-05-14T00-00-00-placeholder-cccc.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/codex/rollout-2026-05-15T00-00-00-placeholder-dddd.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/store/audit.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/store/event.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/fixtures/telemetry/store/executor_report.jsonl +0 -0
- {eawf-0.7.0.dev1/tests/unit/kernel → eawf-0.7.0.dev2/tests/golden}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/auditor.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/domain-specialist.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/executor.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/operator.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/planner.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/polisher.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/researcher.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agent_report/reviewer.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agents_md/core_only.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/agents_md/core_python_research.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/cli/help_panels.golden.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/cc_audit.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/cc_flow.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/cc_prep.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/cc_research.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/cc_seam_wave.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/cc_ship.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/codex_audit.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/dispatch/codex_research.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/envelope/blocked.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/envelope/failed.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/envelope/needs_user.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/envelope/ok.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/envelope/partial.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/mcp/claude_mcp.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/mcp/claude_settings.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/mcp/codex_config.toml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/mcp/opencode_config.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/metrics_export/fixture.csv +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/metrics_export/fixture.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/metrics_export/fixture.prom +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/migrations/v1_19_to_v1_20.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/narrative/wave_first.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/narrative/wave_second.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/auditor.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/domain-specialist.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/executor.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/operator.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/planner.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/polisher.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/researcher.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/agents/reviewer.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/hooks/session_end.sh +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/add-property-test/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/agent-dispatch/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/audit/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/blitz/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/coauthor/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/compress/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/design/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/differentiate/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/extract-function/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/extract-module/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/flow/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/graduate-research-code/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/init/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/math-explainer/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/memory/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/mockup/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/polish/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/prep/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/refactor-god-class/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/research/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/review/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/roadmap/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/security-review/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/ship/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/spike/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/wave-spec/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude/skills/write-adr/SKILL.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/claude.mcp.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/codex/agents/executor.toml +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/auditor.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/domain-specialist.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/executor.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/operator.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/planner.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/polisher.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/researcher.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/agents/reviewer.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/agent-dispatch.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/audit.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/blitz.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/coauthor.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/compress.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/design.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/differentiate.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/flow.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/init.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/math-explainer.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/memory.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/mockup.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/polish.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/prep.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/research.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/review.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/roadmap.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/security-review.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/ship.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/spike.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/commands/wave-spec.md.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/plugin_install/opencode/opencode.json.golden +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/full_wave.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/role_surface_parity/executor.system_prompt.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/auditor.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/auditor.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/auditor.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/domain-specialist.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/domain-specialist.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/domain-specialist.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/executor.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/executor.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/executor.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/operator.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/operator.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/operator.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/planner.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/planner.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/planner.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/polisher.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/polisher.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/polisher.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/researcher.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/researcher.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/researcher.opencode.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/reviewer.claude-code.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/reviewer.codex.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/subagent_spec/roles/reviewer.opencode.md +0 -0
- {eawf-0.7.0.dev1/tests/integration/kernel → eawf-0.7.0.dev2/tests/golden/surfaces}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/kernel/config → eawf-0.7.0.dev2/tests/golden/surfaces/cli}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/cli/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/cli/scenarios/enrich_existing/state.golden.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/cli/scenarios/flow_full/state.golden.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/cli/scenarios/fresh_repo/agents.golden.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/cli/scenarios/fresh_repo/state.golden.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/cli/test_scenarios.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/kernel/spec → eawf-0.7.0.dev2/tests/golden/surfaces/render}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_only/expected.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_only/expected.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_only/state.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_python/expected.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_python/expected.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_python/state.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_python_research/expected.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_python_research/expected.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/plan_view/core_python_research/state.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/surfaces/render/test_golden_plan_view.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/test_envelope_fixtures.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/test_golden_agents_md.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/test_golden_subagent_spec.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/test_plugin_install_claude.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/test_plugin_install_opencode.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/tui_config_modal/modal_default.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/tui_config_modal/modal_editing.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/tui_config_modal/modal_saved_toast.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/golden/tui_config_modal/modal_ui_tab.txt +0 -0
- {eawf-0.7.0.dev1/tests/unit/platform → eawf-0.7.0.dev2/tests/integration}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/conftest.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/runtime → eawf-0.7.0.dev2/tests/integration/kernel}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/runtime/daemon → eawf-0.7.0.dev2/tests/integration/kernel/migration}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/runtime/hooks → eawf-0.7.0.dev2/tests/integration/kernel/spec}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/kernel/spec/test_research_campaign.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/kernel/spec/test_round_loop.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/runtime/sandbox → eawf-0.7.0.dev2/tests/integration/runtime}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/runtime/vcs → eawf-0.7.0.dev2/tests/integration/runtime/daemon}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_ambiguous_outcome.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_crash_boundaries.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_existing_artifact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_observe_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_publish_rpc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_reconcile_receipts.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/methods/test_waiver_params.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_agent_output_chunk_producer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_agent_output_producer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_arm_caps_halt.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_close_workspace.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_cross_vendor_spawn_integ.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_disconnect_shield.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_dispatch_close_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_dispatch_cost_accrual.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_drive_loop_failure_bounds.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_executor_report_authority.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_autopilot_acceptance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_budget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_control_rpcs.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_dispatch_error_accounting.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_drive.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_drive_background.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_fork.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_frontier_recompute.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_ladders_wired.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_needs_user_and_authority.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_pause.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_reattach.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_repair_exhaustion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_risk_tier.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_summary.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_fleet_watcher_liveness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_integration_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_live_spawn_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_loop_occupancy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_readiness_under_load.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_scaffolding.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_spawn_cost_binding.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_spawn_deny_list.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_spawn_executor_report_binding.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_spec_convert_legacy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_spec_sync_floor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_state_clobber_regression.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_wal_admin_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_wave_cross_vendor_jury_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_wave_spec_jury_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/daemon/test_wave_verdict_gate.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/surfaces → eawf-0.7.0.dev2/tests/integration/runtime/hooks}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/hooks/fixtures/claude_session_end_stdin.json +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/hooks/fixtures/claude_session_transcript.jsonl +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/hooks/test_session_end_stdin.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/surfaces/cli → eawf-0.7.0.dev2/tests/integration/runtime/sandbox}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/sandbox/test_jail.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/workflow → eawf-0.7.0.dev2/tests/integration/runtime/vcs}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/runtime/vcs/test_spec_archive_force.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/workflow/audit_dsl → eawf-0.7.0.dev2/tests/integration/surfaces}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/workflow/estimation → eawf-0.7.0.dev2/tests/integration/surfaces/cli}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_campaign_dryrun_cancel_w34.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_close_status_render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_close_timeout_terminal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_completion_runtime.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_daemon_escalation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_daemon_service_lifecycle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_daemonless_close_teeth.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_daemonless_close_waiver_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_evidence_attest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_iter_close_archive_specs.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_jury_label.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_lifecycle_daemon_routing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_reclaim.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_spec_convert_legacy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_spec_sync_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_statusline_install_wizard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_streaming.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_wal_admin_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_wave_waivers_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/surfaces/cli/test_windows_w04_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_backup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_backup_ts_traversal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_bench_harness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_agent_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_artifact_chassis.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_artifact_verify.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_backfill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_backfill_wave_intents.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_clone_repo.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_close_async.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_config_menu.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_dispatch_pause.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_dispatch_wave.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_doctor_full.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_errors.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_estimation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_flags.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_help_groups.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_help_panels.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_hook_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_hook_run.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_hook_vale_prose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_hook_validate_prose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_init_idempotence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_init_interactive.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_init_no_input.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_iter_audit_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_lifecycle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_mcp.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_mcp_grant.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_memory_digest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_metrics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_output.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_render_output.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_repo.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_repo_add.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_repo_link.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_repo_prune.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_repo_remove.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_research_campaign.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_research_question_status.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_roadmap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_skill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_skill_reconcile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_skill_render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_skill_resume.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_state_resolve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_status.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_store_compact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_sync.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_sync_re_renders_idempotently.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_wave_close_commit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_wave_close_commit_plumbing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_wave_dag.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_wave_integration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_wave_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_wave_policy_cmd.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_workspace.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cli_workspace_subcommands.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_close_gate_oracle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_coauthor_verification.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_config_migration_1_0.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_cross_vendor_parity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_daemon_cross_repo_anchor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_daemon_event_emit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_dispatch_renderer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_dispatch_runner_agent_end.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_dispatch_runner_budget_halt.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_dispatch_runner_in_progress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_dispatch_runner_role_routing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_docs_autogen.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_doctor_branch_currency.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_doctor_doc_verify.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_doctor_drift_reconciler.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_doctor_stdin_isolation_w29.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_doctor_user_scope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_dual_runtime_envelope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_error_codes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_eu_capture_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_flow_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_flow_kill_resume.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_flow_resume.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_init_multi_profile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_inloop_cross_vendor_deny_parity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_install_gitignore.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_lifecycle_ordering.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_lint_hooks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_mcp_install_existing_user_entry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_mcp_owner_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_memory_sync_roundtrip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_metrics_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_metrics_jury_validation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_migrate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_p30_i20_w17.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_phase2_acceptance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_phase_04_acceptance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_plan_show_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_plugin_doctor_strict.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_plugin_install_conflict_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_plugin_install_full.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_plugin_package.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_plugin_sync_three_runtimes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_pricing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_profile_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_profile_composition_loader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_roadmap_dry_run.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_runtime_event_emission.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_scope_dispatch_ladder.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_sdk_probe_baseline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_skill_research_brief.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_skill_run_research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_spawn_safety_wiring.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_spec_rpc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_spec_sync.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_spec_three_layer_enforcement.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_spec_writer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_status_render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_statusline_e2e.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_statusline_git.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_stdin_guard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_store_paths_consistency.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_surfaces_smoke.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_validate_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_variance_calibrate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_verdict_enforced.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_verify_implements_cadence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_vfl_approve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_ack_drift_cmd.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_autoland.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_autoland_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_budget_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_dispatch_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_dispatch_runtime.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_fix_ci_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_land.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_land_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_review_cli.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_wave_verify_commits_cmd.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_windows_atomic_floor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_cleanup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_cli_cleanup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_cli_create.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_cli_merge_back.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_create.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_git.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_git_w01.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/test_worktree_merge_back.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/workflow/evidence → eawf-0.7.0.dev2/tests/integration/workflow}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/workflow/lifecycle → eawf-0.7.0.dev2/tests/integration/workflow/audit_dsl}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/integration/workflow/verify → eawf-0.7.0.dev2/tests/integration/workflow/estimation}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/estimation/test_trust_scorecard.py +0 -0
- {eawf-0.7.0.dev1/tests/perf/surfaces → eawf-0.7.0.dev2/tests/integration/workflow/evidence}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/perf/surfaces/cli → eawf-0.7.0.dev2/tests/integration/workflow/lifecycle}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_ceremony.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_commit_pin_scan.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_iter_audit_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_iter_candidate_tag.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_iter_odr_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_phase_close_stub_audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_phase_plan_release.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_phase_ship_gate_drift_audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_phase_track_stamp.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_transitions.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_waivers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_wave_claim.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_wave_plan_floor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_wave_sha_diff_base.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_wave_sha_fold.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/lifecycle/test_wave_sha_index.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/release/test_state_tree_brief_verified.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/release/test_state_tree_decision.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/release/test_train_ladder_surface.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/test_i09_jury_bindings_wired.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/test_i11_track_bindings_wired.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/test_resolve_routing_wired.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/test_sync_track_outcomes.py +0 -0
- {eawf-0.7.0.dev1/tests/perf/surfaces/tui → eawf-0.7.0.dev2/tests/integration/workflow/verify}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_backlog_resolution_view.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_compile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_dispatch_close.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_preflight.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_readiness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_release_exclusion_expiry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/integration/workflow/verify/test_seams.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_artifact_placement.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_branch_backup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_fresh_deterministic_evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_generated_prose_unwrapped.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_i20_i21_legacy_drain.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_i22_ledger_reconcile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_i22_review_artifact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_i23_drive_recording.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_prose_gate_clean.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_pyright_config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_reclose_staging.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_skill_bodies_name_rules.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_test_tier_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/lint/test_visual_gate_census.py +0 -0
- {eawf-0.7.0.dev1/tests/property/workflow → eawf-0.7.0.dev2/tests/perf/surfaces}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/property/workflow/lifecycle → eawf-0.7.0.dev2/tests/perf/surfaces/cli}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/perf/surfaces/cli/test_import_budget.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/kernel/spec → eawf-0.7.0.dev2/tests/perf/surfaces/tui}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/perf/surfaces/tui/test_perf_budget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/perf/test_dev1_baseline_artifact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/perf/test_turn_cost_harness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/perf/test_turn_cost_producer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_agents_md_budget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_astgrep_floor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_conditional_reuse.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf012_015_clarity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf016_title_clarity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf017_inline_reference.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf018_structure_smell.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf019_math_facets.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf020_laconic_bullet.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_eawf021_022.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_exclusion_expiry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_kind_taxonomy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_test_placement.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/lint/test_validate_prose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/profiles/test_verify_block.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/test_artifact_uri_rewrite.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/test_kind_subdir.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/platform/test_output_style.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_envelope_roundtrip_typed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_estimation_property.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_evidence_concurrent_property.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_flow_random_kill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_hook_event_idempotence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_lifecycle_stateful.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_mcp_env_ref_roundtrip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_memory_compaction_idempotence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_profiles_compose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_reference_history_ring.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_render_envelope_roundtrip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_render_regions_roundtrip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_wave_claim_property.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_worktree_concurrent.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/property/test_writer_property.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/kernel/state → eawf-0.7.0.dev2/tests/property/workflow}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/kernel/store → eawf-0.7.0.dev2/tests/property/workflow/lifecycle}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/statusline/golden/bars.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/statusline/golden/three_rows.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/statusline/test_statusline_bars.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/statusline/test_statusline_rows.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/bar_swap.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/fixtures/block_eighths_bar.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/fixtures/fenced_malformed.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/fixtures/status_legend.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/fixtures/well_formed.svg +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/fonts/EawfTestMono-Regular.ttf +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/golden/status_legend.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/golden/well_formed.png +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/test_status_legend_golden.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/svg/test_svg_oracle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/agent_watch_lane_grid_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/agent_watch_lane_grid_four_states.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/agent_watch_reskin_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/agent_watch_reskin_running.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/arm_overlay_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/arm_overlay_populated.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/arm_overlay_populated_w40.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/arm_overlay_populated_w48.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/autopilot_empty_frontier.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/autopilot_split.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/calibration_drill.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/calibration_drill_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/command_palette_sections.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_audit.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_dirty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_discard_prompt.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_flow.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_inline_int.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_planning.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_preferences.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_research.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_reskin_flow_w20.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_runtime.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/config_modal_runtime_lock.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/confirm_overlay.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/cross_repo_pr_overlay.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/detail_overlay.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/detail_overlay_iter_metrics.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/detail_overlay_wave_size.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/doctor_mode.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/doctor_mode_grouped.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/edit_field_int.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/events_overlay.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/evidence_drill.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/evidence_header.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/evidence_ledger.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/evidence_rollup.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/evidence_rollup_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/feed_mode_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/feed_mode_populated.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/feed_mode_sigils.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/footer_strip_repo_w120.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/footer_strip_repo_w80.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/footer_strip_user_w120.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/footer_strip_user_w80.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/footer_strip_workspace_w120.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/footer_strip_workspace_w80.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/help_active_mode.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/help_overlay.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j1_hero.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j1_hero_narrow.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j2_configure.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j2_configure_invalid.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j2_configure_narrow.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j2_error.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j2_execute.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j2_preview.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j3_select.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j3_select_narrow.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j4_done.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j4_done_narrow.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/init_wizard_j4_done_warn.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/metrics_overlay.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/overlay_audit_failed_evidence.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/overlay_audit_running_sigils.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/overlay_plan_preview_frontier.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/overlay_reference_chassis.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/repo_screen.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/research_board_bindings.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/research_board_claims.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/research_board_fa8_autorun.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/research_board_reskin_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/research_board_reskin_populated.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/research_board_unresolved.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/roadmap_scrolled_long_iter.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/run_summary_budget.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/run_summary_budget_w40.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/run_summary_budget_w48.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/run_summary_drained.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/sandbox_events_empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/sandbox_events_populated.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/stale_schema_banner.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/status_pane_awaiting.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/status_pane_selective.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/tour_modal.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/trust_calibration_readiness.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/trust_determinism.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/trust_escape_ledger.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/trust_jury_authority.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/trust_pane_data_starved.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/trust_pane_populated.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/user_screen.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/verifier_drill.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/workspace_chips.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/workspace_pr_count.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/golden/workspace_screen.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_affordance_matrix.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_affordance_parity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_agent_watch_lane_grid.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_agent_watch_reskin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_arm_overlay.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_asciinema.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_autopilot_split.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_bar_swap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_behaviour_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_calibration_drill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_cold_launch_cast.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_command_palette_sections.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_config_modal_lock.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_config_modal_reskin_w20.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_evidence_drill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_evidence_header.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_evidence_ledger.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_evidence_rollup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_footer_width_stress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_help_active_mode.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_metrics_overlay.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_overlays_reskin_w21.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_pilot_harness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_progress_widget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_render_mode_flip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_research_board_bindings.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_research_board_claims.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_research_board_reskin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_research_board_unresolved.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_run_summary_overlay.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_sandbox_events_mode.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_screen_snapshots.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_state_binding.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_status_pane_reskin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_tour_modal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_trust_determinism.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_trust_escape_ledger.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_trust_jury_authority.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_trust_tile_calibration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_tui_flow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_variance_tile_widget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_verifier_drill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_workspace_chips.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/snapshots/tui/test_workspace_pr_count.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/test_smoke.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/_contrast.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/_palette_harness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/fork_inbox_w05/empty.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/fork_inbox_w05/populated_w40.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/fork_inbox_w05/populated_w48.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/offline_brand/dashboard_missing_registry.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/offline_brand/status_frame_none.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/reskin_w22/confirm_overlay_reskin.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/reskin_w22/multichoice_checklist.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/reskin_w22/pr_list_grid.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/scope_switch_w06/user_scope_switch.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/golden/scope_switch_w06/workspace_scope_switch.txt +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_app_scaffold.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_arm_spec_transmit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_attention_feed_cold_mount.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_attention_feed_hero.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_attention_feed_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_attention_reducer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_attention_row_selected_contrast.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_autopilot_repair_budget.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_blended_token_render_w32.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_brief_viewer_reskin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_calibration_set_from_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_config_coverage_gap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_cvd_distinctness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_daemonless_ux_w25.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_degraded_banner_header_w24.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_digit_misroute_w23.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_dispatch_tui.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_doctor_probe_leak_w29.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_empty_state_seal_hero.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_evidence_pane_w27.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_fleet_affordance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_fleet_flows.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_fleet_live.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_footer_heartbeat_green_accent_capture.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_header_wordmark_two_tone.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_home_narrow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_init_wizard_snapshots.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_interaction_liveness_selection_w07.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_interaction_liveness_w28.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modals_evidence_reader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_agent_watch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_agent_watch_grid.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_agent_watch_lane_grid.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_agent_watch_parity.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_agent_watch_rollup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_autopilot.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_chassis.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_research_board.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_sandbox_events.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_modes_trust.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_nav_state.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_needs_user_closed_wave_filter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_offline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_offline_brand.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_output_tail.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlay_arm.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlay_fork_inbox.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlay_run_summary.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_audit_failed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_audit_running.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_config_modal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_confirm.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_cross_repo_pr.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_detail.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_detail_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_detail_incident.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_edit_field.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_events.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_help.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_init_wizard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_metrics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_modal_stack.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_multichoice_checklist.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_needs_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_needs_user_autoopen.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_needs_user_inbox.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_needs_user_reskin_w19.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_plan_preview.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_pr_list.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_reskin_w22.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_overlays_verb_wiring.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_palette_audit_id.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_palette_command.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_palette_filter_sort.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_palette_find.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_palette_theme.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_palette_verbs.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_pane_error_boundary.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_pilot_harness_live_probes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_placeholder_reskin.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_poc_defects.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_reference_links.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_research_board_ia_w26.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_research_round_progress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_scope_grids_narrow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_scope_repo.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_scope_switch_strip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_scope_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_scope_user_switch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_scope_workspace.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_startup_probe_help_guard_w27.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_state_binding_subscription.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_status_tint_baseline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_theme_auto.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_theme_focus_ring_capture.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_theme_green_accent_capture.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_theme_muted_contrast.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_toast_emitter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_topic_tree_scope_questions_w35.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_tour_cards.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_watch_correctness_w24.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_watch_ux_w33.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_backlog_table.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_eu_bar.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_footer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_footer_needs_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_git_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_header.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_heartbeat.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_markup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_registry_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_roadmap_tree.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_seal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_sigils.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_status_pane.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_status_tint.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_widgets_workspace_table.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/tui/test_zoom_regression.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/conftest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/config/test_agents_config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/config/test_migration_legacy_shape.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/config/test_preferences_config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/config/test_prose_config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/config/test_proxy_default_flip.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/config/test_subject_style_default.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/observability → eawf-0.7.0.dev2/tests/unit/kernel/migration}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/observability/metrics → eawf-0.7.0.dev2/tests/unit/kernel/spec}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_assign_oracle_tier.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_auq_bridge.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_campaign_driver.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_common.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_criterion_schema.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_legacy_criterion_converter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_live_rounds.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_math.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_measured_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_operator_input.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_promotion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_pruning.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_release_config_loader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_release_models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_response_from_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_saturation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_validate_criterion_gate_refs_oracle_tier.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_visual_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_wave_body_extractor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/spec/test_wave_body_schema.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/observability/telemetry → eawf-0.7.0.dev2/tests/unit/kernel/state}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_estimates_field.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_gates_migration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_iter_wave_ids_normalize.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_mutations.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_runtime_baseline.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_session_models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_success_criteria_migration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_v1_20_contracts.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/state/test_wave_intent_backfill.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/platform/profiles → eawf-0.7.0.dev2/tests/unit/kernel/store}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/store/test_evidence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/store/test_gate_receipt.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/test_fallback_wal_gc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/kernel/test_pause_urgency.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime → eawf-0.7.0.dev2/tests/unit/observability}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/daemon → eawf-0.7.0.dev2/tests/unit/observability/metrics}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/metrics/test_odr.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/runtimes → eawf-0.7.0.dev2/tests/unit/observability/telemetry}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/telemetry/test_cost_class.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/telemetry/test_metrics_projection.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/telemetry/test_metrics_projection_helpers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/telemetry/test_otel.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/telemetry/test_turn_cost_pricing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/observability/telemetry/test_turn_cost_record.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/platform/artifacts/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/platform/artifacts/test_dev1_config_defaults_benchmark.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/runtimes/claude → eawf-0.7.0.dev2/tests/unit/platform/profiles}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/platform/profiles/test_profiles_compose.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/platform/test_daemon_child_spawn_sites.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/platform/test_subprocess_detach.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/runtimes/codex → eawf-0.7.0.dev2/tests/unit/runtime}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/runtimes/opencode → eawf-0.7.0.dev2/tests/unit/runtime/daemon}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/sandbox → eawf-0.7.0.dev2/tests/unit/runtime/daemon/methods}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_agent_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_bus.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_campaign_run_bindings_wired.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_close_budget_resolver.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_close_gate_auditor_jury_routing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_config_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_daemon_client.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_daemon_log_rotation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_dispatch_cost_labels.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_dispatch_runtime_fallback.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_event_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_evidence_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_fleet_dependency_barriers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_gate_receipt_hygiene.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_idle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_idle_watchdog_interlock_w31.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_jury_block_authority_resolve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_lifecycle.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_main_boot.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_mutation_watchdog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_needs_user_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_peer_cred.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_reassert_dispatch_state.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_registry_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_research_campaign_acceptance.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_research_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_research_operator_channel.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_research_question_writer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_research_round_runner.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_research_run_rpc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_runtime_capture.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_service_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_spawn.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_spec_jury_ballot_fn.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_stale_wave.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_state_collaborators.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_state_methods.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_state_root_guard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_wal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_wal_gc_loop.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_win_service.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_windows_pipe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_windows_pipe_design_only.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/daemon/test_windows_pipe_poc_scenarios.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/runtime/session → eawf-0.7.0.dev2/tests/unit/runtime/runtimes}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/surfaces → eawf-0.7.0.dev2/tests/unit/runtime/runtimes/claude}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/claude/test_plugin_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/claude/test_spawn_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/claude/test_statusline_cache.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/claude/test_statusline_install.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/surfaces/cli → eawf-0.7.0.dev2/tests/unit/runtime/runtimes/codex}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/codex/test_spawn_session.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/surfaces/render → eawf-0.7.0.dev2/tests/unit/runtime/runtimes/opencode}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/opencode/test_plugin_install.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/opencode/test_spawn_session.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_cache_control.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_cancel_process_group.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_claude_adapter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_error_classification.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_error_reachability.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_headless_token_capture_w29.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_metering.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_open_session_role_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_plugin_manifest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_skill_adapter_handshake.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_stream_json.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/runtimes/test_stream_json_default_w30.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/surfaces/tui → eawf-0.7.0.dev2/tests/unit/runtime/sandbox}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/sandbox/test_argv_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/sandbox/test_cwd_guard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/sandbox/test_egress.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/sandbox/test_egress_proxy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/sandbox/test_env_scrub.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/runtime/sandbox/test_jail_expiry.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow → eawf-0.7.0.dev2/tests/unit/runtime/session}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/agents → eawf-0.7.0.dev2/tests/unit/surfaces}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/agents/specs → eawf-0.7.0.dev2/tests/unit/surfaces/cli}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/cli/test_config_proxy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/cli/test_daemonless_close_waiver.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/cli/test_mutation_proxy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/cli/test_registry_proxy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/cli/test_version_display.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/audit_dsl → eawf-0.7.0.dev2/tests/unit/surfaces/render}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/render/test_bars.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/render/test_eu.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/render/test_spinner.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/render/test_statusline_modes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/render/test_units.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/render/test_workspace_offline.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/dispatch → eawf-0.7.0.dev2/tests/unit/surfaces/tui}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/tui/test_evidence_export.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/tui/test_evidence_join.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/surfaces/tui/test_portfolio_totals.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_agent_report_payload.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_agent_report_rollup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_agent_report_store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_agents_md_decisions_sync.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_aggregator.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_artifact_evibound_promotion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_artifact_kind_enum.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_artifact_references.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_artifact_sha256_helper.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_backup_restore_atomic.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_blitz_recursion_guard.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_brand_glyph_fallback.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_budget_enforce.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_budget_interlock.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_budget_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_budget_service.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_campaign_synthesis_and_pruning_wire.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_capability_matrix.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_changed_scope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_ci_loop_parser.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_ci_loop_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_claim_open_question_models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_clarity_contract.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_cli_exit_codes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_cli_scope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_cli_skill_list_payload.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_coauthor_w01.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_codex_rollout_counters.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_commit_prefix_lint.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_compact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_config_layered.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_config_layering.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_config_loader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_config_profile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_config_registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_coverage_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_criterion_drift.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_decision_supersede.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_decision_supersede_verb.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_description_floor_and_title_boundary.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_dispatch_envelope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_dispatch_role_tier.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_dispatch_routing.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_doctor_agents_md_byte_cap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_doctor_checks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_doctor_mcp_drift.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_doctor_repair.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_drift_acks.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_drift_reconciler.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_ea_seal_asset.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_eawf001_rule.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_eawf011_cognitive.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_eawf021_backfill_tool.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_eawf_loc_cap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_envelope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_envelope_header_footer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_estimation_eu.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_estimation_metrics.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_estimation_recovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_estimation_segments.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_eval_score.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_event_canonical_model.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_event_store_layout.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_artifact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_audit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_backlog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_cmd_inventory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_decision.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_goal.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_hypothesis.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_incident.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_outcome.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_provenance_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_resolve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_rung2.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_evidence_rung4.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_hook_event.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_hook_router_claude.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_hook_runner.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_html_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_idle_contract_binding_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_idle_contract_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_ids.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_incident_payload.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_init_templates.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_insert_coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_install_instrument_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_install_wizard_steps.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_intent_brief.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_invariant_mcp_grant_ref.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_invariants.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_iter_bump_hint.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_jury_discrimination_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_kinds.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_layered_config.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lifecycle_allocator.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lifecycle_cmd_inventory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lifecycle_phase_prepare_close.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lifecycle_spec.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lifecycle_transitions.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lock_sibling.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_lock_stale.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_log_scrub.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_marketplace_catalog_pointers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_mcp_catalog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_mcp_env_ref.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_mcp_installer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_mcp_installer_goldens.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_digest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_gc.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_markdown_view.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_promotion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_prune.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_render_context.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_skill_cli_reconcile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_staleness.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_memory_store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_metrics_dispatch_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_metrics_export.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_metrics_store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_mkdocs_nav.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_mockup_golden_capture.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_normalize_coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_p30_i16_w14.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_package_layering.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_pause_resolution_model.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_phase_release_workflow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_phase_retro_digest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plan_show.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_conflict_detect.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_doctor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_doctor_claude.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_install_codex.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_install_manifest_persistence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_manifest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_package_codex.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_update_claude.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_version_clean_base.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_plugin_version_sync_060.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_pr_review_parser.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_pr_review_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profile_agent_driven.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profile_body_v2.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profile_quality.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profile_track_kind_defaults.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profile_trust.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profiles_discovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_profiles_loader.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_projector.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_prompt_rule_clauses.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_recount_build_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_registry_explicit_growth.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_agent_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_agents_md.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_atomic.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_changelog.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_claude_agents.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_claude_shim.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_decision_graph.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_drift.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_envelope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_hooks_sh.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_impact.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_link_wrap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_manifest.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_narrative.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_pr_body.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_regions.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_release_notes.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_skills_md.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_render_wiki.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_role_contract_projection.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_rule_adherence.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_adapter.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_baseline_capture.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_capture_hook.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_counter_sidecar.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_counters.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_dir_isolation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_label_canon.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_runtime_session_rebase.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_schema.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_session_recovery.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_session_store.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_settings_json_managed.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_sigil_totality_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_bodies.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_design_spike.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_differentiate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_flow.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_init.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_math_explainer.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_mockup.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_polish.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_prep.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_prose_symbol_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_reconcile.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_registry_c04b.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_registry_p11.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_registry_user_catalogue.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_review.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_roadmap.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skill_ship.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skills_clarify.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skills_common_w01.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skills_engine.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_skills_needs_user.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_snapshot_normalize.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_sources_codex_opencode.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_sources_dispatch_cost.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_sources_jsonl_claude.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_spec_schemas.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_spec_validators.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_io.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_mcp_grant_model.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_memory_tier.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_migration.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_models.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_resolve.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_state_sandbox_policy_model.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_status_project_fallback.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_cache_path.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_config_keys.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_context_tokens.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_hooks_plugins.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_mcp_health.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_memory.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_model_session_cwd.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_render.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_state.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_statusline_token_saving.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_subagent_roles.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_subagent_spec_model.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_telemetry_join.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_title_backfill.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_transcript_counters.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_urn.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_validate_agent_report_invariants.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_validate_invariant_sandbox_scope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_validation_index.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_vcs_coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_verify_implements.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_version_coupling.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_wave_close_actuals.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_wave_dag.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_worktree_home.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_worktree_path_fix.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/test_writer.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/estimation → eawf-0.7.0.dev2/tests/unit/workflow}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/evidence → eawf-0.7.0.dev2/tests/unit/workflow/agents}/__init__.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/lifecycle → eawf-0.7.0.dev2/tests/unit/workflow/agents/specs}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/agents/specs/test_models_workflow_prefix.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/propose → eawf-0.7.0.dev2/tests/unit/workflow/audit_dsl}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/audit_dsl/test_backlog_resolution.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/audit_dsl/test_journal_chain.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/audit_dsl/test_jury_calibrated.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/audit_dsl/test_registry_kinds.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/audit_dsl/test_schema_validate.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/skills → eawf-0.7.0.dev2/tests/unit/workflow/dispatch}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_clarity_judge.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_cost_ab.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_llm_assist.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_renderer_codex.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_repair_dispatch.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_retry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_spec_jury.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/dispatch/test_verdict.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/workflow/verify → eawf-0.7.0.dev2/tests/unit/workflow/estimation}/__init__.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/estimation/test_buckets.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/estimation/test_metrics_empty_estimates.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/evidence/test_chain.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/evidence/test_incident_fold.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/evidence/test_researcher.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/evidence/test_rung3.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/lifecycle/test_integration_barriers.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/propose/fixtures/tui_drift_brief.md +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/propose/test_generator_coverage.py +0 -0
- {eawf-0.7.0.dev1/tests/unit/kernel → eawf-0.7.0.dev2/tests/unit/workflow}/release/test_import_resolution.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/skills/test_research.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/skills/test_ship_argv_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_clarify_bridge.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_depth_vocab.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_outcome_comparator.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_prep_body_validators.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_qa_gate_register.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_runtime_capture_present.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_skill_body_registry.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_skill_emit_prose_check.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_skill_engine_body_validation.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/test_track_promotion_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tests/unit/workflow/verify/test_risk_tier.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/changed_scope.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/coauthor_policy.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/coverage_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/dead_modules.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/eawf021_measurable_criterion.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/evidence_provenance_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/html_probe.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/idle_contract_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/idle_surface_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/insert_coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/jury_discrimination_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/migrate_drop_wave_commit.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/normalize_coauthor.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/pre_commit_spec_paths.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/rasterize_svg.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/recount_build_report.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/sigil_totality_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/skill_prose_symbol_gate.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/validate_drive_recording.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/tools/version_bump.py +0 -0
- {eawf-0.7.0.dev1 → eawf-0.7.0.dev2}/uv.lock +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# P32 closeout audit
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Phase P32 delivered the 0.7.0.dev2 offline-migration checkpoint in one iter of fifty-three waves. The epoch-2 cutover exists end to end: a read-only plan that seals a strict manifest, a journaled twelve-stage apply with an atomic generation select, recovery and rollback, and a rehearsal over ten corpora that crashes the apply at each of its eleven durable writes. The version reads 0.7.0.dev2 and the changelog section names the migration limits. The out-of-band 0.7.0.dev1 publication is recorded through a typed adoption and stands at `partially_released` with no approval attached.
|
|
6
|
+
|
|
7
|
+
A fresh-context audit returned **major** against the branch as it stood. Both major findings were repaired inside the phase before close, so the recorded verdict is **minor**: what remains is filed as backlog with its evidence. The CI-mirror gauntlet on the final head reads: pre-commit, deptry and mypy are clean; the parallel coverage leg passes 18,594 tests, failing only a help-text check against a codex CLI installed on the auditing machine, which skips in CI, and a coverage-gate self-test that read a stale local report and passes once the report is regenerated; the 421 TUI snapshot tests and the perf and metrics suites pass; overall coverage holds at 89% and every per-package gate passes, the state package at 99.74% line and 98.70% branch.
|
|
8
|
+
|
|
9
|
+
## What the audit found
|
|
10
|
+
|
|
11
|
+
**The receipt floor and the deterministic tier never ran for most waves in this repository.** W43 set out to stop mechanical waves closing without running their gates, and its tests passed. They all modelled a profile with no UI bands. This repository enables the band-scoped `quality` profile, whose resolver narrows a mechanical wave outside the bands to `enforce=False`; the close gate returned on that narrowed flag before W43's tier choice and its receipt floor. W08, W13, W20, W26, W41, W42, W43, W45 and W46 closed with required gates and zero receipts, three of them after W43 landed. W48 repairs it: the gate now returns early only when the merged profile enforces nothing, and the close tests run under both profile shapes. Restoring the old return reds exactly the six band-scoped cases.
|
|
12
|
+
|
|
13
|
+
**Seven recorded gates could never have passed as written.** Of 117 unique command gates replayed on the phase head, 110 passed. W20's two gates named a test directory a later wave retired, W26's three named files that never existed, and W41 and W42 each selected a test name nothing carries, so pytest exited 5. Because their waves closed without receipts, none of them had run at close. All seven were repointed with the closed-wave argv repair and now pass.
|
|
14
|
+
|
|
15
|
+
## What the ship pass repaired
|
|
16
|
+
|
|
17
|
+
The phase PR's CI could not go green, and neither failure was the runner's. The ubuntu coverage leg died twice at 31%: the `sysmon` coverage core keeps every code object it sees, and each in-process CLI invocation rebuilt the command tree and evaluated about six thousand annotations. A full four-worker coverage run retained 14.0 GB on this branch against 12.3 GB on `main`, past the 16 GB runner. W47 builds each tree once per worker, which retains about 0.17 GB. The two twice-green reds were test races, one per run, each reproduced under load and fixed test-side: a refused close left its event loop before the workspace cleanup started, and the feed test raced the application's own daemon probe (41 of 500 loaded runs failed before, 0 of 500 after).
|
|
18
|
+
|
|
19
|
+
With the leg surviving, the per-package coverage gate would have been next: the state package measured 93.78% branch coverage against a 95% gate, all of it this phase's epoch-2 validators with no error-path tests. W50 covers them, and the package now measures 98.70%.
|
|
20
|
+
|
|
21
|
+
The PR review of the ship pass then reproduced a refusal W48 had widened: a sampled mechanical wave with an attested criterion that carries a gate, or with only advisory gates, fell through to an auditor verdict no mechanical close ever writes. W51 scores only the criteria the receipt floor obliges, which is what the profile promises such a wave.
|
|
22
|
+
|
|
23
|
+
The macOS leg then drifted two TUI goldens in consecutive runs. The snapshot harness forced the footer heartbeat lit through a lookup that, after a mode switch, returns the home screen's heartbeat rather than the captured screen's, so every mode-screen golden rode the pulse phase. W52 lights the active screen's heartbeat.
|
|
24
|
+
|
|
25
|
+
The next twice-green run tripped the CLI cold-import ceiling, 777 ms against 750 ms, for an import that takes about 300 ms on an idle host: the budget ran inside the parallel worker pool. W53 moves both wall-clock budget suites to the serial perf step, with a placement check.
|
|
26
|
+
|
|
27
|
+
That run also caught two test readers racing their writers: W52's own mode-screen case, whose live heartbeat pulse re-lit the dot before its first capture, and the portalock heartbeat test, which parsed the lockfile while the ticker rewrote it in place. W54 stills the pulse in the one and reads across the rewrite window in the other.
|
|
28
|
+
|
|
29
|
+
## What did not land
|
|
30
|
+
|
|
31
|
+
W21 was scoped to cut, publish and observe dev2 to BAKED. Approving the live record refuses on an unmerged branch because the ancestry signal is red, and BAKED needs the tag pushed to live registries after the merge. The operator split the wave: W21 closes on the three criteria met on this branch, and the BAKED observation moves verbatim to P33-I01-W01, which leads P33 because dev3 opens only from a terminal dev2. Nothing was published and no tag was pushed.
|
|
32
|
+
|
|
33
|
+
## Verification integrity
|
|
34
|
+
|
|
35
|
+
Twenty-four closed waves carry a pinned commit that is not an ancestor of the phase head. Each has a landed commit with the same subject and trailer, and outside `.ea/` the pinned and landed diffs are identical; the drift comes from folding close bookkeeping into the wave commit by amend. A rebase merge restales every pin, so the repin belongs after the merge. The receiptless closes above cannot be re-receipted: no verb re-runs a closed wave's gates, which is backlog B134.
|
|
36
|
+
|
|
37
|
+
## Deferred follow-ups
|
|
38
|
+
|
|
39
|
+
| Row | Priority | Follow-up |
|
|
40
|
+
|---|---|---|
|
|
41
|
+
| B134 | P1 | Bind receipts to the waves that closed without running gates |
|
|
42
|
+
| B135 | P1 | Clean up a close workspace before the terminal commit, and the way it was made |
|
|
43
|
+
| B136 | P1 | Classify the epoch-2 generation tree before the native path lands |
|
|
44
|
+
| B137 | P2 | Run a band-narrowed wave's gates on the daemonless close path |
|
|
45
|
+
| B138 | P2 | Gate the release adoption path |
|
|
46
|
+
| B139 | P2 | Wire or drop the eight idle functions this phase added |
|
|
47
|
+
| B140 | P2 | Narrow the migration fixture secrets exclusion |
|
|
48
|
+
| B141 | P2 | Move the last in-process gate paths into the sandboxed child |
|
|
49
|
+
| B142 | P2 | Normalise the auditor's criterion echo |
|
|
50
|
+
| B143 | P2 | Bump the state schema for `Release.adoption` |
|
|
51
|
+
| B144 | P2 | Add a verb for the release DRAFT to CANDIDATE edge |
|
|
52
|
+
| B145 | P2 | Stop the test harness leaving the binder's degraded flip pending |
|
|
53
|
+
| B146 | P3 | Split `scale_band` into its two concepts |
|
|
54
|
+
| B147 | P3 | Allow a bounded file-scope repoint on a closed wave |
|
|
55
|
+
| B148 | P3 | Correct W09's criterion text and mark W11's invented fixture rows |
|
|
56
|
+
|
|
57
|
+
## References
|
|
58
|
+
|
|
59
|
+
| Ref | Location | What it establishes |
|
|
60
|
+
|---|---|---|
|
|
61
|
+
| R1 | `src/eawf/runtime/daemon/methods/state.py` | the close gate's early return, now keyed on the merged profile |
|
|
62
|
+
| R2 | `src/eawf/workflow/verify/readiness.py` | the band resolver that narrows a non-band wave |
|
|
63
|
+
| R3 | `tests/integration/workflow/verify/test_gate_execution_stability.py` | the close tests under both profile shapes |
|
|
64
|
+
| R4 | `tests/conftest.py` | the per-worker command-tree cache |
|
|
65
|
+
| R5 | `src/eawf/kernel/migration/epoch2/` | the offline cutover: manifest, apply, recovery, rollback |
|
|
66
|
+
| R6 | `tests/integration/kernel/migration/test_v07_rehearsal.py` | the ten-corpus rehearsal |
|
|
67
|
+
| R7 | `CHANGELOG.md` | the 0.7.0.dev2 section, its migration notes and limitations |
|
|
68
|
+
| R8 | `tests/unit/kernel/state/test_epoch2_values.py` | the epoch-2 validator error paths the branch gate counts |
|
|
69
|
+
|
|
70
|
+
## Provenance
|
|
71
|
+
|
|
72
|
+
Compiled 2026-09-16 at the close of P32-I01 on branch `feature/eawf-v0.7`, from a fresh-context audit of the phase range, two load-reproducing investigations of the CI failures, and the session's own gate runs. Every claim the audit refuted was re-verified in the source before being acted on, and every repair was proven by reverting it and watching its test red.
|
|
73
|
+
|
|
74
|
+
## Scrub
|
|
75
|
+
|
|
76
|
+
- status: clean
|
|
77
|
+
- references: repo-relative
|
|
78
|
+
- credentials, PII, machine-specific paths: none
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Burn basis — the three read-backs that make `REL-0.7.0.dev1` a spent version
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
This is the evidence the burn of `REL-0.7.0.dev1` rests on: an independent read-back of each of the three targets the `0.7.0.dev1` checkpoint configuration declares, taken before any state mutation for W01.
|
|
6
|
+
|
|
7
|
+
The burn is the transition `RECOVERING -> PARTIALLY_RELEASED`. Its guard is `recovery_exhausted` — nothing is left to retry. That guard is satisfied here not because a budget ran out but because every leg has already been *observed*, and an observed leg has no retry edge at all: the version is in the world in whatever state the read-back found it, and no further publication under this version number can change that. PyPI forbids filename reuse, so the one leg that diverges cannot be corrected in place even in principle.
|
|
8
|
+
|
|
9
|
+
What this document does **not** record is an approval of the release. No operator ever approved `0.7.0.dev1` against a manifest digest; the artifacts were published by a tag push with no Release record open at all.
|
|
10
|
+
|
|
11
|
+
The operator approval that carries the record through `APPROVED` on its way to the burn is an approval **of the burn path**: of walking the spent version to its terminal state so the train has a predecessor. The `approval_ref` and the burn `reason` both say so in those words. A reader who takes the `APPROVED` row as evidence that the release itself was approved would be reading it wrong, and this paragraph exists so that they cannot.
|
|
12
|
+
|
|
13
|
+
### The three observed target states
|
|
14
|
+
|
|
15
|
+
| Target | Observed state | What the read-back found |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| `pypi` | `observed_mismatch` | The index carries a `0.7.0.dev1` wheel and source distribution uploaded 2026-09-07T23:00, built from a commit that is neither of the two commits the tag was later moved to. The filename is occupied under a digest that does not match the tag target, and filename reuse is refused, so no retry can reconcile it. |
|
|
18
|
+
| `npm` | `observed_success` | `next` resolves to `0.7.0-dev.1`, published 2026-09-08T14:27 from the final tag target. This leg is correct. `latest` still resolves to `0.6.8`, so no consumer on the default channel was affected. |
|
|
19
|
+
| `github` | `observed_mismatch` | The source-host release `v0.7.0.dev1` exists but carries zero assets and is flagged `prerelease: false`, and its target is `main` rather than the commit the artifacts were built from. The leg's three declared artifact kinds — release notes, checksums and the plugin bundle — are absent. |
|
|
20
|
+
|
|
21
|
+
Two legs contradicted, one matched. A contradicted read-back routes the record to `RECOVERING`; with every leg observed, no leg has a retry edge left, and the burn is the only move the status machine still offers.
|
|
22
|
+
|
|
23
|
+
### Why the version is not republished
|
|
24
|
+
|
|
25
|
+
A burned version is superseded by the next version and never republished. The correction for `0.7.0.dev1` is `0.7.0.dev2`, whose record carries `supersedes_release_ref` pointing back at the burned one. The burned record's `source_sha`, `source_tree_sha`, `manifest_ref` and `manifest_digest` are frozen by the burn's own signature, which accepts no field updates, so the historical claim about what was built stays exactly as recovery found it.
|
|
26
|
+
|
|
27
|
+
### What the operator runs
|
|
28
|
+
|
|
29
|
+
The burn is driven by `eawf release burn REL-0.7.0.dev1 --release <record.json> --reason "<why>" --idempotency-key <key>`, which dispatches to the `release.burn` daemon method. The reason is mandatory and is written to both durable rows the call appends — the abandoned publication operation and the burned record — so the terminal status is never left to be read as an outcome.
|
|
30
|
+
|
|
31
|
+
## References
|
|
32
|
+
|
|
33
|
+
| Ref | What it anchors |
|
|
34
|
+
| --- | --- |
|
|
35
|
+
| `.ea/artifacts/incidents/2026-09-11-dev1-published-outside-release-machinery.md` | The incident this burn closes out; the source of the four-target read-back tabulated above |
|
|
36
|
+
| `src/eawf/workflow/release/publication.py` | `burn_release`, the terminal burn and its `recovery_exhausted` guard |
|
|
37
|
+
| `src/eawf/workflow/release/lifecycle.py` | `RECOVERING -> PARTIALLY_RELEASED` is the only edge into the burn; `PARTIALLY_RELEASED` has no out-edges |
|
|
38
|
+
| `src/eawf/workflow/release/target_machine.py` | The two `observed_*` statuses are terminal per leg, which is why an observed leg offers no retry edge |
|
|
39
|
+
| `src/eawf/runtime/daemon/methods/release.py` | `release.burn`, the operator-facing verb that reaches the burn |
|
|
40
|
+
| `tests/integration/workflow/release/test_dev1_burn.py` | The walk to the terminal state, this document's chassis, and the train's refusal to close a burned rung |
|
|
41
|
+
| `INC-P32-01` | The incident's typed row |
|
|
42
|
+
| `P32-I01-W01` | The wave that wires the burn and records this basis |
|
|
43
|
+
|
|
44
|
+
## Provenance
|
|
45
|
+
|
|
46
|
+
Compiled 2026-09-11 for wave P32-I01-W01. The three read-back rows restate the point-in-time inspection recorded in the incident report, which was taken by reading the public registries and the source-host release before any state mutation for this wave. No write was made to any publication target while compiling it, and the record transitions the document describes are driven separately by the operator.
|
|
47
|
+
|
|
48
|
+
## Scrub
|
|
49
|
+
|
|
50
|
+
- status: clean
|
|
51
|
+
|
|
52
|
+
No absolute local paths, no machine hostnames, no credentials and no PII. Every reference is repo-relative or an eawf-internal id, and the only external names are the public package indexes the published artifacts already live on.
|
eawf-0.7.0.dev2/.ea/artifacts/evidence/2026-09-11-dev2-cut/2026-09-11-dev2-publication-handoff.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Publication handoff — what the `0.7.0.dev2` cut proves, and what only the operator can finish
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
The `0.7.0.dev2` checkpoint is cut but not published. This document separates the two, because the difference is the difference between a claim a test can settle and a claim only an outward-facing act can settle.
|
|
6
|
+
|
|
7
|
+
**Settled here.** The version module and the changelog agree at `0.7.0.dev2`; the changelog section names the migration and its limitations; the tag chokepoint passes over a checkout shaped like the cut commit after the merge. The dev2 Release opens as a distinct DRAFT only over a terminal `REL-0.7.0.dev1`, carries channel `dev`, `authority_epoch` 1 and empty `membership_refs`, and reaches `APPROVED` against a green twelve-gate dev2 sweep. The dev2 readiness reports `waiver_count` zero-or-explained, and a non-zero count with no explanation reds the `waiver_count` gate and denies the approval.
|
|
8
|
+
|
|
9
|
+
**Not settled here, and not fakeable.** `BAKED` requires three independent read-backs of three live registries. It cannot be reached from an unmerged branch: `ancestry` reds while the checkpoint commit is not an ancestor of `origin/main`, so the live record's approval is refused, and the tag push that starts the publication is an outward-facing act reserved to the operator. Nothing in this wave writes to `.ea/state.json`, opens a live Release record or contacts a registry.
|
|
10
|
+
|
|
11
|
+
### What the operator runs after the merge
|
|
12
|
+
|
|
13
|
+
Every step is run from the merged `main` checkout standing on the cut commit. The record document each step consumes is the JSON body the previous step emitted under `--json`.
|
|
14
|
+
|
|
15
|
+
| # | Command | What it records |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| 1 | `uv run eawf release create 0.7.0.dev2 --json` | Appends the DRAFT record to the release-record collection, after checking that `MCT-26091101` is promoted and that `REL-0.7.0.dev1` is recorded at a terminal status. The reply's `supersedes_release_ref` names the burned dev1 record. |
|
|
18
|
+
| 2 | Pin the draft to `CANDIDATE` — no operator verb exists (see the gap below) | Sets `source_sha`, `source_tree_sha`, `manifest_ref` and `manifest_digest` on the record. Until this lands as a verb the candidate document is assembled by hand from the release manifest the build produced. |
|
|
19
|
+
| 3 | `uv run eawf release preflight 0.7.0.dev2 --json` | Recomputes the twelve-signal sweep over the merged checkout. Exits non-zero while any of the seven required dev2 rows is red, printing the whole repair list first. |
|
|
20
|
+
| 4 | `uv run eawf release approve REL-0.7.0.dev2 --release <candidate> --readiness <sweep> --approval-ref <receipt>` | Appends the record at `APPROVED`, binding the manifest digest the publication must reuse. Denies `release_not_ready` naming the first red gate otherwise. |
|
|
21
|
+
| 5 | `uv run eawf release tag 0.7.0.dev2 --push` | Recomputes the chokepoint sweep, refuses on any red row, then creates and pushes `v0.7.0.dev2`. **The push is the publication decision**: the release workflow fires on the tag and runs the same sweep again before its publish job. |
|
|
22
|
+
| 6 | `uv run eawf release publish REL-0.7.0.dev2 --release <approved> --approved-manifest-digest <digest> --proof-digest <digest> --idempotency-key <key>` | Opens the publication episode and queues the three legs. Returns the operation reference immediately; a slow registry cannot hold the call open. |
|
|
23
|
+
| 7 | `uv run eawf release observe REL-0.7.0.dev2 --target pypi --release <record> --manifest <frozen> --idempotency-key <key>` | Reads PyPI back through the `package_index` adapter and settles the leg. Only an independent read-back may write an `observed_*` status. |
|
|
24
|
+
| 8 | The same `observe` call with `--target npm` | Reads the npm registry back through the `npm_registry` adapter, resolving `0.7.0-dev.2` on the `next` dist-tag. `latest` must stay on the last stable. |
|
|
25
|
+
| 9 | The same `observe` call with `--target github` | Reads the source-host release back through the `source_host_release` adapter, which must find the release notes, checksums and plugin bundle the leg declares. |
|
|
26
|
+
| 10 | `uv run eawf release show 0.7.0.dev2 --json` | Confirms `status: baked` with `observed_success` on all three targets — the wave's fourth criterion. |
|
|
27
|
+
| 11 | `uv run eawf release advance --release <baked record> --receipt <one per required gate>` | Walks the train onto the dev3 rung, re-validating that every required dev2 gate receipt still binds the exact `source_sha` and `manifest_digest`. `current_checkpoint_index` moves by one. |
|
|
28
|
+
|
|
29
|
+
### The gap step 2 names
|
|
30
|
+
|
|
31
|
+
There is no verb between `release create` and `release approve`. `approve` takes a serialized candidate, so the `DRAFT -> CANDIDATE` pin — the move that binds the source commit, its tree and the manifest digest — happens outside the CLI. Every other status move on the ladder has an operator surface; this one does not, and the approval that follows is only as trustworthy as the document somebody hand-assembled. It is worth closing before dev3.
|
|
32
|
+
|
|
33
|
+
### Why the train index does not move here
|
|
34
|
+
|
|
35
|
+
`ADVANCING_STATUSES` admits only `baked` and `released`, and `REL-0.7.0.dev1` stands at `partially_released` — terminal, but abandonment rather than a shipped rung. So the train's index still points at dev1 and will move only when the dev2 record itself bakes, at step 11. Opening dev2 does not depend on that index: admission is gated on measurement and on the predecessor being finished with, which is a different question from whether the train ever walked past it.
|
|
36
|
+
|
|
37
|
+
## References
|
|
38
|
+
|
|
39
|
+
| Ref | What it anchors |
|
|
40
|
+
| --- | --- |
|
|
41
|
+
| `src/eawf/_version.py` | The version literal this checkpoint cuts |
|
|
42
|
+
| `CHANGELOG.md` | The `0.7.0.dev2` section, its migration outcome and its limitations |
|
|
43
|
+
| `src/eawf/workflow/verify/checkpoint_succession.py` | The guard that a checkpoint opens only over a recorded, terminal predecessor |
|
|
44
|
+
| `src/eawf/runtime/daemon/methods/release.py` | `release.create`, where that guard runs and where `supersedes_release_ref` is derived |
|
|
45
|
+
| `src/eawf/runtime/release/chokepoint.py` | The sweep `release tag --push` and `release preflight` both gate on |
|
|
46
|
+
| `src/eawf/workflow/verify/release_readiness.py` | The twelve-signal sweep and the `waiver_block` gate verdict |
|
|
47
|
+
| `src/eawf/workflow/release/train.py` | The dev2 checkpoint configuration and its twelve-gate binding table |
|
|
48
|
+
| `src/eawf/workflow/release/advance.py` | `ADVANCING_STATUSES` and the receipt re-validation step 11 runs |
|
|
49
|
+
| `tests/integration/workflow/release/test_dev2_checkpoint.py` | The open-and-approve walk and the waiver-block cases |
|
|
50
|
+
| `tests/integration/runtime/release/test_tag_chokepoint.py` | The chokepoint over the cut commit, and the red paths that earn it |
|
|
51
|
+
| `.ea/artifacts/evidence/2026-09-11-dev1-burn/2026-09-11-burn-basis.md` | Why `REL-0.7.0.dev1` is terminal and never republished |
|
|
52
|
+
| `MCT-26091101` | The measured contract dev2 admission asserts over |
|
|
53
|
+
| `P32-I01-W21` | The wave that cut this checkpoint |
|
|
54
|
+
|
|
55
|
+
## Provenance
|
|
56
|
+
|
|
57
|
+
Compiled 2026-09-11 for wave P32-I01-W21, from the code paths tabulated above rather than from a prior document. The command sequence was read off the shipped verb signatures, not off a design note: each row names options the verb actually declares. No state mutation, tag push or registry write was made while compiling it, and every claim about what is settled is backed by a test in this wave's diff.
|
|
58
|
+
|
|
59
|
+
## Scrub
|
|
60
|
+
|
|
61
|
+
- status: clean
|
|
62
|
+
|
|
63
|
+
No absolute local paths, no machine hostnames, no credentials and no PII. Every source reference is repo-relative, and the only external names are the public registries the checkpoint declares as publication targets.
|
eawf-0.7.0.dev2/.ea/artifacts/incidents/2026-09-11-dev1-published-outside-release-machinery.md
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# Incident — the 0.7.0.dev1 version published to four targets with no Release record
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
The `v0.7.0.dev1` tag was pushed and the publication pipeline ran against four targets, while the release machinery that is supposed to govern a checkpoint held no record of it at all. `eawf release show 0.7.0.dev1` reports `record: none (never opened)`, and the train still stands at `index=0` with the dev1 rung `status=open`. The version is therefore spent in the world and absent from the model.
|
|
6
|
+
|
|
7
|
+
Compounding it, the tag was force-moved at least twice *after* artifacts had already been published under it, so the four targets do not agree on which commit `0.7.0.dev1` denotes.
|
|
8
|
+
|
|
9
|
+
Verdict: **functional impact moderate, process impact high.** Nothing downstream is broken today — the npm leg is correct and the published wheel installs — but the version number is unusable for a clean checkpoint, and no gate noticed that a release had happened without a release record.
|
|
10
|
+
|
|
11
|
+
### What is live, and from which source
|
|
12
|
+
|
|
13
|
+
| Target | Holds | Built from | Matches the tag target |
|
|
14
|
+
| --- | --- | --- | --- |
|
|
15
|
+
| PyPI `eawf` | `0.7.0.dev1` wheel + source distribution, uploaded 2026-09-07T23:00 | a commit predating both later tag targets | No |
|
|
16
|
+
| npm `@elementarno/eawf` | `next` -> `0.7.0-dev.1`, published 2026-09-08T14:27 | the final tag target | Yes |
|
|
17
|
+
| plugins-dist branch | `versions/0.7.0.dev1` | the 2026-09-07 render | No |
|
|
18
|
+
| Source-host release `v0.7.0.dev1` | release exists, `prerelease: false`, zero assets | target `main` | No |
|
|
19
|
+
|
|
20
|
+
`latest` on npm correctly still points at `0.6.8`, so no consumer on the default channel was affected.
|
|
21
|
+
|
|
22
|
+
### Timeline
|
|
23
|
+
|
|
24
|
+
- **2026-09-07T16:02** — the source-host release for `v0.7.0.dev1` is created.
|
|
25
|
+
- **2026-09-07T23:00** — a wheel and a source distribution for `0.7.0.dev1` are uploaded to PyPI. This is the build that still occupies the filename today.
|
|
26
|
+
- **2026-09-08T12:53** — the tag is pushed again at a second commit. The Release workflow fails at the tag-chokepoint preflight, so its PyPI leg is skipped. The plugin workflow's plugins-dist leg refuses (the version directory already exists) and its npm leg fails.
|
|
27
|
+
- **2026-09-08T14:27** — the tag is pushed a third time at a third commit. Preflight passes, but the PyPI upload returns `400 File already exists` because the 09-07 upload occupies the filename under a different digest. plugins-dist refuses again. The npm leg succeeds.
|
|
28
|
+
- **2026-09-11** — inspection for W01 finds no dev1 Release record and the train still on its first rung.
|
|
29
|
+
|
|
30
|
+
Both 2026-09-08 pipeline failures are idempotency refusals working exactly as designed. They are a symptom, not the defect.
|
|
31
|
+
|
|
32
|
+
### Root cause
|
|
33
|
+
|
|
34
|
+
1. **The publication path does not require a Release record.** A pushed tag is sufficient to start the pipeline, so the record-keeping side of the checkpoint is advisory in practice. W24 closed having proved the record machinery against a git fixture standing on merged main; it never cut a live record, and nothing detected the gap.
|
|
35
|
+
2. **A tag was moved over already-published artifacts.** Once a filename exists on an immutable index, re-tagging cannot re-publish it. Moving the tag therefore guaranteed divergence between targets rather than correcting anything.
|
|
36
|
+
3. **`burn_release` has no caller.** The model implements the terminal burn at `src/eawf/workflow/release/publication.py:406` and exports it, but no CLI verb and no daemon method reach it, so the one transition that honestly describes this situation was unreachable when it was needed. This is the same built-without-a-producer shape the project has hit before.
|
|
37
|
+
|
|
38
|
+
### Disposition
|
|
39
|
+
|
|
40
|
+
The version is spent. Per the correction rule recorded on W01, a burned version is superseded by the next version and never republished. W01 therefore wires the burn to an operator surface, walks `REL-0.7.0.dev1` to the terminal `PARTIALLY_RELEASED` state so the train has a predecessor, and advances the train. W21 opens `REL-0.7.0.dev2` from that terminal record with `supersedes_release_ref` pointing back at dev1; its criteria need no change because they already require only a *terminal* dev1 record.
|
|
41
|
+
|
|
42
|
+
The `APPROVED` transition in that walk carries an operator approval of **the burn path**, not a retroactive approval of a release that was never approved. The reason field on the transition and this artifact both say so, so the record never claims an approval that did not happen.
|
|
43
|
+
|
|
44
|
+
### Follow-ups this incident does not close
|
|
45
|
+
|
|
46
|
+
- The publication pipeline should refuse a tag whose version has no open Release record; nothing enforces that today.
|
|
47
|
+
- The tag chokepoint should refuse a tag push whose version already has published artifacts under a different digest.
|
|
48
|
+
- `W01.file_scopes` still reads `.ea/artifacts` alone, which predates the discovery that the burn needs wiring; the wave's real surface includes the release workflow, its CLI command and its daemon method.
|
|
49
|
+
|
|
50
|
+
## Attempting the disposition proved the gap is total
|
|
51
|
+
|
|
52
|
+
The operator approved walking dev1 to the terminal burn. The attempt reached only `DRAFT`, and the walk is blocked in both directions.
|
|
53
|
+
|
|
54
|
+
`eawf release create 0.7.0.dev1` opened the record at `REL-0.7.0.dev1@0`. `eawf release preflight 0.7.0.dev1` then returned `ready=False` with `ancestry` red and `tree_cleanliness` red: this is a feature branch that has not merged, so `approve` refuses. That refusal is correct, and `PARTIALLY_RELEASED` sits behind it.
|
|
55
|
+
|
|
56
|
+
`CANCELLED` is the only other terminal state reachable from `DRAFT`, and it fails on two counts. Every edge into it carries the guard `NO_EXTERNAL_EFFECT`, documented as "No tag, upload or other external effect has" occurred -- which is false for dev1 on four targets. The guard would nonetheless pass, because it reads the record and the record knows nothing of the publication; the guard being satisfied is itself the defect. And there is no operator surface to cancel at all: `ReleaseStatus.CANCELLED` appears nowhere under `src/eawf/runtime` or `src/eawf/surfaces`, the same built-but-unreachable shape `burn_release` had.
|
|
57
|
+
|
|
58
|
+
So the live record has **no reachable, truthful terminal state** and stays at `DRAFT`. No gate was waived and no approval was fabricated to move it.
|
|
59
|
+
|
|
60
|
+
This is the strongest form of the third root cause. The release model assumes every publication passes through it, so it can neither describe nor dispose of one that did not. What it needs is an adoption path: a way to record that a version was published out of band, carrying the observed per-target facts, and to land it in a terminal state without asserting an approval or a readiness sweep that never happened.
|
|
61
|
+
|
|
62
|
+
## References
|
|
63
|
+
|
|
64
|
+
| Ref | What it anchors |
|
|
65
|
+
| --- | --- |
|
|
66
|
+
| `src/eawf/workflow/release/publication.py:406` | `burn_release`, the terminal burn; no caller in the tree |
|
|
67
|
+
| `src/eawf/workflow/release/lifecycle.py` | `RECOVERING -> PARTIALLY_RELEASED` is the only edge into the burn; `PARTIALLY_RELEASED` has no out-edges |
|
|
68
|
+
| `src/eawf/kernel/spec/release.py` | `PARTIALLY_RELEASED` documented as "Recovery exhausted; the version is burned"; `supersedes_release_ref` carries correction lineage |
|
|
69
|
+
| `src/eawf/workflow/release/train.py:95` | `V07_TRAIN`, the source-resident ladder |
|
|
70
|
+
| `INC-P32-01` | This incident's typed row |
|
|
71
|
+
| `P32-I01-W24` | The wave that proved the record machinery on a fixture without cutting a live record |
|
|
72
|
+
| `P32-I01-W01` | The wave that records the burn and advances the train |
|
|
73
|
+
| `P32-I01-W21` | Opens dev2 from the terminal dev1 record |
|
|
74
|
+
|
|
75
|
+
## Provenance
|
|
76
|
+
|
|
77
|
+
Compiled 2026-09-11 from read-only inspection of the four live publication targets, the source-host workflow run history for the `v0.7.0.dev1` tag, and the release model in the source tree. No write was made to any publication target. The registry and run-history readings are point-in-time and were taken before any state mutation for W01.
|
|
78
|
+
|
|
79
|
+
## Scrub
|
|
80
|
+
|
|
81
|
+
- status: clean
|
|
82
|
+
|
|
83
|
+
No absolute local paths, no machine hostnames, no credentials and no PII. References are repo-relative or eawf-internal ids. The only external names are the public package indexes the published artifacts actually live on, and the package and release identifiers are themselves public.
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# The dev2 gate profile: twelve names, twelve evidence sources
|
|
2
|
+
|
|
3
|
+
> Status: binding record · Decision: `D45`, ACTIVE · Scope: the `0.7.0.dev2` checkpoint's preflight gates and the REL-037 admission legs · Evidence: the committed cutover rehearsal, the daemon-hosted close, the epoch-2 strictness census · Date: 2026-09-11
|
|
4
|
+
|
|
5
|
+
## Summary
|
|
6
|
+
|
|
7
|
+
A gate profile that names checks nobody computes is decoration. `dev1` proved the shape: eight gate names, each bound to exactly one evidence source, refused at load if any name is unbound [1]. `dev2` extends that to twelve — the `dev1` eight plus `migration`, `hosted_gate_runner`, `schema_strictness` and `waiver_count` — and this record is the table of what each of the twelve reads [2].
|
|
8
|
+
|
|
9
|
+
Two things are new rather than incremental.
|
|
10
|
+
|
|
11
|
+
The first is that the `dev2` configuration is **generated** from the train template and the rung, not overlaid onto the `dev1` file. The overlay is the obvious shortcut and it is silently wrong: the copy keeps `dev1`'s profile and `dev1`'s eight-name required list under the `dev2` version's name, so the new checkpoint runs the old profile's gates.
|
|
12
|
+
|
|
13
|
+
The loader already refuses that specific overlay, because the declared profile contradicts the train's [3]. Rendering removes the class of mistake rather than the instance, since the required list is read off the profile and exists in exactly one place [4].
|
|
14
|
+
|
|
15
|
+
The second is a fourth evidence kind. Eleven of the twelve gates read a readiness row, a named component of one, or a proof command run at the pinned revision. `waiver_count` reads none of those: waivers are counted per checkpoint rather than probed, so a thirteenth signal row would have needed a producer that cannot exist. It binds the waiver block the readiness receipt already carries beside the twelve rows [2].
|
|
16
|
+
|
|
17
|
+
## The binding table
|
|
18
|
+
|
|
19
|
+
| Gate | Kind | Reads | Green when |
|
|
20
|
+
|---|---|---|---|
|
|
21
|
+
| `version_consistency` | signal | `version_consistency` | Tag, request, package and configuration spell one version |
|
|
22
|
+
| `changelog_entry` | signal | `changelog` | The version's changelog section carries at least one entry |
|
|
23
|
+
| `dependency_inventory` | signal component | `dependencies.inventory` | The lock-derived inventory receipt agrees with the swept lock |
|
|
24
|
+
| `artifact_reproducibility` | signal | `artifacts` | Two clean builds produced the same digests |
|
|
25
|
+
| `security_review` | signal component | `dependencies.vulnerability` | A vulnerability report exists, is readable, and blocks nothing |
|
|
26
|
+
| `epoch1_stabilization` | proof command | `epoch1_stabilization_suite` | The suite runs green at the pinned revision |
|
|
27
|
+
| `telemetry_producer` | proof command | `telemetry_turn_cost_record` | The turn-cost producer emits a record over the live corpus |
|
|
28
|
+
| `front_door_journey` | proof command | `front_door_install_smoke` | A fresh tool-install of the published distribution runs the CLI |
|
|
29
|
+
| `migration` | signal | `migration` | Ten corpora rehearsed, every leg holds, the changelog states the outcome |
|
|
30
|
+
| `hosted_gate_runner` | proof command | `hosted_close_runs_the_gates` | A close with no attached session runs the gates in the daemon |
|
|
31
|
+
| `schema_strictness` | proof command | `epoch2_strictness_census` | Every model in the epoch-2 entity package forbids unknown keys |
|
|
32
|
+
| `waiver_count` | waiver block | `readiness:waivers` | Nothing is counted, or every counted waiver is explained and acknowledged |
|
|
33
|
+
|
|
34
|
+
Each name resolves to exactly one binding at load and to exactly one row on a computed sweep; the loader refuses a duplicate, a stray and an unbound name with three distinct typed codes [1][2][8].
|
|
35
|
+
|
|
36
|
+
## What makes `migration` provable
|
|
37
|
+
|
|
38
|
+
The row is green only when the whole declared corpus set was rehearsed and every leg of every rehearsal holds [5].
|
|
39
|
+
|
|
40
|
+
| Claim | Where it is read |
|
|
41
|
+
|---|---|
|
|
42
|
+
| Ten corpora, each with a committed record | The declared roster, cross-checked against the set the rehearsal iterates |
|
|
43
|
+
| Dry run reproducible | A second seal over the same bytes produced the same manifest digest |
|
|
44
|
+
| Apply published a generation across every recorded stage | The recorded stages equal the stages the cutover's own enum declares |
|
|
45
|
+
| Rerun inert | Nothing applied, no journal row appended, the tree byte-identical |
|
|
46
|
+
| Rollback complete | Outcome `surfaces_restored`, epoch 1, no generation left, every surface matching the restore point |
|
|
47
|
+
| Refusal reproducible and inert | The two refusing corpora refuse with one code on all three attempts and leave the target untouched |
|
|
48
|
+
|
|
49
|
+
A corpus with no record, a leg that was never rehearsed, and an unreadable record each report the row **unavailable**; a leg that ran and disagrees reports it **failed**. Both carry `migration_unproven`, so neither reads as a pass, and they are distinguished because the repairs differ: run the rehearsal versus fix the cutover [5].
|
|
50
|
+
|
|
51
|
+
Two claims the rehearsal itself corrected are not restated here. There is no `migration_reference_unresolved` code anywhere in the source: a dangling canonical reference raises `migration_fabrication_detected`, which is what the refusing corpus's record pins. And `close_attempts` is an explicit drop, so a close attempt does not import as an immutable legacy record — the closing `agent_sessions` row does [6].
|
|
52
|
+
|
|
53
|
+
## What `security_review` does with a missing report
|
|
54
|
+
|
|
55
|
+
The recorded risk for this wave is that `security_review` reads a vulnerability report and a stubbed or absent one passes the gate. It does not, and the three cases are separated [5]:
|
|
56
|
+
|
|
57
|
+
| Report state | Row | Gate |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| Never written | `unavailable`, naming the producing job and the receipt path | Not passing |
|
|
60
|
+
| Present but not a vulnerability report | `blocked`, naming the parse failure | Not passing |
|
|
61
|
+
| Present with a blocking advisory | `fail`, naming the advisory, package and upgrade | Not passing |
|
|
62
|
+
|
|
63
|
+
The only passing case is a report that was produced, parsed, and found nothing blocking.
|
|
64
|
+
|
|
65
|
+
## REL-037: one leg per rung that builds its surface
|
|
66
|
+
|
|
67
|
+
The measured-before-build rule assigns each probed surface to the rung that builds it, rather than demanding all three at the first covered rung [7].
|
|
68
|
+
|
|
69
|
+
| Rung | Contract | Surface |
|
|
70
|
+
|---|---|---|
|
|
71
|
+
| `0.7.0.dev2` | `MCT-26091101` | The importer, re-measured over the production corpus at the thousands scale band |
|
|
72
|
+
| `0.7.0.dev3` | `MCT-26081302` | Cross-provider conformance |
|
|
73
|
+
| `0.7.0.dev3` | `MCT-26081303` | Daemon RPC under concurrent dispatch |
|
|
74
|
+
|
|
75
|
+
The importer leg is a **revision**, not an edit: the 2026-08-13 contract measured a read-only census of the epoch-1 document and stays as it was recorded. The revision cites the committed corpus pin the rehearsal is judged against — 4,638 rows, multiplier 1.319 against a 1.60 ceiling, apply 3.849 s against a 30 s budget, residual document 396,720 B against a 1.6 MB bound — and its boundary names both what was measured and where it stops [7].
|
|
76
|
+
|
|
77
|
+
The `dev3` refusal names **every** missing contract in one message, with its operator-facing label and the exact promotion command. Naming only the first would send an operator back to the same wall once per contract, which is the round-trip the per-contract naming exists to remove [7].
|
|
78
|
+
|
|
79
|
+
## References
|
|
80
|
+
|
|
81
|
+
[1] `src/eawf/kernel/release/gate_binding.py` — the four evidence kinds, the profile gate sets, and the loader that refuses an unbound, duplicated or stray gate.
|
|
82
|
+
|
|
83
|
+
[2] `src/eawf/workflow/release/train.py` — the authored `dev2` binding table and the rendered `dev2` checkpoint configuration.
|
|
84
|
+
|
|
85
|
+
[3] `src/eawf/kernel/spec/release_config.py` — the checkpoint loader, including the profile-agreement check that refuses a version-and-channel overlay onto the `dev1` file.
|
|
86
|
+
|
|
87
|
+
[4] `src/eawf/kernel/release/checkpoint_template.py` — the train-wide template and the per-rung renderer.
|
|
88
|
+
|
|
89
|
+
[5] `tests/integration/workflow/verify/test_migration_signal.py` — the migration signal over the ten corpora, and the three `security_review` cases.
|
|
90
|
+
|
|
91
|
+
[6] `tests/integration/kernel/migration/test_v07_rehearsal.py` — the four-leg rehearsal that produces the committed records.
|
|
92
|
+
|
|
93
|
+
[7] `src/eawf/workflow/release/admission.py` — the REL-037 admission table and the exhaustive refusal.
|
|
94
|
+
|
|
95
|
+
[8] `tests/integration/workflow/verify/test_dev2_profile.py` — the deterministic gate over the twelve names, the rendering, and the refused overlay.
|
|
96
|
+
|
|
97
|
+
## Provenance
|
|
98
|
+
|
|
99
|
+
- kind: research
|
|
100
|
+
- slug: 2026-09-11-dev2-gate-profile-binding
|
|
101
|
+
- wave: P32-I01-W20
|
|
102
|
+
- method: binding record written alongside the implementation; every table row is asserted by a test named in the references, and no number here was estimated
|
|
103
|
+
- decision: `D45`, which assigns the `dev2` gate profile and the REL-037 legs; recorded there, documented here
|
|
104
|
+
- gates: the two suites named in references 5 and 8, plus the REL-037 integration test
|
|
105
|
+
|
|
106
|
+
## Scrub
|
|
107
|
+
|
|
108
|
+
- status: clean
|
|
109
|
+
- references: repo-relative only
|
|
110
|
+
- credentials, PII, machine-specific paths, hostnames: none
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
acceptance:
|
|
2
|
+
commands:
|
|
3
|
+
build: null
|
|
4
|
+
lint: null
|
|
5
|
+
tests: just test
|
|
6
|
+
typecheck: null
|
|
7
|
+
required_before_ship:
|
|
8
|
+
- state
|
|
9
|
+
flow:
|
|
10
|
+
advance_after:
|
|
11
|
+
audit: true
|
|
12
|
+
polish: false
|
|
13
|
+
research: true
|
|
14
|
+
mcp:
|
|
15
|
+
enabled: []
|
|
16
|
+
planning:
|
|
17
|
+
max_parallel_waves: 10
|
|
18
|
+
profiles:
|
|
19
|
+
enabled:
|
|
20
|
+
- core
|
|
21
|
+
- python
|
|
22
|
+
- research
|
|
23
|
+
- agent_driven
|
|
24
|
+
- quality
|
|
25
|
+
research:
|
|
26
|
+
agent_count: 10
|
|
27
|
+
default_depth: deep
|
|
28
|
+
runtime:
|
|
29
|
+
adapters:
|
|
30
|
+
- claude-code
|
|
31
|
+
preference:
|
|
32
|
+
- claude-code
|
|
33
|
+
schema_version: '1.0'
|
|
34
|
+
verify:
|
|
35
|
+
juror_wall_clock_seconds: 1800.0
|
|
36
|
+
odr_blocking: true
|
|
37
|
+
require_iter_audit_accepted: true
|
|
38
|
+
waiver_mode: B
|