77 lines
2.6 KiB
Markdown
77 lines
2.6 KiB
Markdown
|
|
---
|
|||
|
|
id: AGENTIC-WP-0010
|
|||
|
|
type: workplan
|
|||
|
|
title: "Coding Session Memory — Weekly Retro entrypoint + hub publish"
|
|||
|
|
domain: helix_forge
|
|||
|
|
repo: agentic-resources
|
|||
|
|
status: finished
|
|||
|
|
owner: codex
|
|||
|
|
topic_slug: helix-forge
|
|||
|
|
created: "2026-06-07"
|
|||
|
|
updated: "2026-06-07"
|
|||
|
|
state_hub_workstream_id: "6b9816e4-65bc-4fc7-b8e1-33f4edd51e7a"
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Coding Session Memory — Weekly Retro entrypoint + hub publish
|
|||
|
|
|
|||
|
|
The **analysis half** of a weekly coding retrospection. A windowed retro runs
|
|||
|
|
detect + measure over the previous week, ranks the **top-3 improvement
|
|||
|
|
suggestions per repo** (impact × frequency, cross-flavor first; recommendations
|
|||
|
|
pulled from the Pattern Catalog), and **publishes the ranked result to the State
|
|||
|
|
Hub as a read model** (an `event_type=coding_retro` progress event, mirroring how
|
|||
|
|
`daily-triage-report` publishes).
|
|||
|
|
|
|||
|
|
This is the dependency that activity-core's weekly schedule consumes
|
|||
|
|
(`activity-wp-0008` — *Weekly Coding Retrospection schedule*). Keeping the analysis
|
|||
|
|
here and publishing to the hub keeps activity-core decoupled from the
|
|||
|
|
workstation-local session store.
|
|||
|
|
|
|||
|
|
## Windowed Weekly Retro Report (top-3 per repo)
|
|||
|
|
|
|||
|
|
```task
|
|||
|
|
id: AGENTIC-WP-0010-T01
|
|||
|
|
status: done
|
|||
|
|
priority: high
|
|||
|
|
state_hub_task_id: "34d30250-c0d3-4837-81c7-1c858c2ee801"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
`retro/build.py`: window digests by date (last N days), run
|
|||
|
|
`extract_signals` + `cluster` over the window, explode problem patterns per repo,
|
|||
|
|
rank by score and cap at **3 per repo**. Attach a recommendation per suggestion
|
|||
|
|
from the Pattern Catalog (lookup by pattern key → first resolution) with a sensible
|
|||
|
|
default. Include a fleet measure snapshot for context. Pure function over digests;
|
|||
|
|
unit-tested.
|
|||
|
|
|
|||
|
|
## Publish Retro to the Hub + Local Report
|
|||
|
|
|
|||
|
|
```task
|
|||
|
|
id: AGENTIC-WP-0010-T02
|
|||
|
|
status: done
|
|||
|
|
priority: high
|
|||
|
|
state_hub_task_id: "cbe1288a-ce51-48c0-b741-adf4a6cbce3a"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Publish the ranked retro to the State Hub as a read model: POST a progress event
|
|||
|
|
(`event_type=coding_retro`) with the structured report (`suggestions[]`, window,
|
|||
|
|
`generated_at`) in `detail`. Also write a local JSON + markdown report. **Graceful
|
|||
|
|
degrade** when the hub is unreachable (write local, skip publish). Hub URL under
|
|||
|
|
`[retro]` in `config.toml`.
|
|||
|
|
|
|||
|
|
## Retro Entrypoint + Tests + Live Verify
|
|||
|
|
|
|||
|
|
```task
|
|||
|
|
id: AGENTIC-WP-0010-T03
|
|||
|
|
status: done
|
|||
|
|
priority: medium
|
|||
|
|
state_hub_task_id: "af540220-58dd-4cf5-a9dc-6db4b995fa08"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
`python -m session_memory.retro [--window-days 7] [--publish] [--json]`: windowed
|
|||
|
|
retro → ranked top-3 per repo → optional hub publish + local report. Document in
|
|||
|
|
`session_memory/README.md`. Live verify over the real local sessions. After
|
|||
|
|
workplan updates, notify the operator to run from `~/state-hub`:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
make fix-consistency REPO=agentic-resources
|
|||
|
|
```
|