Verify and document the rebuilt workspace #17

Closed
opened 2026-08-28 19:24:45 +00:00 by dikka · 1 comment
Owner

What to build

Audit the completed browser-primary rebuild against the full approved specification rather than treating passing tests as proof of completion. Close behavior gaps required by the tickets, run focused and full verification, perform real-app desktop and narrow QA against the already-running development server, and leave current production browser and hub artifacts built.

Replace superseded product and technical direction instead of layering more contradictory notes. Document Pilcrow-versus-Pi ownership, direct hub process lifetime, exact-path Continue, terminal-observed authority, workspace placement and attention, state-directory configuration, development isolation, History source behavior, protocol compatibility policy, and the required post-build restart order.

Do not introduce migration, a separate supervisor, remote access, or any other excluded feature during final hardening. The user, not the agent, restarts the normal hub and reloads or restarts active Pi sessions after handoff.

Acceptance criteria

  • A requirement-by-requirement audit accounts for every ticket acceptance criterion and explicit exclusion.
  • Focused affected suites pass, followed by vp test, vp check, and vp build.
  • Current production artifacts are present after the successful build.
  • Desktop QA covers Overview attention, durable lifecycle, cold History, long streams, live settlement, annotation, project Changes, terminal, model controls, and operatives.
  • Narrow QA covers one-destination navigation, preserved stream/drafts, annotation editor usability, input controls, Changes, terminal, and details.
  • No QA step starts, restarts, replaces, or stops the user-run development server; temporary browser-created sessions are cleaned through product controls.
  • Current product and technical documentation describe the rebuilt architecture without retaining superseded supervisor, migration, notification, placement, or stage claims.
  • The handoff names the exact user-run hub and active-session restart/reload order and any remaining verified limitation.

Blocked by

  • #16 — Replace the old workspace shell

Human checkpoint note: Do not request routine per-ticket approval. The implementing agent may make the internal architecture, refactoring, testing, and UI-detail decisions needed to satisfy the acceptance criteria. Pause only if implementation requires a material product or ownership change, a destructive or hard-to-reverse action, excluded security or deployment scope, credentials or spending, or a real-browser design fork with no safe default. Forgejo completion updates may be batched with the rest of the completed frontier. The user performs final hub and Pi restart steps. Agents must not start, restart, replace, or stop the user-run Pilcrow development server.

## What to build Audit the completed browser-primary rebuild against the full approved specification rather than treating passing tests as proof of completion. Close behavior gaps required by the tickets, run focused and full verification, perform real-app desktop and narrow QA against the already-running development server, and leave current production browser and hub artifacts built. Replace superseded product and technical direction instead of layering more contradictory notes. Document Pilcrow-versus-Pi ownership, direct hub process lifetime, exact-path Continue, terminal-observed authority, workspace placement and attention, state-directory configuration, development isolation, History source behavior, protocol compatibility policy, and the required post-build restart order. Do not introduce migration, a separate supervisor, remote access, or any other excluded feature during final hardening. The user, not the agent, restarts the normal hub and reloads or restarts active Pi sessions after handoff. ## Acceptance criteria - [ ] A requirement-by-requirement audit accounts for every ticket acceptance criterion and explicit exclusion. - [ ] Focused affected suites pass, followed by vp test, vp check, and vp build. - [ ] Current production artifacts are present after the successful build. - [ ] Desktop QA covers Overview attention, durable lifecycle, cold History, long streams, live settlement, annotation, project Changes, terminal, model controls, and operatives. - [ ] Narrow QA covers one-destination navigation, preserved stream/drafts, annotation editor usability, input controls, Changes, terminal, and details. - [ ] No QA step starts, restarts, replaces, or stops the user-run development server; temporary browser-created sessions are cleaned through product controls. - [ ] Current product and technical documentation describe the rebuilt architecture without retaining superseded supervisor, migration, notification, placement, or stage claims. - [ ] The handoff names the exact user-run hub and active-session restart/reload order and any remaining verified limitation. ## Blocked by - #16 — Replace the old workspace shell > **Human checkpoint note:** Do not request routine per-ticket approval. The implementing agent may make the internal architecture, refactoring, testing, and UI-detail decisions needed to satisfy the acceptance criteria. Pause only if implementation requires a material product or ownership change, a destructive or hard-to-reverse action, excluded security or deployment scope, credentials or spending, or a real-browser design fork with no safe default. Forgejo completion updates may be batched with the rest of the completed frontier. The user performs final hub and Pi restart steps. Agents must not start, restart, replace, or stop the user-run Pilcrow development server.
Author
Owner

Completed the requirement-by-requirement rebuild audit, closed the discovered behavior/documentation gaps, rebuilt current artifacts, and passed independent closure reviews in jj revision a4e8572e6c68feat(workspace): finalize annotation contract and architecture.

