From 879c9dfb60dc4b87473b9baf0af21a1fa6e0da9a Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Sun, 26 Jul 2026 13:49:59 +0200 Subject: [PATCH] fix(briefings): correct five more f4c72e148 mis-citations in gestalt.md (T-1205 done) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit D-130->D-131 (broad life-verb vocabulary, x3) and D-118->D-133 (skills affect outcome, x2), each verified by full record-body match and lead spot-check. The T-1205 audit body-matched all 66 unique decision ids across the remaining 11 briefings — the other 10 are citation-clean. Final f4c72e148 tally: 16 mis-citations across 6 of 18 briefings, all fixed (T-1199 + T-1205). Follow-ups: T-1208 (eight wholesale-stale briefings, rewrite backlog), and tiger.md confirmed deleted/off-roster. Co-Authored-By: Claude Fable 5 --- .pql/changelog/ticket_history/2026-07.sql | 4 ++++ .pql/changelog/tickets/2026-07.sql | 8 ++++++++ docs/briefings/gestalt.md | 10 +++++----- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/.pql/changelog/ticket_history/2026-07.sql b/.pql/changelog/ticket_history/2026-07.sql index 7d7b461d1..0b4c9d2d6 100644 --- a/.pql/changelog/ticket_history/2026-07.sql +++ b/.pql/changelog/ticket_history/2026-07.sql @@ -3142,3 +3142,7 @@ INSERT INTO ticket_history (ticket_record_id, field, old_value, new_value, chang INSERT INTO ticket_history (ticket_record_id, field, old_value, new_value, changed_by, changed_at, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'status', 'backlog', 'in_progress', NULL, '2026-07-26 11:43:15', '2026-07-26 11:43:15.589', '2026-07-26 11:43:15.589', NULL, 'c61837bab3043ca02b42baff29a354dc', 2) ON CONFLICT(hash) DO NOTHING; INSERT INTO ticket_history (ticket_record_id, field, old_value, new_value, changed_by, changed_at, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FMZZ0184R5B8YMFJW5NWPNXW', 'assigned_to', NULL, 'dudley', NULL, '2026-07-26 11:43:21', '2026-07-26 11:43:21.474', '2026-07-26 11:43:21.474', NULL, '5fb0b0aab0a23f3f0df522d4e8ec5775', 2) ON CONFLICT(hash) DO NOTHING; INSERT INTO ticket_history (ticket_record_id, field, old_value, new_value, changed_by, changed_at, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'assigned_to', NULL, 'clerk', NULL, '2026-07-26 11:43:22', '2026-07-26 11:43:22.067', '2026-07-26 11:43:22.067', NULL, '0084961ee864136c56a5e15ab98f982a', 2) ON CONFLICT(hash) DO NOTHING; +INSERT INTO ticket_history (ticket_record_id, field, old_value, new_value, changed_by, changed_at, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'description', 'Follow-up to T-1199 (done): the 2026-03-13 commit f4c72e148 (''update all 18 briefings for v0.2 pivot'') is a CONFIRMED source of decision-id transcription errors — five briefings (gore, mellanie, ozzie, stig, nigel) carried eleven mis-citations from a consistent adjacent-id slip family: D-126<->D-134 swapped, D-136 written as D-131, D-137 written as D-136, D-130 written as D-131, D-120 written as D-137. All eleven fixed on main (T-1199). This ticket: audit the OTHER 13 briefings touched by that commit (git show f4c72e148 --stat lists them; araminta.md already rewritten clean by T-1053) for the same slip pattern — check every D-1xx citation in each against the record''s actual title/content, not just the ids from the known family (the family grew twice during the T-1199 fix pass: D-130 and D-120 were found only by verifying claims against record bodies). Method that worked: grep the briefing''s D-ids, read each record''s header, flag any citation whose prose describes different content. Note that several of these briefings are wholesale-stale (pre-cascade framing, like araminta.md was before T-1053) — this ticket fixes CITATIONS only; wholesale rewrites are separate per-briefing work (T-1053 is the model).', 'Follow-up to T-1199 (done): the 2026-03-13 commit f4c72e148 (''update all 18 briefings for v0.2 pivot'') is a CONFIRMED source of decision-id transcription errors — five briefings (gore, mellanie, ozzie, stig, nigel) carried eleven mis-citations from a consistent adjacent-id slip family: D-126<->D-134 swapped, D-136 written as D-131, D-137 written as D-136, D-130 written as D-131, D-120 written as D-137. All eleven fixed on main (T-1199). This ticket: audit the OTHER 13 briefings touched by that commit (git show f4c72e148 --stat lists them; araminta.md already rewritten clean by T-1053) for the same slip pattern — check every D-1xx citation in each against the record''s actual title/content, not just the ids from the known family (the family grew twice during the T-1199 fix pass: D-130 and D-120 were found only by verifying claims against record bodies). Method that worked: grep the briefing''s D-ids, read each record''s header, flag any citation whose prose describes different content. Note that several of these briefings are wholesale-stale (pre-cascade framing, like araminta.md was before T-1053) — this ticket fixes CITATIONS only; wholesale rewrites are separate per-briefing work (T-1053 is the model). + +AUDIT COMPLETE (2026-07-26). Set was 11 files, not 12-13 (tiger.md deleted in 0a9b0d00a, Tiger off the roster). 66 unique D-ids body-matched across all 11. THREE new slip-family members, all in gestalt.md, each verified by full body-match and lead-spot-checked: D-130 written where D-131 (broad life-verb vocabulary) was meant (x3: lines 20/48/62) and D-118 written where D-133 (skills affect outcome) was meant (x2: lines 22/43). All five fixed on main. The other 10 briefings are citation-clean. Context findings recorded on follow-ups: T-1208 (eight wholesale-stale briefings, rewrite backlog, qatux.md + tyre.md highest value; also the systemic superseded-cluster and D-123/D-138 notes). Final slip-family tally across T-1199+T-1205: 16 mis-citations in 6 of 18 briefings, all from the single f4c72e148 commit, all fixed.', NULL, '2026-07-26 11:49:36', '2026-07-26 11:49:36.546', '2026-07-26 11:49:36.546', NULL, '70a4e3f19049b91201e57b2f16e3bd6d', 2) ON CONFLICT(hash) DO NOTHING; +INSERT INTO ticket_history (ticket_record_id, field, old_value, new_value, changed_by, changed_at, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'status', 'in_progress', 'done', NULL, '2026-07-26 11:49:42', '2026-07-26 11:49:42.508', '2026-07-26 11:49:42.508', NULL, 'dced5473823b32b586d691d67cb0d726', 2) ON CONFLICT(hash) DO NOTHING; diff --git a/.pql/changelog/tickets/2026-07.sql b/.pql/changelog/tickets/2026-07.sql index d26a40bbd..c95568d0f 100644 --- a/.pql/changelog/tickets/2026-07.sql +++ b/.pql/changelog/tickets/2026-07.sql @@ -5323,3 +5323,11 @@ INSERT INTO tickets (record_id, type, parent_record_id, title, description, stat INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'task', '06FBPPMZNNEV052DBYYY3A897C', 'Audit remaining 13 briefings for f4c72e148 citation slips', 'Follow-up to T-1199 (done): the 2026-03-13 commit f4c72e148 (''update all 18 briefings for v0.2 pivot'') is a CONFIRMED source of decision-id transcription errors — five briefings (gore, mellanie, ozzie, stig, nigel) carried eleven mis-citations from a consistent adjacent-id slip family: D-126<->D-134 swapped, D-136 written as D-131, D-137 written as D-136, D-130 written as D-131, D-120 written as D-137. All eleven fixed on main (T-1199). This ticket: audit the OTHER 13 briefings touched by that commit (git show f4c72e148 --stat lists them; araminta.md already rewritten clean by T-1053) for the same slip pattern — check every D-1xx citation in each against the record''s actual title/content, not just the ids from the known family (the family grew twice during the T-1199 fix pass: D-130 and D-120 were found only by verifying claims against record bodies). Method that worked: grep the briefing''s D-ids, read each record''s header, flag any citation whose prose describes different content. Note that several of these briefings are wholesale-stale (pre-cascade framing, like araminta.md was before T-1053) — this ticket fixes CITATIONS only; wholesale rewrites are separate per-briefing work (T-1053 is the model).', 'in_progress', 'medium', NULL, 'server', NULL, '2026-07-26 10:50:18.675', '2026-07-26 11:43:15.589', NULL, '6d70abfe8667690d8bb91fba6277b21b', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FMZZ0184R5B8YMFJW5NWPNXW', 'task', '06FB0TNSRZXCHGS16BFHSSGSV4', 'Interstitial fill — tile character between building footprints (setback-driven open space vs. built ops-surface) at chunk derive', 'Deferred slice of T-959 (Layer 5 fill), split out during /whats-next review 2026-07-08. T-988 landed BuildingExteriorTag.setback_tier + BlockSkeleton.interstitial_character (OpenSpace|OperationsSurface, D-233 bulk-driven), and FillChunk now reads materials onto Wall/Roof shell voxels. What remains: actually FILL the between-footprint tiles at chunk-derive time — resolve each non-footprint ground tile to its character (setback-driven interstitial type: void/court/garden/plaza/dock_slip/market_pad/open_lawn per D-235; or the block''s OperationsSurface tag for bulk industry per D-233/T-1097).\n\nWHY DEFERRED (Dudley''s rationale, PR review): FillChunk''s work item today carries only Vec (per-building) with zero block-level metadata; setback_tier is per-building on exterior, but ''the gap between buildings'' is block-shaped. And ''what is an interstitial tile inside a 64m chunk derive'' is a real geometry question (the BSP leaves that lost the coverage roll in subdivide_block_footprints? a separate ground-fill pass?) that needs a design pass, not a guess. Nothing consumes FillChunk in production until Phase 5, so this blocks nothing today.\n\nSCOPE: (1) thread block-level metadata (interstitial_character + setback/density) into the FillChunk work item; (2) decide + implement the ground-fill geometry (which chunk tiles are interstitial vs footprint-covered vs street); (3) resolve each to its D-235 interstitial type / D-233 ops-surface tag; (4) stays pure/cache-free (T-987). Write a short brief pinning the geometry model before implementing.', 'in_progress', 'medium', 'dudley', 'server', 'D-235', '2026-07-11 07:02:23.297', '2026-07-26 11:43:21.473', NULL, 'cb616c48b384be179c8d015e5ad0daa2', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'task', '06FBPPMZNNEV052DBYYY3A897C', 'Audit remaining 13 briefings for f4c72e148 citation slips', 'Follow-up to T-1199 (done): the 2026-03-13 commit f4c72e148 (''update all 18 briefings for v0.2 pivot'') is a CONFIRMED source of decision-id transcription errors — five briefings (gore, mellanie, ozzie, stig, nigel) carried eleven mis-citations from a consistent adjacent-id slip family: D-126<->D-134 swapped, D-136 written as D-131, D-137 written as D-136, D-130 written as D-131, D-120 written as D-137. All eleven fixed on main (T-1199). This ticket: audit the OTHER 13 briefings touched by that commit (git show f4c72e148 --stat lists them; araminta.md already rewritten clean by T-1053) for the same slip pattern — check every D-1xx citation in each against the record''s actual title/content, not just the ids from the known family (the family grew twice during the T-1199 fix pass: D-130 and D-120 were found only by verifying claims against record bodies). Method that worked: grep the briefing''s D-ids, read each record''s header, flag any citation whose prose describes different content. Note that several of these briefings are wholesale-stale (pre-cascade framing, like araminta.md was before T-1053) — this ticket fixes CITATIONS only; wholesale rewrites are separate per-briefing work (T-1053 is the model).', 'in_progress', 'medium', 'clerk', 'server', NULL, '2026-07-26 10:50:18.675', '2026-07-26 11:43:22.067', NULL, '59de0fd08579912724fc7e53466840ea', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); +INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSWGG5738Z62MBWD4NQ9D2T0', 'task', '06FBPPMZNNEV052DBYYY3A897C', 'Briefings rewrite backlog — eight wholesale-stale v0.2-pivot briefings (T-1053 model)', 'From the T-1205 audit (2026-07-26): citations are now clean across all 18 briefings, but eight remain wholesale-stale v0.2-pivot artifacts predating the D-166 cascade — gestalt, hoshe, justine (Sprint-5/legacy-#NNN framing), miri, paula, qatux, troblum, tyre. HIGHEST VALUE: qatux.md (the decision archivist''s own briefing is frozen at ''D-001 through D-137'' with archive activity stopping 2026-03-13; current max is D-257) and tyre.md (lead architect, pre-cascade NpcBlueprint/generator-spike framing). NOT stale: dudley.md (actively maintained), si.md (2026-05-03, cascade-aware), oscar.md (STANDBY, architecturally accurate, low urgency), araminta.md (rewritten by T-1053). Model: T-1053''s rewrite (point at live authorities, don''t restate; verify every decision citation against the record body; drop v0.2 framing; list real current tickets). Also systemic across the stale set: D-114/D-117/D-119/D-120 cited as live guidance without their superseded-by-cascade status, and D-123 cited without its D-138 amendment — the rewrites fix these in passing. One briefing per rewrite pass, qatux.md first.', 'backlog', 'low', NULL, 'server', NULL, '2026-07-26 11:49:14.680', '2026-07-26 11:49:14.680', NULL, 'f512167425fbef905d9db09b18bb76f4', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); +INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSWGHKXRFDPRZQC3VF49KSC8', 'task', '06FB0TNSRZXCHGS16BFHSSGSV4', 'D-235 interstitial context-sensitive values (dock_slip, market_pad) lack trigger conditions', 'Found during the T-1098 design brief (2026-07-26): D-235 names seven interstitial ground-tile values but two of them — dock_slip (waterfront edge) and market_pad (marketplace zone) — are context-sensitive examples with NO concrete trigger condition specified anywhere in the record. T-1098''s fill implementation maps setback_tier onto the five unambiguous values (ZeroLot->Void, Tight->Court, Standard->Garden, Generous->Plaza, Campus->OpenLawn) and deliberately does NOT invent triggers for the other two — every interstitial tile still resolves to a defined value from the 5-way subset. This ticket: specify the trigger conditions (waterfront adjacency from what data? marketplace zoning from which block/quarter tag?) via a D-235 amendment or a Miri/Araminta content pass, then extend the T-1098 resolution mapping. Not blocking: the 5-way subset is complete and correct until these are specified.', 'backlog', 'low', NULL, 'server', NULL, '2026-07-26 11:49:26.638', '2026-07-26 11:49:26.638', NULL, '4dedb2e504fad276a3f038e9d3f8b2db', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); +INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'task', '06FBPPMZNNEV052DBYYY3A897C', 'Audit remaining 13 briefings for f4c72e148 citation slips', 'Follow-up to T-1199 (done): the 2026-03-13 commit f4c72e148 (''update all 18 briefings for v0.2 pivot'') is a CONFIRMED source of decision-id transcription errors — five briefings (gore, mellanie, ozzie, stig, nigel) carried eleven mis-citations from a consistent adjacent-id slip family: D-126<->D-134 swapped, D-136 written as D-131, D-137 written as D-136, D-130 written as D-131, D-120 written as D-137. All eleven fixed on main (T-1199). This ticket: audit the OTHER 13 briefings touched by that commit (git show f4c72e148 --stat lists them; araminta.md already rewritten clean by T-1053) for the same slip pattern — check every D-1xx citation in each against the record''s actual title/content, not just the ids from the known family (the family grew twice during the T-1199 fix pass: D-130 and D-120 were found only by verifying claims against record bodies). Method that worked: grep the briefing''s D-ids, read each record''s header, flag any citation whose prose describes different content. Note that several of these briefings are wholesale-stale (pre-cascade framing, like araminta.md was before T-1053) — this ticket fixes CITATIONS only; wholesale rewrites are separate per-briefing work (T-1053 is the model). + +AUDIT COMPLETE (2026-07-26). Set was 11 files, not 12-13 (tiger.md deleted in 0a9b0d00a, Tiger off the roster). 66 unique D-ids body-matched across all 11. THREE new slip-family members, all in gestalt.md, each verified by full body-match and lead-spot-checked: D-130 written where D-131 (broad life-verb vocabulary) was meant (x3: lines 20/48/62) and D-118 written where D-133 (skills affect outcome) was meant (x2: lines 22/43). All five fixed on main. The other 10 briefings are citation-clean. Context findings recorded on follow-ups: T-1208 (eight wholesale-stale briefings, rewrite backlog, qatux.md + tyre.md highest value; also the systemic superseded-cluster and D-123/D-138 notes). Final slip-family tally across T-1199+T-1205: 16 mis-citations in 6 of 18 briefings, all from the single f4c72e148 commit, all fixed.', 'in_progress', 'medium', 'clerk', 'server', NULL, '2026-07-26 10:50:18.675', '2026-07-26 11:49:36.545', NULL, '294f317842c5939cb88212b239dd2070', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); +INSERT INTO tickets (record_id, type, parent_record_id, title, description, status, priority, assigned_to, team, decision_ref, created_at, updated_at, deleted_at, hash, canonical_version) VALUES ('06FSW30GPFFEB05M6EXD1WFANW', 'task', '06FBPPMZNNEV052DBYYY3A897C', 'Audit remaining 13 briefings for f4c72e148 citation slips', 'Follow-up to T-1199 (done): the 2026-03-13 commit f4c72e148 (''update all 18 briefings for v0.2 pivot'') is a CONFIRMED source of decision-id transcription errors — five briefings (gore, mellanie, ozzie, stig, nigel) carried eleven mis-citations from a consistent adjacent-id slip family: D-126<->D-134 swapped, D-136 written as D-131, D-137 written as D-136, D-130 written as D-131, D-120 written as D-137. All eleven fixed on main (T-1199). This ticket: audit the OTHER 13 briefings touched by that commit (git show f4c72e148 --stat lists them; araminta.md already rewritten clean by T-1053) for the same slip pattern — check every D-1xx citation in each against the record''s actual title/content, not just the ids from the known family (the family grew twice during the T-1199 fix pass: D-130 and D-120 were found only by verifying claims against record bodies). Method that worked: grep the briefing''s D-ids, read each record''s header, flag any citation whose prose describes different content. Note that several of these briefings are wholesale-stale (pre-cascade framing, like araminta.md was before T-1053) — this ticket fixes CITATIONS only; wholesale rewrites are separate per-briefing work (T-1053 is the model). + +AUDIT COMPLETE (2026-07-26). Set was 11 files, not 12-13 (tiger.md deleted in 0a9b0d00a, Tiger off the roster). 66 unique D-ids body-matched across all 11. THREE new slip-family members, all in gestalt.md, each verified by full body-match and lead-spot-checked: D-130 written where D-131 (broad life-verb vocabulary) was meant (x3: lines 20/48/62) and D-118 written where D-133 (skills affect outcome) was meant (x2: lines 22/43). All five fixed on main. The other 10 briefings are citation-clean. Context findings recorded on follow-ups: T-1208 (eight wholesale-stale briefings, rewrite backlog, qatux.md + tyre.md highest value; also the systemic superseded-cluster and D-123/D-138 notes). Final slip-family tally across T-1199+T-1205: 16 mis-citations in 6 of 18 briefings, all from the single f4c72e148 commit, all fixed.', 'done', 'medium', 'clerk', 'server', NULL, '2026-07-26 10:50:18.675', '2026-07-26 11:49:42.508', NULL, '805203e281a681f4f5aee386d365941f', 2) ON CONFLICT(record_id) DO UPDATE SET type=excluded.type, parent_record_id=excluded.parent_record_id, title=excluded.title, description=excluded.description, status=excluded.status, priority=excluded.priority, assigned_to=excluded.assigned_to, team=excluded.team, decision_ref=excluded.decision_ref, updated_at=excluded.updated_at, deleted_at=excluded.deleted_at, hash=excluded.hash, canonical_version=excluded.canonical_version WHERE excluded.updated_at > tickets.updated_at OR (excluded.updated_at = tickets.updated_at AND excluded.hash > tickets.hash); diff --git a/docs/briefings/gestalt.md b/docs/briefings/gestalt.md index 7dad4216b..e0faace39 100644 --- a/docs/briefings/gestalt.md +++ b/docs/briefings/gestalt.md @@ -17,9 +17,9 @@ Check your tickets: `pql ticket list --assigned gestalt` ## Key Design Pivots - **Tycoon bookmark (D-117):** Zero investigation content. Tycoon (small business owner) is the starting state. - **All NPCs generated (D-122):** No hand-authored named NPCs. The FRIEND pattern (D-034) survives as a generator template instruction set. -- **Broad verb vocabulary (D-130):** Life verbs, not tycoon-specific — all career types use the same verb set. +- **Broad verb vocabulary (D-131):** Life verbs, not tycoon-specific — all career types use the same verb set. - **Consequence model (D-132):** Dual-scale — Rimworld-style sharp events + DF-style slow accumulation simultaneously. -- **Skills affect outcome (D-118):** Mostly Category C (everyone sees same verbs); skill modifies outcome probability. +- **Skills affect outcome (D-133):** Mostly Category C (everyone sees same verbs); skill modifies outcome probability. - **Development cascade (D-166):** 6-phase build order. Generator spike (D-119) is Phase 5, not imminent. ## Decisions Relevant to Your Role @@ -40,12 +40,12 @@ Check your tickets: `pql ticket list --assigned gestalt` - D-041: Knowledge Graph Data Model — 4-level confidence hierarchy, contradiction detection - D-114: v0.2 proof-of-life = generator + graphics - D-117: Tycoon bookmark, zero investigation content -- D-118: Skills affect outcome (Category C — everyone sees same verbs) +- D-133: Skills affect outcome (Category C — everyone sees same verbs) - D-119: Generator spike — Phase 5 per D-166 cascade (not imminent) - D-122: All NPCs generated, no named hand-authored characters - D-125: Quietly responsive world — gradient of caring by social proximity - D-129: Traits + behavior first; relationships Sims + Rimworld style -- D-130: Broad life-verb vocabulary (not tycoon-specific) +- D-131: Broad life-verb vocabulary (not tycoon-specific) - D-132: Dual-scale consequence model (sharp events + slow accumulation) ## What Survives From v0.1 @@ -59,7 +59,7 @@ Check your tickets: `pql ticket list --assigned gestalt` Consult `docs/sprints/` for active sprint briefing. ### v0.2 systems design: -1. **Verb map for tycoon bookmark** — broad life-verb vocabulary design (D-130). Economic, social, mundane verbs. Job = rails to launch from, not a cage. +1. **Verb map for tycoon bookmark** — broad life-verb vocabulary design (D-131). Economic, social, mundane verbs. Job = rails to launch from, not a cage. 2. **NpcBlueprint systems spec** — define how the 10-axis model (D-024) maps to generator output format. Co-design with Tyre. 3. **Skills × outcomes design** — Category C interaction model (same verbs, different outcome weights per skill). What does skill actually modify? 4. **Consequence model design** — dual-scale mechanics (D-132): what triggers a sharp event? What accumulates slowly? How does the player read the accumulation?