Skip to content

enrich place: mechanical custody of taxonomy and entity-members - #127

Merged
leeovery merged 1 commit into
instance-map-compilerfrom
instance-map-placement
Sep 1, 2026
Merged

enrich place: mechanical custody of taxonomy and entity-members#127
leeovery merged 1 commit into
instance-map-compilerfrom
instance-map-placement

Conversation

@leeovery

@leeovery leeovery commented Sep 1, 2026

Copy link
Copy Markdown
Owner

PR2 of the instance-map stack (design: #125, on #126). bin/dex enrich place --file — placement judgment arrives as JSON (topic/entity upserts, place, unplace, drop, applied in order), whole-payload refusal naming the field, both judgment files rewritten to one canonical byte form, fresh-instance bootstrap. enrich place and dex-exclude now recompile state/map.json as their last act; a compile failure exits loud without un-reporting landed writes. state-formats.md carries the verb contract and the settled digest-classification-vs-taxonomy-placement semantics; ingest step 7 and the lint repair rows route through the verb.

98 new tests; mutation audits on placement (clean), instance_map, and exclude (two pre-existing assertion gaps tightened).

🤖 Generated with Claude Code

The two judgment files were the last state a session wrote by hand. The
judgment is unchanged — what to file where, when a topic exists at all —
but it now arrives as JSON and the engine writes both files: `bin/dex
enrich place --file cache/placement.json`, five orthogonal operation
lists applied in order (topics/entities upserts, place, unplace, drop),
whole-payload validation that refuses with the field named and writes
nothing, and one canonical byte form — sorted names, sorted unique
member ids and aliases, the compiler's JSON style. The first placement
of a fresh instance bootstraps both files; item ids are shape-checked
only, never against the corpus, because placement may precede or follow
the item's other work and ghost members are lint's finding.

The loaders the compiler already had become the shared read point
(load_taxonomy / load_entity_members, Topic / Entity public), Instance
gains entity_members_path, and instance_map gains recompile — the one
post-verb trigger: place and a successful exclude purge both recompile
state/map.json as their last act, and a compile failure rides the verb's
summary into its error exit rather than un-reporting writes that landed.

state-formats.md now documents the verb in the digest section's voice and
states the settled semantics: digest frontmatter is classification at
digest time, stale by design and load-bearing for sweeps; taxonomy is
where an item is filed today; the disagreement is permanent and never
drift, and stale frontmatter never surfaces as an item's current topics.
ingest-item step 7 and the lint repair rows route through the verb, and
the parser docstring, shim usage line, README table, CLAUDE.md pipeline
list and KNOWN_VERBS move together per the standing rules.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@leeovery
leeovery merged commit b9e49a6 into main Sep 1, 2026
@leeovery
leeovery deleted the instance-map-placement branch September 1, 2026 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant