generated from coulomb/repo-seed
110 lines
4.5 KiB
Markdown
110 lines
4.5 KiB
Markdown
---
|
|
id: ACTIVITY-WP-0008
|
|
type: workplan
|
|
title: "Weekly Coding Retrospection schedule (Saturday evenings)"
|
|
domain: custodian
|
|
repo: activity-core
|
|
status: blocked
|
|
owner: codex
|
|
topic_slug: custodian
|
|
created: "2026-06-07"
|
|
updated: "2026-06-17"
|
|
state_hub_workstream_id: "7387fc50-1f2c-471a-9d85-bb085cbd0b63"
|
|
---
|
|
|
|
# Weekly Coding Retrospection schedule (Saturday evenings)
|
|
|
|
**Origin:** requested from the `helix_forge` domain. Every Saturday 19:00
|
|
Europe/Berlin, read the previous week's coding-session analysis (published to the
|
|
hub by helix_forge session-memory) and open **one improvement suggestion per
|
|
relevant repo — the three most promising**.
|
|
|
|
This is the same shape as the existing `weekly-sbom-staleness` activity-definition
|
|
(cron → context resolver → per-repo task emission); only the data source is new.
|
|
|
|
**Dependency:** `AGENTIC-WP-0010` (helix_forge) publishes the
|
|
`event_type=coding_retro` read model this schedule consumes. That side computes
|
|
and ranks (top-3 per repo, cross-flavor first, recommendations from the Pattern
|
|
Catalog); this side schedules and routes.
|
|
|
|
## `coding_retro` Context Resolver
|
|
|
|
```task
|
|
id: ACTIVITY-WP-0008-T01
|
|
status: done
|
|
priority: high
|
|
state_hub_task_id: "26846304-f5f1-4edf-aba3-227c9b11c9fa"
|
|
```
|
|
|
|
Add a context resolver (`context_resolvers/`) returning the latest weekly
|
|
coding-retro published to the hub (`event_type=coding_retro`): its
|
|
`suggestions[]` (repo, title, recommendation, priority, score), window, and
|
|
`generated_at`. Bind under `context.retro`. Mirror the `repo_sbom_status` resolver
|
|
shape so rules can `for_each` over `context.retro.suggestions`.
|
|
|
|
**2026-06-07:** Implemented `query: coding_retro` in the State Hub context
|
|
resolver. It reads recent `/progress/` items, selects the latest
|
|
`event_type=coding_retro`, normalizes `suggestions[]`, and returns an empty
|
|
suggestion list while the upstream publisher has not produced a read model yet.
|
|
|
|
**2026-06-17:** Hardened the resolver lookup after live review found recent
|
|
non-retro progress could hide older retro events. The resolver now queries
|
|
State Hub with `event_type=coding_retro` and only selects a read model matching
|
|
the requested `window_days`, so the weekly schedule cannot accidentally route a
|
|
broader 30-day retro batch.
|
|
|
|
## `weekly-coding-retro` Activity-Definition
|
|
|
|
```task
|
|
id: ACTIVITY-WP-0008-T02
|
|
status: done
|
|
priority: high
|
|
state_hub_task_id: "09eeacb7-dc0d-4617-8398-a99a4e5a227e"
|
|
```
|
|
|
|
Add `activity-definitions/weekly-coding-retro.md`: cron `0 19 * * 6`
|
|
Europe/Berlin, `context_source` `coding_retro`, and a rule that `for_each` over
|
|
`context.retro.suggestions` emits one improvement task to `target_repo` with the
|
|
suggestion title + recommendation, priority, and labels
|
|
`[coding-retro, improvement, automated]`. Ship `enabled: false` until the resolver
|
|
+ publish are verified. A starter draft is provided at
|
|
`activity-definitions/weekly-coding-retro.md` (proposed by helix_forge).
|
|
|
|
**2026-06-07:** Updated the starter definition against the implemented resolver:
|
|
cron Saturday 19:00 Europe/Berlin, `context_source` `coding_retro` bound to
|
|
`context.retro`, and a rule that emits one positive-score suggestion per target
|
|
repo with the coding-retro/improvement/automated labels. It remains
|
|
`enabled: false` until live publish verification succeeds.
|
|
|
|
## Dry-Run Verify + Enable + Docs
|
|
|
|
```task
|
|
id: ACTIVITY-WP-0008-T03
|
|
status: wait
|
|
priority: medium
|
|
state_hub_task_id: "9dcbebe7-13dd-4957-9a72-858418049aef"
|
|
```
|
|
|
|
Dry-run the definition end-to-end against a published `coding_retro` read model;
|
|
confirm one task per relevant repo (≤ 3) with correct routing and no duplicates on
|
|
re-run. Flip `enabled: true`. Document alongside `weekly-sbom-staleness`. After
|
|
workplan updates, run from `~/state-hub`:
|
|
|
|
```bash
|
|
make fix-consistency REPO=activity-core
|
|
```
|
|
|
|
**2026-06-07:** Added fixture-level dry-run coverage and runbook documentation.
|
|
Live State Hub did not yet expose a published `event_type=coding_retro` progress
|
|
item, so the real dry-run, duplicate check, and `enabled: true` flip remain
|
|
blocked on `AGENTIC-WP-0010`.
|
|
|
|
**2026-06-17:** `AGENTIC-WP-0010` is finished and State Hub has
|
|
`coding_retro` progress. A live no-write smoke now resolves the matching weekly
|
|
read model `ec20ac1c-ef50-4db4-a5dc-364d31a259a5`
|
|
(`generated_at=2026-06-07T19:25:19Z`, `window.days=7`) and emits zero task
|
|
specs because that weekly read model has zero suggestions. The schedule remains
|
|
disabled until a non-empty weekly read model, or an explicit operator decision
|
|
that a zero-suggestion dry-run is an acceptable enablement proof, confirms
|
|
correct routing and no duplicate target tasks on re-run.
|