basquetWi + New ticket

Write-path actor-field population (PLUTO-583C)

Deferred normal unassigned

Inventory and update every application/SQL write path to populate canonical actor fields (createdBy/updatedBy/deletedBy) transactionally. Consolidate shared mutation helpers where practical.

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Questions

No questions.

Activity

  • wi-cli-venus created · 4w ago
  • wi-cli-venus parentChanged · 4w ago
    parent=#2094
  • wi-cli-venus note · 4w ago
    coder-583C notes: (1) NOT a single wrapper fix — createdBy/updatedBy are raw per-INSERT/UPDATE column additions across server actions; the shared mutation-wrapper gives try-inside-try + {ok,error} but does NOT auto-inject actor into arbitrary SQL, so 583C = call-site inventory. (2) deletedBy already populated on the 17 soft-delete tables via archive-context; the NEW work is createdBy (19/68 have it) + updatedBy (11/68). (3) createdBy must be the authenticated actor uuid written directly in the INSERT column list — do NOT source it from the archive-trigger sentinel (app.user_id); sentinel stays reserved for the archive trigger. (4) No friction-code/toast impact: actor population is silent server-side, no new toast code, no WS-F lint interaction.
  • wi-cli-venus deferred · 4w ago
    EVO-57 HOLD (Elazar 2026-07-17): no blanket audit-trail coverage - re-scope to per-table justified additions only when Elazar picks it back up. No release GO.
chore
4w ago by wi-cli-venus
4w ago