ijorkfor92fltiktfut6a4cairtpu7nn · 104 rows
| id | content_hash | title | description | design | acceptance_criteria | notes | status | priority | issue_type | assignee | estimated_minutes | created_at | created_by | owner | updated_at | closed_at | closed_by_session | external_ref | spec_id | compaction_level | compacted_at | compacted_at_commit | original_size | sender | ephemeral | wisp_type | pinned | is_template | mol_type | work_type | source_system | metadata | source_repo | close_reason | event_kind | actor | target | payload | await_type | await_id | timeout_ns | waiters | hook_bead | role_bead | agent_state | last_activity | role_type | rig | due_at | defer_until | no_history | started_at | is_blocked |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ah-ydx.2 | f548f321fdf44dbfaaa3c420a175ff8b3bea76ab1cf76d097509d87eeb461072 | internal/ctxpack: Context Pack builder | Deterministic prompt-context assembler per SPEC §14.3: ordered sections (task, comment thread, parent chain, memory, git log/diffstat) under a ~40k char budget, per-section truncate-from-tail with stable ordering so identical inputs render identical packs. Pure package + table tests first; wiring into runner PROMPT.md rendering is a separate integration step after wave 1 merges. | closed | 2 | feature | Eugene Blikh | NULL | 2026-07-18T13:23:56Z | Eugene Blikh | bigbes@gmail.com | 2026-07-18T13:41:11Z | 2026-07-18T13:41:11Z | NULL | 0 | NULL | NULL | NULL | 0 | 0 | 0 | �{} | internal/ctxpack merged to master (342410e); format contract pinned by golden tests; runner integration tracked in ah-ydx.3 | 0 | NULL | NULL | NULL | 0 | 2026-07-18T13:25:08Z | 0 | |||||||||||||||||||||||
| ah-ydx.3 | 16681b27f4960105b6ca27beabc1e8219b7b6edab3c59c243830102a1c17bd7a | Memory lifecycle: load-on-claim CONTEXT section, save-on-Done | Wire mem0 into the task loop per SPEC §14.3: on claim, search mem0 (proj scope + global) and render a memory section into the prompt context via ctxpack; on Done/Cancelled terminal scan (shares the ah-07g hook), save run summary/verdict facts back to mem0 (run_id='task:<id>'). Depends on the mem0 client, ctxpack, and the ah-07g terminal-state scan. | MEM0 SERVER HEALTHY (2026-07-18, after user-authorized override delete + restart): /configure now reflects env-of-truth (deepseek/deepseek-v4-flash + nvidia/nemotron-embed-1b-v2). FULL live smoke green: ADD infer=false 200/event=ADD; SEARCH 200 with score (embeddings ok); ADD infer=true 200 (LLM extraction ok); LIST/PURGE/EMPTY clean; bogus key 401. Server-side contract fully verified — lifecycle implementation unblocked once ah-07g lands the terminal-state hook. OPERATIONAL RULE: mem0 config is ENV-ONLY; never POST /configure (GET redacts secrets, round-trip corrupts stored creds — happened + fixed today, backup at phoebe:/root/mem0-settings-backup.sql); if a stored override reappears (dashboard onboarding creates one), delete settings row key=config_overrides + restart. | closed | 2 | feature | Eugene Blikh | NULL | 2026-07-18T13:23:57Z | Eugene Blikh | bigbes@gmail.com | 2026-07-18T16:22:33Z | 2026-07-18T16:22:33Z | NULL | 0 | NULL | NULL | NULL | 0 | 0 | 0 | �{} | Merged b761cbe: recall-on-claim (## Relevant memories via ctxpack, proj+global scopes, 15s budget, feature-off byte-identical) + save-on-Done (save→archive→prune ordering, infer=true, once-only via worktree signal, Cancelled excluded). Rollout: install MEM0_API_KEY in /etc/agent-hub/env, live-smoke recall block + one memory_saved event. | 0 | NULL | NULL | NULL | 0 | 2026-07-18T15:59:39Z | 0 | ||||||||||||||||||||||
| ah-ydx.4 | 082c3365aabe053240cf35195442ee1ca6547ba635899ad10f3319fea286fd7e | Full Context Pack: thread comments, parent chain, git log sections in prompt | ah-ydx.2's ctxpack renders only the memory section today. SPEC §14.3's full pack adds: board comment thread, parent-chain summaries (delegation), git log/diffstat of the branch — assembled with the memory section under the ~40k budget in canonical order. Backlog until the current prompt shape shows its limits in live runs. | closed | 3 | feature | Eugene Blikh | NULL | 2026-07-18T16:22:34Z | Eugene Blikh | bigbes@gmail.com | 2026-07-18T18:47:54Z | 2026-07-18T18:47:54Z | NULL | 0 | NULL | NULL | NULL | 0 | 0 | 0 | �{} | Full Context Pack live: thread + parent-chain + memory + git sections through one 40k-budget ctxpack build on the claim path; context_pack audit event; per-section graceful degradation. | 0 | NULL | NULL | NULL | 0 | 2026-07-18T18:19:54Z | 0 | |||||||||||||||||||||||
| ah-ziq | f6ed15a8569893a586511b86daf9a0cfc59c0fd794875182892371c1c8323d80 | yonote: comments.resolve 400s — live API requires isResolved boolean in body | Live re-smoke of the Q&A loop (ah-eje, task 5) proved comments.resolve is broken: the daemon's POST /api/comments.resolve got HTTP 400 invalid_type 'Invalid input: expected boolean, received undefined (isResolved)'. Yonote 1.47.1 requires an isResolved:true field in the resolve payload; our client sends only {id}. Deterministic — every resolve fails, answer delivery is unaffected (non-fatal WARN path worked as designed). Fix: add IsResolved to the resolve wire payload in internal/yonote/comments.go, adjust tests, re-verify live that a fresh qa question ends isResolved:true. | closed | 2 | bug | Eugene Blikh | NULL | 2026-07-19T18:11:32Z | Eugene Blikh | bigbes@gmail.com | 2026-07-19T18:21:38Z | 2026-07-19T18:21:38Z | NULL | 0 | NULL | NULL | NULL | 0 | 0 | 0 | �{} | Fixed in 2720611: resolve payload now {id, isResolved:true}. Live-verified (task 6 / comment 732b89b2): resolve succeeded, no WARN, comment isResolved:true. | 0 | NULL | NULL | NULL | 0 | 2026-07-19T18:11:47Z | 0 |