ed790561ba5e560deb2f2fafc76fa6c40dcaf794
3
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
308bbb74b7 |
feat(event-driven): final integration seam — state ownership, orphan recovery, CLI contract, daemon governance, task binding
§2/§3 state ownership: register_process_wait resume_mode ('fifo' default
preserves T15; 'self' = waiter owns continuation via completion-file
inotify, NO resume_cmd). ci_event_wait registers self-mode and stamps
durable terminal operation state (COMPLETED/FAILED + authority evidence)
before the envelope — a dead session can no longer downgrade operation
truth. Daemon drive skips resume_cmd-less waits; resume() re-reads and
never touches terminal records.
§4 orphan sweep: bounded periodic reconciliation of RESUMING waits past
ORPHAN_GRACE_SECS (failure detection, not scheduling) — truthful
RESUME_UNVERIFIED/READY_TO_RETRY + lease release; deterministic tests.
§5 CLI contract: ci_event_wait parses strictly; --watchdog supported;
unknown flags exit 2 loudly. No silent argument loss.
§6 governance: canonical daemon source IN REPO (bridge/daemon/);
scripts/install_wr_daemon.py installs atomically + verifies sha256
convergence (--check/--restart). One implementation, one deploy path.
§9 task binding: --task-id through cli/tool; task-bound resolution scopes
pending operations; stored operation wins over model hints; fresh
explicit-id operations normalize provisionally (ghost shas refused).
tests/test_real_async_integration.py: 10 frozen tests. Full suite 2196/0.
|
||
|
|
2ebd9da139 |
feat(event-driven): structured-state routing + event-triggered cognition
CI Pipeline / best-practices (push) Successful in 11s
CI Pipeline / documentation (push) Successful in 5s
CI Pipeline / canary (push) Successful in 35s
deploy / deploy (push) Skipped
CI Pipeline / lint (push) Successful in 45s
CI Pipeline / gitea-offline (push) Successful in 18s
Auto-label / auto-label (pull_request) Successful in 8s
Auto-label / priority-gate (pull_request) Skipped
CI Pipeline / lint (pull_request) Successful in 44s
CI Pipeline / gitea-offline (pull_request) Successful in 17s
CI Pipeline / type-check (pull_request) Successful in 29s
Spec gate (headless) / spec-gate (pull_request) Successful in 23s
CI Pipeline / type-check (push) Successful in 30s
CI Pipeline / best-practices (pull_request) Successful in 8s
CI Pipeline / unit-tests (push) Successful in 3m26s
CI Pipeline / documentation (pull_request) Successful in 6s
CI Pipeline / canary (pull_request) Successful in 32s
CI Pipeline / required-checks (push) Successful in 2s
CI Pipeline / CI Pipeline / notify-event-bridge (push) Successful in 9s
CI Pipeline / unit-tests (pull_request) Successful in 3m27s
CI Pipeline / required-checks (pull_request) Successful in 1s
CI Pipeline / CI Pipeline / notify-event-bridge (pull_request) Successful in 7s
Auto-version and Release / release (pull_request) Failing after 1m5s
- PendingOperation = durable continuation object: continuation_state (ACTIVE_REASONING/WAITING_EXTERNAL/RESUMABLE/RECOVERY_REQUIRED), canonical op_type/authority, task_id — parked cognition is a first-class durable state a fresh process can read - ci_event_wait stamps cognitive-state transitions (WAITING_EXTERNAL on park, RESUMABLE/RECOVERY_REQUIRED on terminal) - DEPLOY_SHA export fix: CLI/python run() consumers previously got a silent 'pending' authority verdict forever — the authority subprocess never received the sha (found via E10 fresh-process proof) - await_intent_cli route-bash: Bash commands expressing external wait intent compile to the canonical continuation (new bash.ts harness tool routes through it); plain local sleeps execute normally - tests/test_await_intent.py: E-matrix (derivation truth table, provenance order, observability) |
||
|
|
8a8d3534c6 |
feat(async-intent): intent normalization at the execution boundary
CI Pipeline / best-practices (push) Successful in 14s
CI Pipeline / documentation (push) Successful in 5s
CI Pipeline / lint (push) Successful in 43s
CI Pipeline / canary (push) Successful in 32s
Auto-label / auto-label (pull_request) Successful in 11s
deploy / deploy (push) Skipped
Auto-label / priority-gate (pull_request) Skipped
CI Pipeline / gitea-offline (push) Successful in 16s
CI Pipeline / best-practices (pull_request) Successful in 5s
CI Pipeline / documentation (pull_request) Successful in 5s
CI Pipeline / canary (pull_request) Successful in 29s
CI Pipeline / lint (pull_request) Successful in 44s
CI Pipeline / type-check (pull_request) Successful in 30s
CI Pipeline / gitea-offline (pull_request) Successful in 20s
Spec gate (headless) / spec-gate (pull_request) Successful in 19s
CI Pipeline / type-check (push) Successful in 31s
CI Pipeline / unit-tests (push) Successful in 3m19s
CI Pipeline / required-checks (push) Successful in 1s
CI Pipeline / CI Pipeline / notify-event-bridge (push) Successful in 6s
CI Pipeline / unit-tests (pull_request) Successful in 3m27s
CI Pipeline / required-checks (pull_request) Successful in 5s
CI Pipeline / CI Pipeline / notify-event-bridge (pull_request) Successful in 5s
Auto-version and Release / release (pull_request) Failing after 1m10s
MODEL OUTPUT = INTENT; RUNE CONTROLLER = EXECUTION SEMANTICS. scripts/await_intent.py: deterministic resolver that derives canonical op_type from stored normalized records / open PRs / git ancestry — model supplied op_type and deadline_secs are recorded but NEVER used as policy (git/Gitea truth outranks even legacy wait records). Sleep/check/poll intent aimed at a known pending operation compiles to ContinuePendingOperation; plain legitimate sleeps are untouched. Timing provenance: USER_EXPLICIT/EXTERNAL_CONTRACT authoritative, MODEL_INVENTED discarded. Ambiguity fails safe with structured candidates. await_intent_cli.py = tool surface; compact JSONL observability per normalization. await-operation.ts rewired to normalize before dispatch (needs commit of harness tool separately). |