Commit Graph

1 Commits

Author SHA1 Message Date
type-two
7c5fc53224 Registry writer: make the four non-file-drop consumers one-click, and keep 3GOD as a depot
Most GODVERSE consumers do not scan a directory — they load from a literal array in source
(djsim/procity PED_NAMES, thriftgod HERO_FLOOR) or a JSON manifest, so a dropped file does
nothing until its NAME is in that list. tools/registry.py makes that edit, and the export hub
now offers it instead of only reporting the file:line.

Paranoid by construction, because the targets are live shipping games:
· dry-run by default; write:true is required to touch source
· idempotent — an existing entry is a no-op, verified against a real djsim ped
· backs up to <file>.bak-<stamp> before every write
· refuses if the anchor matches anything other than exactly once, rather than guessing which
  of several arrays was meant
· handles djsim keeping TWO live copies of PED_NAMES (rigs.js owns the street, index.html has
  a second) — updating one and not the other is a silent half-fix
· works locally and over ssh, since djsim lives on ultra

Bug I introduced and caught while testing: the first implementation inserted after the opening
bracket, i.e. PREPENDED. procity's loadPedFleet fills fixed slots BY PED_NAMES INDEX, so that
silently reassigns every existing character — and my own note on that target said "appending is
safe, reordering is not" three lines above the code that did it. Now scans to the matching
close bracket (string-aware) and appends. Verified: leading entries byte-identical, new name at
the tail, then reverted from backup with git clean.

Also corrected procity's path — its rigs.js is under web/js/citizens/, not crowd/, and declares
`export const`; the two games diverged despite sharing the loadPedFleet shape.

On 3GOD: NOT retired. It looked like a spent planning experiment, but thriftgod fetches its
props from it at runtime in production (index.html:1176 DEPOT = 'https://digalot.fyi/3god') and
procity does the same — 773 live assets. It is two things bolted together: a dumb asset CDN
(/a, /dl, /t, /api/list) which stays, and an authoring UI (upload/tag/thumb/fetch/meta) which
wardrobegod now supersedes. Absorb the bench, keep the depot, publish into it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 21:55:04 +10:00