View memory

Instructions for AI Assistants

Current state: Memory loaded
Next action: Read the memory content above. To search more, fetch /recall.
Fetch this URL: /memory/e9fa8b66-23fc-4900-9c33-a9e451db8f1a

Memory

## Work Engineering Design Reconciliation (Q-A through Q-I Decisions) **Date:** 2026-09-09 **Status:** **Confirmed by Mike, 2026-09-09** **Related:** Work Engineering in the Workspace DO (4b6691c7), Work Item ↔ Work Engineering Join (cb8498bf), LLM Assigned to Workstation (fb041f01), Map Definition Tools (7b4ca278), Quality Workstations Have Contracts (ec2127f9), Work Engineering Map v0 reference (server.js) --- ## Summary This entry reconciles the four new design docs (ec2127f9, fb041f01, 7b4ca278, cb8498bf) plus the updated direction note (4b6691c7) against the validated Work Engineering Map v0 reference implementation (server.js). It identifies conflicts/gaps and proposes resolutions for Mike's confirmation. **All decisions Q-A through Q-I confirmed by Mike, 2026-09-09.** These decisions are now canonical and can be folded into the full implementation plan (W1 core, W2 join, W3 pinning/UI). --- ## 1. Resolved — Questions from prior turn (answered in cb8498bf) These are confirmed and need no further action: 1. **Operator independence** → Advisory v1, later contract-governed (`operatorIndependence: 'required'`). [mikesecondbrain:1][mikesecondbrain:2] 2. **Lot granularity** → One lot per work item, rework reuses the lot. [mikesecondbrain:1] 3. **Gate assignment** → Open to any active callsign v1. [mikesecondbrain:1] 4. **Sync direction** → Lot authoritative; `complete_work` rejected unless lot accepted; rework → back to open. [mikesecondbrain:1] Join design, naming table, and `get_attention` enrichment are all specified. W1/W2/W3 skeleton from prior plan still stands. --- ## 2. Confirmed decisions (Q-A through Q-I) ### Q-A. Storage authority — Artifacts-first vs SQLite-first **Decision:** **SQLite-first v1, Artifacts mirror in v2**. Rationale: - The reference implementation is proven, tested, and validated (24 run-log entries, two fixtures, quality independence + gate direction enforced). [mikesecondbrain:4] - Artifacts integration adds complexity (commit strategy, conflict resolution, sync with SQLite) that is not needed for the initial validation. - Artifacts can be added in a second phase once the SQLite model is stable. --- ### Q-B. Gate model divergence — Characteristics vs contract-level verdicts **Decision:** **Hybrid model (characteristics + contracts), `evaluateGate` canonical**. Rationale: - Characteristics provide fine-grained evidence ("Notes completeness", "PR review passed", "Remote write verified"). [mikesecondbrain:4] - Contracts provide the high-level governance (inputs, outputs, rules, evidence requirements). - Hybrid model: `defineCharacteristic` remains, but characteristics must reference a `contractId`. Contract specifies evidence requirements; characteristics are the specific checks. - `submit_quality_decision` is an alias for the same operation at the contract level. --- ### Q-C. Claim-per-station vs auto-advance **Decision:** **Auto-advance through production stations; explicit claim at quality stations**. Rationale: - Auto-advance is a useful optimization for production stations with no quality gates. - Requiring explicit claim at every station adds coordination overhead without benefit. - Quality stations require explicit operator binding (callsign) and evidence recording. --- ### Q-D. Work item ↔ station binding **Decision:** **Confirmed**. - **1 work item : 1 lot**. - `workstation_id` in work item tracks the lot's **current** station. - Re-authorization (new callsign assignment) only when station changes to quality or when no operator is bound. - Production stations inherit the callsign from the work item unless explicitly reassigned. --- ### Q-E. Status vocabulary mismatch **Decision:** **Map onto existing enum** (`pending`/`open`/`blocked`/`review`/`closed`/`note`), add `rejected` only if needed. - `in_progress` → `open` - `blocked` → `blocked` (already exists) - `completable` → `review` (ready for human closure) - `accepted` → `closed` (via `complete_work`) - `rejected` → Add `rejected` terminal state only if rejected lots need to be visible as distinct terminal items. Default: map to `closed` with a `rejectionReason` field. --- ### Q-F. Activation concept **Decision:** **Drop activation v1, validation-only**. Rationale: - Activation adds complexity without clear benefit in v1. - Lots can reference any validated routing directly. - Activation can be added later if multi-tenant or approval workflows require it. --- ### Q-G. Capability/workingAreas enforcement **Decision:** **Advisory metadata v1, enforcement v2**. Rationale: - Enforcement adds runtime complexity (capability checks, path validation). - Advisory metadata is sufficient for initial validation. - Enforcement can be added once the model is stable. --- ### Q-H. Operator-binding authority **Decision:** **D1 work-item assignment is authoritative, DO mirrors as operator sessions**. Rationale: - D1 is the global coordination store (callsigns, work items, attention). - DO is workspace-local execution (lots, workstations, evidence). - D1 assigns work items to callsigns; DO mirrors this as operator sessions. - Unused DO-side `work_items` table is dropped. --- ### Q-I. MCP surface shape **Decision:** **Grouped surface acceptable** (`we_brief`, `we_define`, `we_run`, `we_map`). Rationale: - Grouping improves discoverability and reduces tool list clutter. - Flat surface is still available internally; grouping is a presentation layer. - MCP clients benefit from logical grouping (brief, define, run, map). --- ## 3. Smaller items (fold into plan) - **In-flight lots on routing revision:** Confirmed — lots snapshot `stationIds` into the lot at `startLot`, so routing revisions don't affect in-flight lots. **Closed**. - **Evidence → memory promotion triggers:** Promote on `markLotVerdict accepted` + quality evidence recorded. Manual promotion for special cases. - **`operators/` profiles vs global callsigns:** `operator profile` = project-local workstation authorization (DO), distinct from `callsign` = global identity (D1). **Confirmed naming**. - **Work-item status `completed` vs `closed`:** Canonical is `closed` in code — docs corrected to `closed`. - **Design docs as files:** Per P4-001/P3.5, these become decision records in `p4-think-admin-agent/decisions/` as P4-002 (join), P4-003 (WE-in-DO), P4-004 (map definition tools). **Confirmed**. - **Backfill of existing projects with WE bootstrap:** Defer to later phase. --- ## Decisions summary table | Question | Decision | Rationale | |---|---|---| | Q-A: Storage authority | SQLite-first v1, Artifacts v2 | Reference is proven, Artifacts adds complexity | | Q-B: Gate model | Hybrid (characteristics + contracts), `evaluateGate` canonical | Fine-grained evidence + high-level governance | | Q-C: Claim-per-station | Auto-advance production, explicit claim at quality | Reduces coordination overhead | | Q-D: Work item binding | 1 work item : 1 lot, `workstation_id` tracks current station | Matches example flow | | Q-E: Status vocabulary | Map onto existing enum, add `rejected` only if needed | Avoids enum proliferation | | Q-F: Activation | Drop v1, validation-only | Simplifies initial build | | Q-G: Capabilities enforcement | Advisory v1, enforcement v2 | Reduces runtime complexity | | Q-H: Operator-binding authority | D1 authoritative, DO mirrors | Clear separation of concerns | | Q-I: MCP surface | Grouped surface acceptable | Improves discoverability | --- **Note:** All decisions Q-A through Q-I are now **confirmed and canonical**. Ready to fold into full implementation plan (W1 core, W2 join, W3 pinning/UI).

Tags: work-engineering, design-reconciliation, decisions, sqlite, artifacts, characteristics, contracts, mcp-tools, design-confirmation, kind:episodic — Source: mcp — 2026-09-08 23:13:18 UTC

Connected memories

What would you like to do next?