Final hardening delivered:

  • Audited every acceptance criterion and explicit exclusion in #2–#16 against current source, tests, completion comments, jj history, artifacts, and browser evidence. The audit found no remaining state, lifecycle, history, placement, attention, model, operative, Changes/terminal, shell, migration, remote-access, supervisor, catalog, or Pi-JSONL gap.
  • Replaced the non-normative floating/full-screen annotation substitute with one production AnnotationInteractionLayer built from the retained contract components: selection-end , bottom target bar, direct/history-first Contract and Expand, accessible directional menus/previews, protected Clear, local View-Transition-linked draggable/resizable editor, source-aligned marginalia with in-place Editing placeholder, durable drafts/attachments, and annotation/image totals.
  • Preserved canonical target graph/history, one active target, cross-response/branch authority, hidden-stream input fences, async image generation fences, exact TOON submission, and narrow interaction. Removed the obsolete ScopeAffordance/full-screen composition/peek/study paths rather than retaining two products.
  • Contract menus keep the actual history-first target beside distinct inferred alternatives, deduplicated by canonical target identity. Both directional menus are portaled, measured, and clamped inside a 320px viewport.
  • Native selection and retained targeting now share one exact bright/dark highlight token, avoiding a visible capture transition.
  • Submit success now requires the exact authoritative committed snapshot. Missing, incomplete, mixed-version, or compatibility-shaped responses preserve the draft and enter the bounded indeterminate path.
  • Consolidated current architecture in README.md; updated strict-contract/restart guidance in AGENTS.md and the .dev index; created the configured .dev/domain-language.md glossary and compact ADRs for Pi conversation truth, hub-owned process groups, and exact contract rollout.
  • Documentation now distinguishes Pi conversation authority from Pilcrow workspace state; managed vs observed processes; spawn-time hub ownership vs Ready/token-fenced Stop; exact-path Continue; read-only active-branch History visits/cursors; durable placement/Later/attention; configured isolated state roots; provider-neutral operative status; project-owned Changes/terminal; exact v11 compatibility; and exclusions.
  • Corrected stale Responses/session-cwd/supervisor/reconnect/hub-only rollout diagnostics. Feedback and reviewed-position stores are documented as exact version 2 with no migration.

Verification:

  • Final worker-bounded full suite: 75 files, 628 tests passed.
  • Browser and hub TypeScript checks passed.
  • vp fmt: all 206 files correctly formatted.
  • vp check: zero errors; four pre-existing non-blocking hub lint warnings remain.
  • vp run build:hub, vp run build:browser, and vp build: passed.
  • git diff --check: passed.
  • Current runtime/ contains strict protocol v11 and current diagnostics; current dist/index.html references the rebuilt index-NrjKPGrB.js and index-CmCpIPBE.css assets.
  • Independent architecture/documentation and normative-annotation reviewers explicitly authorized #17 closure after reproducing and verifying the final corrections.

Browser QA, without managing processes:

  • Reused the current-workspace Vite server at 127.0.0.1:17167; every agent-browser session was closed.
  • Desktop and narrow workspace-fixture QA covered Overview/attention/operatives, lifecycle controls, one-stream navigation, Details, model/thinking presentation, terminal/Changes destinations, browser Back, route retention, zero horizontal overflow, and bounded failure presentation.
  • Production annotation-fixture QA covered selection-end , target bar, directional focus/preview/Escape, history-first contraction, local marginalia/editor transition, protected Clear, 320px menu containment, narrow editor geometry, and equal bright/dark native/retained colors.
  • QA created no sessions, so no product-control cleanup was required.

Verified limitation:

The Vite server belongs to /home/dikka/projs/pilcrow, but the only running hub belongs to the old /home/dikka/projs/pilcrow-rebuild/pilcrow checkout; current dev hub 17168 and production hub 17067 were unavailable. That mismatched hub was not touched or counted as integration evidence. Fresh live hub-backed lifecycle, cold History, settlement, durable mutation, terminal, Changes, model mutation, and operative-provider QA therefore could not be repeated without violating the no-server-management rule. Current fixture QA plus real automated hub HTTP/WebSocket/process/protocol suites cover those seams for implementation acceptance.

Required user rollout, in this exact order:

  1. Restart the normal/current Pilcrow hub.
  2. Reload or restart every active Pi TUI/RPC session so its extension registers with protocol v11.
  3. Reload browser pages.

Older producer/browser combinations are intentionally unsupported. No migration, catalog rewrite, Pi JSONL rewrite, separate supervisor, or remote access layer was introduced.

