prometeu-studio/discussion/workflow/decisions/DEC-0025-glyph-bank-local-alignment-with-runtime.md

5.0 KiB

id ticket title status created accepted agenda plans tags
DEC-0025 glyph-bank-naming-alignment-with-runtime Glyph Bank Local Alignment with Runtime in_progress 2026-04-10 2026-04-10 AGD-0028
PLN-0048
packer
studio
naming
asset-contract
runtime-alignment
glyph-bank

Decision

This repository MUST align its active packer and studio surfaces with the runtime naming contract accepted in ../runtime DEC-0006.

The concrete graphical bank artifact currently referred to locally through tile bank, TileBank, tile_bank, TILES/indexed_v1, and bank_type = TILES MUST migrate to GlyphBank, glyph_bank, GLYPH/indexed_v1, and bank_type = GLYPH, according to the surface involved.

This migration MUST be treated as rename-only. It MUST NOT change payload layout, metadata semantics, codec behavior, packing behavior, runtime contract meaning, Studio behavior, or any other functional behavior.

The migration MUST happen as one single transversal wave across packer, studio, specs, fixtures, tests, and maintained discussion/lesson surfaces in this repository.

There MUST NOT be a compatibility layer, alias, fallback parser, or dual-vocabulary phase for the previous tile bank naming on active maintained surfaces.

tile MUST remain in place wherever the correct meaning is geometric, map-related, layer-related, or otherwise outside the concrete graphical bank artifact boundary.

Studio MUST follow the concrete artifact naming 1:1 for the renamed artifact surfaces. It MUST NOT keep local alternative terminology for the same artifact.

Rationale

The upstream runtime decision already closed the conceptual split between the concrete graphical bank artifact and the broader tile-domain vocabulary.

If this repository keeps the old local naming while the runtime adopts GlyphBank, the project enters a mixed-contract state where active repositories describe the same concrete artifact through incompatible names. That directly undermines the purpose of the upstream decision.

A no-compatibility, single-wave rename is the only option that preserves one active canonical vocabulary instead of institutionalizing drift between specs, fixtures, code, and UI.

Keeping tile only where the meaning is geometric or map/layer-oriented preserves the domain distinction that motivated the runtime decision in the first place.

Technical Specification

  1. The canonical local asset-family name for the concrete graphical bank artifact MUST migrate from tile_bank to glyph_bank.
  2. The canonical local output format name for the concrete graphical bank artifact MUST migrate from TILES/indexed_v1 to GLYPH/indexed_v1.
  3. The canonical runtime-facing bank_type value emitted by the packer for the concrete graphical bank artifact MUST migrate from TILES to GLYPH.
  4. Code symbols, class names, helpers, tests, and maintained strings that refer to the concrete graphical bank artifact MUST migrate from Tile*/tile bank naming to Glyph*/glyph bank naming as appropriate to the local language surface.
  5. Specs and maintained lessons/docs in this repository MUST describe the concrete graphical bank artifact using Glyph* naming after the migration.
  6. tile naming MUST remain unchanged in surfaces that describe geometric tile size, tile layers, tile maps, grid semantics, or other non-artifact tile-domain concepts.
  7. Implementations MUST NOT preserve active dual support for both tile bank and glyph bank terminology in the serialized contract.
  8. Fixtures and test assets maintained by this repository MUST migrate to the new serialized contract names in the same wave as the implementation.
  9. This decision does not authorize any behavior change beyond naming propagation.

Constraints

  • No compatibility parser or alias layer for the old serialized names.
  • No staged split between packer and studio; the rename is one coordinated wave.
  • No rename of geometric or map/layer tile concepts.
  • No change to payload bytes, metadata structure, codec semantics, or packing algorithms as part of this decision.

Propagation Targets

  • Specs:
    • Update packer specs that currently define tile_bank, TILES/indexed_v1, or bank_type = TILES.
    • Update Studio-facing maintained discussion/spec text where the concrete artifact is still described as tile bank.
  • Code:
    • Rename local packer asset-family, output-format, and emitted bank-type surfaces to the new canonical glyph naming.
    • Rename Studio artifact-specific composition/support/coordinator surfaces that refer to the concrete graphical bank artifact.
    • Preserve tile naming in geometric and map/layer surfaces.
  • Tests and Fixtures:
    • Update fixtures and test manifests that still serialize the old tile_bank and TILES/indexed_v1 contract.
    • Update tests and helper names to remove mixed vocabulary for the concrete artifact.
  • Docs and Lessons:
    • Rewrite maintained lessons and active workflow artifacts by meaning, not mechanical token replacement.

Revision Log

  • 2026-04-10: Accepted and linked to PLN-0048 for implementation planning.
  • 2026-04-10: Initial draft from AGD-0028.