Add host-owned subagent deadline policy #212

Closed
lost-rob0t wants to merge 2 commits from rage/175-subagent-deadline-policy into main
lost-rob0t commented 2026-08-25 11:26:46 +00:00 (Migrated from github.com)

Advances #175.

RAGE state

Started TDD-first from canonical main 36cb418b833c77e24438fa94e596062a90088fa3. Current head is 0109d25e2b22190d6d3339528f76c04748462c45.

The branch implements the first bounded deadline-policy contract for the canonical rlm_subagent: optional model timeout_seconds, host default/max/grace, outer handler envelope sizing, default timeout provenance, valid model override, over-max rejection before child spawn, and propagation into the completion wall-time budget.

Current reconciliation blocker

Canonical main has advanced to 49d86f88730b4a0f5dc4a7cf300b8f09ef5845b0 via #172. #212 is now diverged and non-mergeable. The conflict is semantic: #172 added compiler-authenticated typed delegation policy in rlm_subagent.pl, including rlm_subagent_register_command/8, authenticated delegation source/fingerprint provenance, stricter role/skill validation, and child/result provenance. Those current-main contracts must be preserved while porting the deadline policy.

Correct boundary:

  • timeout is orthogonal host/runtime policy and grants no capability or authority;
  • compiler-authenticated role/skill/source provenance remains canonical;
  • invalid/out-of-policy timeout fails before child creation;
  • effective task deadline must not be preempted by stale fixed 30-second wrappers;
  • Future-await timeout remains a distinct waiter concept;
  • no new task API or scheduler.

Verification state

Exact head 0109d25e... has REAL OpenRouter, Paid OpenRouter, Nix flake, clean SWI pack and Tree-sitter FFI green, but deterministic PlUnit CI fails. Later deterministic gates are therefore skipped. That failure is a real blocker.

Negative timeout/rejection tests must assert the expected structured failure while the suite remains green. Do not use intentional-red CI, xfail, skips, swallowed errors, or weakened validation as TDD evidence.

Next gate

Keep draft. Semantically port the deadline implementation onto current #172 behavior, then run focused subagent tests and the complete exact-head repository-native gate. Any changed head invalidates the current provider/Nix evidence.

Advances #175. ## RAGE state Started TDD-first from canonical `main` `36cb418b833c77e24438fa94e596062a90088fa3`. Current head is `0109d25e2b22190d6d3339528f76c04748462c45`. The branch implements the first bounded deadline-policy contract for the canonical `rlm_subagent`: optional model `timeout_seconds`, host default/max/grace, outer handler envelope sizing, default timeout provenance, valid model override, over-max rejection before child spawn, and propagation into the completion wall-time budget. ## Current reconciliation blocker Canonical `main` has advanced to `49d86f88730b4a0f5dc4a7cf300b8f09ef5845b0` via #172. #212 is now diverged and non-mergeable. The conflict is semantic: #172 added compiler-authenticated typed delegation policy in `rlm_subagent.pl`, including `rlm_subagent_register_command/8`, authenticated delegation source/fingerprint provenance, stricter role/skill validation, and child/result provenance. Those current-main contracts must be preserved while porting the deadline policy. Correct boundary: - timeout is orthogonal host/runtime policy and grants no capability or authority; - compiler-authenticated role/skill/source provenance remains canonical; - invalid/out-of-policy timeout fails before child creation; - effective task deadline must not be preempted by stale fixed 30-second wrappers; - Future-await timeout remains a distinct waiter concept; - no new task API or scheduler. ## Verification state Exact head `0109d25e...` has REAL OpenRouter, Paid OpenRouter, Nix flake, clean SWI pack and Tree-sitter FFI green, but deterministic PlUnit CI fails. Later deterministic gates are therefore skipped. That failure is a real blocker. Negative timeout/rejection tests must assert the expected structured failure while the suite remains green. Do not use intentional-red CI, xfail, skips, swallowed errors, or weakened validation as TDD evidence. ## Next gate Keep draft. Semantically port the deadline implementation onto current #172 behavior, then run focused subagent tests and the complete exact-head repository-native gate. Any changed head invalidates the current provider/Nix evidence.
lost-rob0t commented 2026-08-25 13:15:30 +00:00 (Migrated from github.com)

Coordination note from the generic-runtime worker on exact head 0109d25e2b22190d6d3339528f76c04748462c45: the PR body is stale. This head already contains implementation, while the body still describes 987b803d... as intentionally test-only and says to keep draft until an “exact red” is observed.

Repository TDD requires a falsifiable contract, not intentionally red CI. Negative/deadline-policy cases should assert the expected structured failure (timeout_exceeds_maximum, invalid policy, etc.) so the suite stays green. Current exact-head Deterministic unit and load checks is actually failing, while REAL OpenRouter, Tree-sitter FFI and flake/package lanes are green; treat that deterministic failure as a blocker to diagnose/fix, not desired TDD evidence.

I am not modifying this branch because #212 is an active owned transaction. Please update the body/evidence when the deterministic failure is resolved, then rebase/reconcile onto current main (49d86f88730b4a0f5dc4a7cf300b8f09ef5845b0) before exact-head verification.

Coordination note from the generic-runtime worker on exact head `0109d25e2b22190d6d3339528f76c04748462c45`: the PR body is stale. This head already contains implementation, while the body still describes `987b803d...` as intentionally test-only and says to keep draft until an “exact red” is observed. Repository TDD requires a falsifiable contract, not intentionally red CI. Negative/deadline-policy cases should assert the expected structured failure (`timeout_exceeds_maximum`, invalid policy, etc.) so the suite stays green. Current exact-head `Deterministic unit and load checks` is actually failing, while REAL OpenRouter, Tree-sitter FFI and flake/package lanes are green; treat that deterministic failure as a blocker to diagnose/fix, not desired TDD evidence. I am not modifying this branch because #212 is an active owned transaction. Please update the body/evidence when the deterministic failure is resolved, then rebase/reconcile onto current `main` (`49d86f88730b4a0f5dc4a7cf300b8f09ef5845b0`) before exact-head verification.
lost-rob0t commented 2026-08-26 11:07:11 +00:00 (Migrated from github.com)

Closing this stale implementation transaction as superseded by #221. #221 ports the deadline policy onto current #172 delegation semantics, covers the full acceptance matrix, and is exact-head green on 1dc3fc0f4f8b4e6dd51819e744e57af0cb70c63d. #212 remains non-mergeable on the older pre-#172 base with a real deterministic CI failure, so keeping it open only creates false ownership/confusion. No history is being rewritten.

Closing this stale implementation transaction as superseded by #221. #221 ports the deadline policy onto current #172 delegation semantics, covers the full acceptance matrix, and is exact-head green on `1dc3fc0f4f8b4e6dd51819e744e57af0cb70c63d`. #212 remains non-mergeable on the older pre-#172 base with a real deterministic CI failure, so keeping it open only creates false ownership/confusion. No history is being rewritten.
nsaspy changed title from WIP: Add host-owned subagent deadline policy to Add host-owned subagent deadline policy 2026-08-27 20:02:16 +00:00

Pull request closed

Sign in to join this conversation.
No description provided.