77 lines
5.0 KiB
Markdown
77 lines
5.0 KiB
Markdown
---
|
|
id: DEC-0025
|
|
ticket: glyph-bank-naming-alignment-with-runtime
|
|
title: Glyph Bank Local Alignment with Runtime
|
|
status: in_progress
|
|
created: 2026-04-10
|
|
accepted: 2026-04-10
|
|
agenda: AGD-0028
|
|
plans: [PLN-0048]
|
|
tags: [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.
|