Completed the requirement-by-requirement rebuild audit, closed the discovered behavior/documentation gaps, rebuilt current artifacts, and passed independent closure reviews in jj revision `a4e8572e6c68` — `feat(workspace): finalize annotation contract and architecture`. Final hardening delivered: - Audited every acceptance criterion and explicit exclusion in #2–#16 against current source, tests, completion comments, jj history, artifacts, and browser evidence. The audit found no remaining state, lifecycle, history, placement, attention, model, operative, Changes/terminal, shell, migration, remote-access, supervisor, catalog, or Pi-JSONL gap. - Replaced the non-normative floating/full-screen annotation substitute with one production `AnnotationInteractionLayer` built from the retained contract components: selection-end `¶`, bottom target bar, direct/history-first Contract and Expand, accessible directional menus/previews, protected Clear, local View-Transition-linked draggable/resizable editor, source-aligned marginalia with in-place Editing placeholder, durable drafts/attachments, and annotation/image totals. - Preserved canonical target graph/history, one active target, cross-response/branch authority, hidden-stream input fences, async image generation fences, exact TOON submission, and narrow interaction. Removed the obsolete ScopeAffordance/full-screen composition/peek/study paths rather than retaining two products. - Contract menus keep the actual history-first target beside distinct inferred alternatives, deduplicated by canonical target identity. Both directional menus are portaled, measured, and clamped inside a 320px viewport. - Native selection and retained targeting now share one exact bright/dark highlight token, avoiding a visible capture transition. - Submit success now requires the exact authoritative committed snapshot. Missing, incomplete, mixed-version, or compatibility-shaped responses preserve the draft and enter the bounded indeterminate path. - Consolidated current architecture in `README.md`; updated strict-contract/restart guidance in `AGENTS.md` and the `.dev` index; created the configured `.dev/domain-language.md` glossary and compact ADRs for Pi conversation truth, hub-owned process groups, and exact contract rollout. - Documentation now distinguishes Pi conversation authority from Pilcrow workspace state; managed vs observed processes; spawn-time hub ownership vs Ready/token-fenced Stop; exact-path Continue; read-only active-branch History visits/cursors; durable placement/Later/attention; configured isolated state roots; provider-neutral operative status; project-owned Changes/terminal; exact v11 compatibility; and exclusions. - Corrected stale Responses/session-cwd/supervisor/reconnect/hub-only rollout diagnostics. Feedback and reviewed-position stores are documented as exact version 2 with no migration. Verification: - Final worker-bounded full suite: **75 files, 628 tests passed**. - Browser and hub TypeScript checks passed. - `vp fmt`: all 206 files correctly formatted. - `vp check`: zero errors; four pre-existing non-blocking hub lint warnings remain. - `vp run build:hub`, `vp run build:browser`, and `vp build`: passed. - `git diff --check`: passed. - Current `runtime/` contains strict protocol v11 and current diagnostics; current `dist/index.html` references the rebuilt `index-NrjKPGrB.js` and `index-CmCpIPBE.css` assets. - Independent architecture/documentation and normative-annotation reviewers explicitly authorized #17 closure after reproducing and verifying the final corrections. Browser QA, without managing processes: - Reused the current-workspace Vite server at `127.0.0.1:17167`; every agent-browser session was closed. - Desktop and narrow workspace-fixture QA covered Overview/attention/operatives, lifecycle controls, one-stream navigation, Details, model/thinking presentation, terminal/Changes destinations, browser Back, route retention, zero horizontal overflow, and bounded failure presentation. - Production annotation-fixture QA covered selection-end `¶`, target bar, directional focus/preview/Escape, history-first contraction, local marginalia/editor transition, protected Clear, 320px menu containment, narrow editor geometry, and equal bright/dark native/retained colors. - QA created no sessions, so no product-control cleanup was required. Verified limitation: The Vite server belongs to `/home/dikka/projs/pilcrow`, but the only running hub belongs to the old `/home/dikka/projs/pilcrow-rebuild/pilcrow` checkout; current dev hub 17168 and production hub 17067 were unavailable. That mismatched hub was not touched or counted as integration evidence. Fresh live hub-backed lifecycle, cold History, settlement, durable mutation, terminal, Changes, model mutation, and operative-provider QA therefore could not be repeated without violating the no-server-management rule. Current fixture QA plus real automated hub HTTP/WebSocket/process/protocol suites cover those seams for implementation acceptance. Required user rollout, in this exact order: 1. Restart the normal/current Pilcrow hub. 2. Reload or restart every active Pi TUI/RPC session so its extension registers with protocol v11. 3. Reload browser pages. Older producer/browser combinations are intentionally unsupported. No migration, catalog rewrite, Pi JSONL rewrite, separate supervisor, or remote access layer was introduced.
dikka closed this issue 2026-08-29 12:32:38 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
lab/pilcrow#17
No description provided.