Preserve observed pilot reliability and provider handover intake

This commit is contained in:
thePR0M3TH3AN committed 2026-09-30 16:32:20 -04:00
1 parent 4963005534
commit 009feda0d9
5 files changed
+201

No files matched your search

@@ -0,0 +1,40 @@
{
"schema": "torch.dev/backlog-item/v1alpha1",
"id": "TASK-pilot-executor-outcomes",
"title": "Treat executor timeout/error/signal as failure or unknown even with zero exit",
"description": "First real scheduled manager wake ran exactly its 300-second executor timeout and was labelled succeeded/invoked without independently verified manager completion. Native local reproduction confirms spawnSync can return status 0 plus error ETIMEDOUT when a child traps SIGTERM. startFleet currently checks status but ignores result.error/signal. This is a confirmed false-success boundary; the actual manager timeout is suspected rather than independently captured. Automatic provider wakes are temporarily disabled while machine coordination stays enabled. Require explicit executor outcome handling, completion evidence and guarded interrupted-launch recovery. Preserve existing wake receipts as historical claims; do not rewrite evidence.",
"priority": "urgent",
"affectedDomains": [
"provider-runtime",
"qa",
"owner-console"
],
"dependencies": [],
"acceptanceCriteria": [
"A zero exit with ETIMEDOUT or signal cannot become successful lifecycle or scheduler receipt",
"Failed/unknown executor completion retains captured runtime identity and blocks duplicate launch until safe reconciliation",
"Tests cover real gracefully terminating timeout and deterministic injected error boundaries without weakening existing assertions",
"Automatic wakes are re-enabled only after exact-source qualification and a successful bounded live manager turn"
],
"observedAt": "d636cae93c5a",
"feature": null,
"milestone": null,
"state": "proposed",
"owner": null,
"evidence": [],
"commit": null,
"integrationRequest": null,
"blockedReason": null,
"createdAt": "2026-09-30T20:20:17.000Z",
"updatedAt": "2026-09-30T20:20:17.000Z",
"revision": 1,
"history": [
{
"from": null,
"to": "proposed",
"actorId": "owner",
"at": "2026-09-30T20:20:17.000Z",
"note": "Task created."
}
]
}
@@ -0,0 +1,41 @@
{
"schema": "torch.dev/backlog-item/v1alpha1",
"id": "TASK-pilot-generated-check-artifacts",
"title": "Keep check-generated artifacts from blocking exact verification",
"description": "The first live runtime task ran the required dashboard gate and rewrote five tracked QA-owned PNG reports. The next TORCH gate refused WORKTREE_DIRTY. Archive proof outputs outside the tested tree, bind them to exact commit and permit only explicit narrowly scoped check-owned cleanup. Do not stash or commit generated baselines. Add a regression for artifact-generating check sequences while preserving user edits and frozen inputs. Ensure actual code progress uses revisioned task state rather than staying assigned through code commits.",
"priority": "high",
"affectedDomains": [
"qa",
"work-integration",
"owner-console",
"provider-runtime"
],
"dependencies": [],
"acceptanceCriteria": [
"Required check sequences finish without changing tracked expectations or losing evidence",
"Generated artifact bytes and exact-commit provenance remain recoverable",
"Preexisting/user edits are preserved; only proven check-owned changes may be restored",
"Task progress and blockers reflect the current lifecycle"
],
"observedAt": "94062020c767",
"feature": null,
"milestone": null,
"state": "proposed",
"owner": null,
"evidence": [],
"commit": null,
"integrationRequest": null,
"blockedReason": null,
"createdAt": "2026-09-30T20:31:08.855Z",
"updatedAt": "2026-09-30T20:31:08.855Z",
"revision": 1,
"history": [
{
"from": null,
"to": "proposed",
"actorId": "owner",
"at": "2026-09-30T20:31:08.855Z",
"note": "Task created."
}
]
}
@@ -0,0 +1,39 @@
{
"schema": "torch.dev/backlog-item/v1alpha1",
"id": "TASK-pilot-starting-presence",
"title": "Publish live startup presence before invoking a provider",
"description": "During the first development trial the real Sol process ran and used TORCH tools for several minutes while the Console still reported offline. startFleet currently records final presence only after the blocking executor returns. Record a durable guarded starting state before launch, capture execution identity/lease where available, and conservatively reconcile success/failure/unknown interruption. Do not let scheduler or manual startup duplicate a still-running manager or turn unknown launch into offline. This task is proposed only; do not expand the current diagnostics pilot without arbiter approval.",
"priority": "high",
"affectedDomains": [
"provider-runtime",
"owner-console",
"qa"
],
"dependencies": [],
"acceptanceCriteria": [
"Actual startup is visible as starting/running rather than falsely offline before its executor returns",
"Concurrent timer/manual starts cannot duplicate one identity and unknown interruption remains guarded",
"Failure/completion and process absence are distinguished with bounded attributable evidence; regression tests cover the race"
],
"observedAt": "c940a343c357",
"feature": "Self-host development readiness",
"milestone": "First real development trial",
"state": "proposed",
"owner": null,
"evidence": [],
"commit": null,
"integrationRequest": null,
"blockedReason": null,
"createdAt": "2026-09-30T19:55:23.203Z",
"updatedAt": "2026-09-30T19:55:23.203Z",
"revision": 1,
"history": [
{
"from": null,
"to": "proposed",
"actorId": "owner",
"at": "2026-09-30T19:55:23.203Z",
"note": "Task created."
}
]
}
@@ -0,0 +1,39 @@
{
"schema": "torch.dev/backlog-item/v1alpha1",
"id": "TASK-pilot-systemd-rendering",
"title": "Qualify real systemd unit rendering and active scheduler evidence",
"description": "First live pilot install produced WorkingDirectory= with outer quotes, rejected as not absolute by the actual systemd parser. TORCH status counted manifest files as installed although timer was enabled but inactive. Arbiter is making a minimal scalar-path renderer repair to unblock this owned scheduler; current tests mocked systemctl and missed the error. Require native parser regression and real host activation verification. Follow up with installed/configured/enabled/active/failed status and false-success/rollback qualification; do not weaken unit ownership or infer liveness from file presence.",
"priority": "urgent",
"affectedDomains": [
"provider-runtime",
"qa",
"owner-console"
],
"dependencies": [],
"acceptanceCriteria": [
"Real systemd parser accepts generated scalar path including spaces and literal percent/quotes",
"Real owned timer and dispatcher activation is verified, not merely manifest installation",
"Failed/inactive units are surfaced distinctly and rollback preserves unrelated services"
],
"observedAt": "c940a343c357",
"feature": "Self-host development readiness",
"milestone": "First real development trial",
"state": "proposed",
"owner": null,
"evidence": [],
"commit": null,
"integrationRequest": null,
"blockedReason": null,
"createdAt": "2026-09-30T20:04:53.270Z",
"updatedAt": "2026-09-30T20:04:53.270Z",
"revision": 1,
"history": [
{
"from": null,
"to": "proposed",
"actorId": "owner",
"at": "2026-09-30T20:04:53.270Z",
"note": "Task created."
}
]
}
@@ -0,0 +1,42 @@
{
"schema": "torch.dev/backlog-item/v1alpha1",
"id": "TASK-provider-handover",
"title": "Rehearse quality-release Codex to Claude Code or Pi fleet handover",
"description": "Owner wants TORCH to build itself, install a qualified new release, then switch agents to Claude Code or Pi and prove continuity. Test one session before whole-fleet migration. Checkpoint assigned work, branches, checks, artifacts and inbox; safely stop the old harness; apply reviewed per-session provider/model profiles; start the new harness on current canonical instructions and durable TORCH identity. Native session IDs and prompt caches are not portable. Retain prior runtime mappings and rollback. Do not swap providers before the quality-release/pilot decision.",
"priority": "normal",
"affectedDomains": [
"provider-runtime",
"qa",
"session-manager"
],
"dependencies": [
"TASK-conversation-release-qualification"
],
"acceptanceCriteria": [
"TORCH identity, task, worktree and pending communications survive handover",
"The new provider gets a fresh native session ID and current instructions, never a foreign resume ID",
"Approved bounded live contract tests prove the loop under each target harness",
"Whole-fleet cutover follows one-agent proof and can reverse without duplicate live sessions"
],
"observedAt": "94062020c767",
"feature": null,
"milestone": null,
"state": "proposed",
"owner": null,
"evidence": [],
"commit": null,
"integrationRequest": null,
"blockedReason": null,
"createdAt": "2026-09-30T20:31:08.864Z",
"updatedAt": "2026-09-30T20:31:08.864Z",
"revision": 1,
"history": [
{
"from": null,
"to": "proposed",
"actorId": "owner",
"at": "2026-09-30T20:31:08.864Z",
"note": "Task created."
}
]
}