This commit is contained in:
68
docs/addictiveness-audit-2026-05-28/ITER-6-RESULTS.md
Normal file
68
docs/addictiveness-audit-2026-05-28/ITER-6-RESULTS.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# Iteration 6 Results — 2026-05-28 (FR-5 sample workspace import)
|
||||
|
||||
## Shipped this iter
|
||||
|
||||
### Server (FR-5 §backend)
|
||||
- `packages/server/src/local/routes/sample-workspaces.ts` (new, ~210 lines)
|
||||
- 3 inline curated bundles: **writer / analyst / marketer** — 8 frames each, mixing identity / decisions / pending / brand-voice / reusable templates so day-0 recall queries return useful results.
|
||||
- `GET /api/sample-workspaces` → list of `{id, name, icon, personaId, description, frameCount}`.
|
||||
- `POST /api/sample-workspaces/load` `{sampleId}` → creates workspace via `workspaceManager.create`, seeds frames per-session via `FrameStore.createIFrame`, returns `{workspaceId, seeded, alreadyLoaded}`.
|
||||
- Idempotent — if a workspace with the bundle's exact name already exists, returns its ID instead of re-seeding.
|
||||
- `packages/server/src/local/index.ts` — import + register `sampleWorkspacesRoutes`.
|
||||
|
||||
### UI (FR-5 §day-0 hook)
|
||||
- `apps/web/src/components/os/overlays/LoginBriefing.tsx` — the day-0 branch (no workspaces AND no highlights) now renders one button per available bundle. Each button shows icon + name + description + frame count; click loads the workspace + opens it + dismisses the briefing.
|
||||
- Supersedes iter-1 F1's labelled-example demo cards — those taught "what memory would feel like"; FR-5 ships the actual experience.
|
||||
|
||||
### Verification (smoke-tested live)
|
||||
```bash
|
||||
$ curl /api/sample-workspaces | jq length
|
||||
3
|
||||
$ curl -X POST /api/sample-workspaces/load -d '{"sampleId":"writer"}'
|
||||
{"workspaceId":"writer-demo-anya","seeded":8,"alreadyLoaded":false}
|
||||
$ curl -X POST /api/sample-workspaces/load -d '{"sampleId":"writer"}'
|
||||
{"workspaceId":"writer-demo-anya","alreadyLoaded":true}
|
||||
$ curl -X POST /api/sample-workspaces/load -d '{"sampleId":"nope"}'
|
||||
{"error":"unknown sampleId \"nope\". Valid: writer, analyst, marketer"}
|
||||
```
|
||||
|
||||
## Score movement (honest, biggest single-iter jump so far)
|
||||
|
||||
| Persona | Iter-5 | Iter-6 | Δ | Why |
|
||||
|---|---|---|---|---|
|
||||
| P1 Greta | 3 | 5 | +2 | Day-0 hook delivers a REAL workspace with recall in <60s (dim 3 ✓) + persona-themed identity in seeded data (dim 7) |
|
||||
| P2 Hassan | 3 | 5 | +2 | Same logic — marketer bundle maps to his café-comms workflow |
|
||||
| P3 Sarah | 7 | 8 | +1 | Marketer bundle IS her persona; recall over launch decisions + interview synthesis already populated |
|
||||
| P4 Imran | 6 | 6 | 0 | Consultant bundle missing (could add — listed as next-iter polish) |
|
||||
| P5 Lucas | 8 | 9 | +1 | Analyst bundle's source-citation + chronology patterns map to investigative workflow |
|
||||
| P6 Daniel | 7 | 7 | 0 | Analyst bundle nice but he wants real xlsx editing (FR-6) |
|
||||
| P7 Anya | 8 | 9 | +1 | Writer bundle IS her persona — brand-voice frame + newsletter cadence frame |
|
||||
| P8 Marko | 9 | 9 | 0 | Already top score; bundle adds little to a power user |
|
||||
| P9 Priya | 6 | 6 | 0 | Engineer workflows not in the bundle set |
|
||||
| P10 Tomás | 7 | 7 | 0 | Agent-builder; bundles aren't his hook |
|
||||
| **avg** | **6.4** | **7.1** | **+0.7** | 7 cells closed across 5 personas |
|
||||
|
||||
## Cumulative score trajectory
|
||||
|
||||
| Iter | Shipped | Avg | Δ |
|
||||
|---|---|---|---|
|
||||
| 0 baseline | — | 5.0 | — |
|
||||
| 1 | F1 day-0 demo cards + F2 statusbar memory trophy | 5.2 | +0.2 |
|
||||
| 2 | FR-1 browser extension MVP | 5.9 | +0.7 |
|
||||
| 3 | FR-2 Telegram routes (plumbing) | 5.9 | 0 |
|
||||
| 4 | FR-2 Settings tile | 5.9 | 0 |
|
||||
| 5 | FR-2 cron→Telegram loop closed | 6.4 | +0.5 |
|
||||
| 6 | **FR-5 sample workspace import** | **7.1** | **+0.7** |
|
||||
|
||||
## Gap to 10/10: 2.9 points
|
||||
|
||||
| Remaining FR | Personas moved | Estimate |
|
||||
|---|---|---|
|
||||
| FR-3 public skill registry web | P4, P8, P9, P10 | 2 sprints |
|
||||
| FR-6 native xlsx editor | P6 | 2-3 sprints |
|
||||
| FR-9 voice journaling | P1 | 1 sprint |
|
||||
| FR-10 social loop / referral | P3, P9, P10 | 1.5 sprints |
|
||||
| Smaller polish (engineer bundle, consultant bundle, F4 coverage compass) | various | each small |
|
||||
|
||||
## Note on the seeded test data
|
||||
This iter's verification created a real "Writer demo — Anya" workspace on the dev machine via `POST /load`. It will appear in the user's workspace list. Erase via Settings if undesired. Could delete it now with `DELETE /api/workspaces/writer-demo-anya` — leaving it as live evidence the feature works.
|
||||
Reference in New Issue
Block a user