main · last commit
13 days ago ·
7g0stsfu
ah-efe.5 SPEC sections 9 and 14: .task/ layout stale, Stage 3-4 still written as roadmap
Past Stand
bd reopen ah-efe.5
| Created by | Eugene Blikh |
| Owner | bigbes@gmail.com |
| Created | 2026-08-04T23:38:22Z |
| Started | 2026-08-04T23:39:08Z |
| Updated | 2026-08-04T23:49:49Z |
| Closed | 2026-08-04T23:49:49Z |
Found while refreshing §12 (ah-efe.2). Neither section is covered by the existing ah-efe children (.1 covers §5/6, .3 covers §1/4/11), so they would silently stay stale. SECTION 9 (runner): - The .task/ layout comment at ~line 396 reads 'question.json # reserved for Stage 4 ask-user'. Stage 4 ask-user is DELIVERED; the file is live, not reserved. - The same listing omits five files the code actually writes or reads: tasks.json, summary.md, publish.json, answer.json, and tool-auth.json (mode 0600, written by internal/runner/taskfiles.go). SECTION 14 (roadmap): - Stages 3 and 4 are still phrased as forward-looking roadmap items while Stage 2 is marked 'Delivered'. The mem0 lifecycle, Context Pack, agent tools API, AgentsView deep links and the Yonote lanes have all shipped; the stage markers need the same treatment Stage 2's got. - The Stage 4 item promises 'ask-user→Question loop with pi --session resumes'. The delivered mid-run path instead keeps the process alive by BLOCKING in the CLI (2s polls until --deadline), so that phrasing describes a superseded design and should be corrected rather than just re-marked as done.
§9's .task/ listing matches what internal/runner/taskfiles.go actually writes, with no 'reserved' markers on delivered files. §14's Stage 3 and Stage 4 entries carry accurate delivered/not-delivered markers, and the ask-user description matches the blocking-CLI design that actually shipped.
ah-efe
— Docs: SPEC refresh to Stage 3-4 + Yonote reality
parent-child
closed
Nothing depends on this issue.
| id | ah-efe.5 |
| content_hash | fa3feda20fc817a1ec9da6732fd71d84828eef584830e729b63d4fd5a5963723 |
| title | SPEC sections 9 and 14: .task/ layout stale, Stage 3-4 still written as roadmap |
| description | Found while refreshing §12 (ah-efe.2). Neither section is covered by the existing ah-efe children (.1 covers §5/6, .3 covers §1/4/11), so they would silently stay stale. SECTION 9 (runner): - The .task/ layout comment at ~line 396 reads 'question.json # reserved for Stage 4 ask-user'. Stage 4 ask-user is DELIVERED; the file is live, not reserved. - The same listing omits five files the code actually writes or reads: tasks.json, summary.md, publish.json, answer.json, and tool-auth.json (mode 0600, written by internal/runner/taskfiles.go). SECTION 14 (roadmap): - Stages 3 and 4 are still phrased as forward-looking roadmap items while Stage 2 is marked 'Delivered'. The mem0 lifecycle, Context Pack, agent tools API, AgentsView deep links and the Yonote lanes have all shipped; the stage markers need the same treatment Stage 2's got. - The Stage 4 item promises 'ask-user→Question loop with pi --session resumes'. The delivered mid-run path instead keeps the process alive by BLOCKING in the CLI (2s polls until --deadline), so that phrasing describes a superseded design and should be corrected rather than just re-marked as done. |
| design | |
| acceptance_criteria | §9's .task/ listing matches what internal/runner/taskfiles.go actually writes, with no 'reserved' markers on delivered files. §14's Stage 3 and Stage 4 entries carry accurate delivered/not-delivered markers, and the ask-user description matches the blocking-CLI design that actually shipped. |
| notes | |
| status | closed |
| priority | 3 |
| issue_type | chore |
| assignee | NULL |
| estimated_minutes | NULL |
| created_at | 2026-08-04T23:38:22Z |
| created_by | Eugene Blikh |
| owner | bigbes@gmail.com |
| updated_at | 2026-08-04T23:49:49Z |
| closed_at | 2026-08-04T23:49:49Z |
| closed_by_session | |
| external_ref | NULL |
| spec_id | |
| compaction_level | 0 |
| compacted_at | NULL |
| compacted_at_commit | NULL |
| original_size | NULL |
| sender | |
| ephemeral | 0 |
| wisp_type | |
| pinned | 0 |
| is_template | 0 |
| mol_type | |
| work_type | |
| source_system | |
| metadata | �{} |
| source_repo | |
| close_reason | Done in 119b84d. §9's .task/ listing was three files short of reality and mislabelled a delivered one: question.json was marked 'reserved for Stage 4' although the ask-user file channel has shipped, and tasks.json, summary.md, publish.json, answer.json and tool-auth.json were absent entirely. Verified against internal/runner/taskfiles.go and runner.go prepareTaskDir; the listing now carries all eleven entries plus the two directories the code actually manages (artifacts/, publish/), with tool-auth.json marked mode 0600 and written only when a token was minted. A new paragraph states the inbound/supervisor/outbound split, that a missing outbound file always means 'not requested' rather than an error, and that Start clears every attempt-scoped file (stale exit.json, all outbound files, publish/, artifacts/, tool-auth.json) and truncates events.jsonl — with the concrete failure each clearing prevents. §14's Stage 3 and Stage 4 were still forward-looking roadmap while Stage 2 read 'Delivered'; both are now marked delivered in Stage 2's style. Two roadmap promises are CORRECTED rather than ticked off: (1) the post-run summarizer role was NEVER BUILT — no such role or prompt exists; the shipped design substitutes agent-authored .task/summary.md plus mem0's infer=true extraction, and accepting that substitution is the open decision on ah-ydx; (2) 'ask-user→Question loop with pi --session resumes' was a superseded design — there is no pi --session resume anywhere: the file channel parks in Question and a human answer starts a NEW attempt with a freshly rendered prompt, while the mid-run path never stops the run at all (ahub tool ask-user blocks in the CLI polling GET /api/tool/answer every 2s until --deadline, default 5m). Stage 4 also now states plainly that the roadmap's memory search/add tools do not exist and nothing tracks them, and that there is no content-level dedup of requested children. |
| event_kind | |
| actor | |
| target | |
| payload | |
| await_type | |
| await_id | |
| timeout_ns | 0 |
| waiters | |
| hook_bead | |
| role_bead | |
| agent_state | |
| last_activity | NULL |
| role_type | |
| rig | |
| due_at | NULL |
| defer_until | NULL |
| no_history | 0 |
| started_at | 2026-08-04T23:39:08Z |
| is_blocked | 0 |
| issue_id | ah-efe.5 |
| label | milestone:v0.1.0 |
| id | e7916532-f36e-5704-8b4d-79fd7075a9d9 |
| issue_id | ah-efe.5 |
| type | parent-child |
| created_at | 2026-08-05T02:38:22Z |
| created_by | Eugene Blikh |
| metadata | �{} |
| thread_id | |
| depends_on_issue_id | ah-efe |
| depends_on_wisp_id | NULL |
| depends_on_external | NULL |
| id | 019fcf24-7ac2-7ce8-b900-bd82324486a9 |
| issue_id | ah-efe.5 |
| event_type | created |
| actor | Eugene Blikh |
| old_value | |
| new_value | |
| comment | NULL |
| created_at | 2026-08-05T02:38:22Z |
| id | 019fcf25-2e9f-7d52-9418-fb451786694c |
| issue_id | ah-efe.5 |
| event_type | status_changed |
| actor | Eugene Blikh |
| old_value | {"id":"ah-efe.5","title":"SPEC sections 9 and 14: .task/ layout stale, Stage 3-4 still written as roadmap","description":"Found while refreshing §12 (ah-efe.2). Neither section is covered by the existing ah-efe children (.1 covers §5/6, .3 covers §1/4/11), so they would silently stay stale.\n\nSECTION 9 (runner):\n- The .task/ layout comment at ~line 396 reads 'question.json # reserved for Stage 4 ask-user'. Stage 4 ask-user is DELIVERED; the file is live, not reserved.\n- The same listing omits five files the code actually writes or reads: tasks.json, summary.md, publish.json, answer.json, and tool-auth.json (mode 0600, written by internal/runner/taskfiles.go).\n\nSECTION 14 (roadmap):\n- Stages 3 and 4 are still phrased as forward-looking roadmap items while Stage 2 is marked 'Delivered'. The mem0 lifecycle, Context Pack, agent tools API, AgentsView deep links and the Yonote lanes have all shipped; the stage markers need the same treatment Stage 2's got.\n- The Stage 4 item promises 'ask-user→Question loop with pi --session resumes'. The delivered mid-run path instead keeps the process alive by BLOCKING in the CLI (2s polls until --deadline), so that phrasing describes a superseded design and should be corrected rather than just re-marked as done.","acceptance_criteria":"§9's .task/ listing matches what internal/runner/taskfiles.go actually writes, with no 'reserved' markers on delivered files. §14's Stage 3 and Stage 4 entries carry accurate delivered/not-delivered markers, and the ask-user description matches the blocking-CLI design that actually shipped.","status":"open","priority":3,"issue_type":"chore","owner":"bigbes@gmail.com","created_at":"2026-08-04T23:38:22Z","created_by":"Eugene Blikh","updated_at":"2026-08-04T23:38:22Z"} |
| new_value | {"status":"in_progress"} |
| comment | NULL |
| created_at | 2026-08-05T02:39:08Z |
| id | 019fcf2e-f507-7bdb-a2c5-ed1f180d3e14 |
| issue_id | ah-efe.5 |
| event_type | closed |
| actor | Eugene Blikh |
| old_value | |
| new_value | Done in 119b84d. §9's .task/ listing was three files short of reality and mislabelled a delivered one: question.json was marked 'reserved for Stage 4' although the ask-user file channel has shipped, and tasks.json, summary.md, publish.json, answer.json and tool-auth.json were absent entirely. Verified against internal/runner/taskfiles.go and runner.go prepareTaskDir; the listing now carries all eleven entries plus the two directories the code actually manages (artifacts/, publish/), with tool-auth.json marked mode 0600 and written only when a token was minted. A new paragraph states the inbound/supervisor/outbound split, that a missing outbound file always means 'not requested' rather than an error, and that Start clears every attempt-scoped file (stale exit.json, all outbound files, publish/, artifacts/, tool-auth.json) and truncates events.jsonl — with the concrete failure each clearing prevents. §14's Stage 3 and Stage 4 were still forward-looking roadmap while Stage 2 read 'Delivered'; both are now marked delivered in Stage 2's style. Two roadmap promises are CORRECTED rather than ticked off: (1) the post-run summarizer role was NEVER BUILT — no such role or prompt exists; the shipped design substitutes agent-authored .task/summary.md plus mem0's infer=true extraction, and accepting that substitution is the open decision on ah-ydx; (2) 'ask-user→Question loop with pi --session resumes' was a superseded design — there is no pi --session resume anywhere: the file channel parks in Question and a human answer starts a NEW attempt with a freshly rendered prompt, while the mid-run path never stops the run at all (ahub tool ask-user blocks in the CLI polling GET /api/tool/answer every 2s until --deadline, default 5m). Stage 4 also now states plainly that the roadmap's memory search/add tools do not exist and nothing tracks them, and that there is no content-level dedup of requested children. |
| comment | NULL |
| created_at | 2026-08-05T02:49:48Z |
| id | 019fcf42-0d2e-7d6d-80ad-02f43e15ba7f |
| issue_id | ah-efe.5 |
| event_type | label_added |
| actor | Eugene Blikh |
| old_value | NULL |
| new_value | NULL |
| comment | Added label: milestone:v0.1.0 |
| created_at | 2026-08-05T03:10:40Z |
No comments.
Close reason