Skip to content

feat(maps)!: localize Everlink night colors - #202

Merged
zoeyrose merged 2 commits into
mainfrom
feat/83-everlink-palette
Aug 13, 2026
Merged

zoeyrose merged 2 commits into
mainfrom
feat/83-everlink-palette

Conversation

@zoeyrose

@zoeyrose zoeyrose commented Aug 13, 2026 •

Copy link
Copy Markdown
Member

Summary

  • add warm-gold map-instance colors to all 21 existing Everlink magic-lantern helper footprints
  • give the established magic-pool helper cyan and keep the two legacy campfire helpers consistent with visible orange-red fire
  • add bounded organic yellow-green garden accents while retaining unrelated navigation fill as neutral
  • refresh the complete eight-tile semantic light review and current digests

Ownership and sequencing

This PR changes only authored main content. It does not modify the immutable historical 1.x line or shared light1-light9 archetypes.

Closes #83

Coordinates

  • Base: main@6047304e5f20ee3b95c04656a08cf74dcb0d6597
  • Head: feat/83-everlink-palette@cf5e252e0
  • Worktree: /workspaces/atrinik/workspace/worktrees/content/issue-83-everlink-palette
  • Commits: 40d7b102e feat(maps): localize Everlink night colors; cf5e252e0 docs(maps): preserve Everlink fixture review evidence

Validation

  • python3 -m tools.content_core validate --format map for all eight Everlink maps: pass, zero diagnostics
  • python3 -m tools.content_catalog validate: pass (8,105 definitions; 68,477 references)
  • python3 tools/world_content_audit.py lights --check: pass (11,749 instances across 641 maps; zero unreviewed)
  • python3 tools/validate.py: pass (165 tests plus aggregate content/schema/catalog/contracts/syntax/resources/runtime collection)
  • git diff --check: pass
  • ./atrinik build all --profile issue-83-everlink-palette: pass on the byte-identical issue content at pre-rebase head 3ea65c6d and Classic a10957c; the intervening base-only Hierro change does not affect Everlink or build contracts
  • latest-head GitHub checks: pass at cf5e252e0 (Content validation, Conventional PR title, Syntax prototypes on Ubuntu and Windows, Analyze, and CodeQL)

Verification status

Classic nighttime verification passed using wrapper profile/scenario/topology issue-83-everlink-palette with preset lighting-radiance-night and clean Classic head a10957c. The runtime-verified content head was 69ccd414; all eight Everlink map blobs are byte-identical at rebased head cf5e252e0.

  • inspected all eight 24x24 Everlink tile centers in smooth and discrete lighting
  • inspected all six east/west and four north/south internal seams in both modes
  • inspected representative west/east/north/south outer transitions, routes, water and building edges, and orange-fire overlaps in both modes
  • smooth mode shows localized gold lanterns, yellow-green garden accents, cyan magic water, and distinct orange-red fire without broad wash, muddy overlap, or wall bleed
  • discrete mode retains expected per-tile lighting and readable fixtures without seam-specific steps, broken transitions, or navigation regressions
  • 44 labeled captures cover the same 22 points in both renderers; no content adjustment was required

Fresh whole-diff review found no actionable implementation findings. The isolated topology and display were shut down; the issue-owned profile, clean worktrees, scenario/state, and native captures are preserved for repeatability.

Replacement integrated build/runtime adapters remain unavailable under atrinik/atrinik#266, atrinik/atrinik#269, and atrinik/atrinik#270; this PR therefore uses the coherent Classic wrapper profile rather than substitute replacement providers.

@zoeyrose zoeyrose moved this to Review in Atrinik work Aug 13, 2026
@zoeyrose
zoeyrose force-pushed the feat/83-everlink-palette branch 2 times, most recently from 861cfe9 to 3ea65c6 Compare August 13, 2026 16:45
@zoeyrose
zoeyrose force-pushed the feat/83-everlink-palette branch from 3ea65c6 to cf5e252 Compare August 13, 2026 16:48
@zoeyrose
zoeyrose marked this pull request as ready for review August 13, 2026 16:54
@zoeyrose
zoeyrose merged commit e50e8cc into main Aug 13, 2026
8 checks passed
@zoeyrose
zoeyrose deleted the feat/83-everlink-palette branch August 13, 2026 16:55
@github-project-automation github-project-automation Bot moved this from Review to Done in Atrinik work Aug 13, 2026
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 4.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

zoeyrose added a commit that referenced this pull request Aug 14, 2026
## Summary

- give all 402 visible magic lanterns fixture-owned `ffd080`
illumination across 66 maps
- preserve every established radius-3/4/5/6/7/9 footprint while removing
all 239 co-located helper sources
- collapse the five direct-plus-helper compositions and deliberately
illuminate the 101 formerly source-less fixtures through reviewed
standing/wall defaults
- add a fail-closed semantic fixture contract and current placement,
overlap, context, and source-digest evidence

Closes #89.

## Coordinates

- Base: `main@b0ccf98`
- Head:
`feat/89-magic-lantern-illumination-main@f5f25c3`
- Worktree:
`/workspaces/atrinik/workspace/worktrees/content/issue-89-magic-lantern-main`
- Feature commits: `526315336 feat(lighting): consolidate magic lantern
illumination`; `3580a3a8e docs(lighting): clarify review provenance`;
`f5f25c35e docs(lighting): align Everlink fixture rationales`
- Synchronization merges preserve current `main` history without
rebasing or force-pushing.

## Authored behavior

- `lantern_magic.131` inherits radius 5; `lantern2_magic.131` inherits
radius 7; both retain `ffd080`.
- The 239 helper radii transfer exactly: 2 × radius 3, 10 × radius 4, 18
× radius 5, 32 × radius 6, 160 × radius 7, and 17 × radius 9. Five
transferred fixtures already had the same direct radius, so the
duplicate source is removed without changing their result.
- The final 402-fixture distribution is 2 × radius 3, 10 × radius 4, 160
× radius 5, 32 × radius 6, 179 × radius 7, and 19 × radius 9, with zero
non-emitters and zero same-tile emitters.
- All 21 Everlink choices from #83 remain explicit `ffd080` map-local
colors on their visible fixtures; the remaining Everlink lanterns
inherit the reviewed form defaults.
- Directions, animations, coordinates, obstruction, exits/tile links,
darkness/time fields, names, plural names, and every unrelated map
field/object remain unchanged.

## Validation

- `python3 tools/validate.py` — pass at `f5f25c35e`: 167 tests; 1,355
archetypes and 3,651 maps parsed losslessly; schema, catalog, contracts,
syntax prototypes, resource collection, and isolated runtime collection
pass
- `python3 tools/world_content_audit.py lights --check` — pass: 138
archetypes, 10 artifacts, 11,848 instances across 643 maps; 7,283
explicit colors, 4,713 intentional neutral, zero unreviewed
- `python3 -m tools.content_catalog validate` — pass: 8,105 definitions
and 68,444 references
- independent semantic transformation replay — pass for all 46 edited
maps: exactly 239 helper removals, five direct-plus-helper cases, exact
radius/color transfers, and no unrelated semantic difference
- fixture reconstruction — 285 standing plus 117 wall fixtures across 66
maps; all 402 `ffd080`, exact radius distribution, zero non-emitters,
zero same-tile emitters
- exact-head Classic build/runtime collection — server, client, and
integrated binaries built from content `f5f25c35e`; worldmaker and the
`lighting-radiance-night` scenario provisioner loaded the collected
content successfully
- exact-head Classic offline renderer — colored and radial-light
smooth/discrete replays produced their four expected pixel hashes
(`1effb0d3…`, `8dec2b87…`, `bde854a5…`, `76247d66…`)
- `git diff --check` — pass; worktree clean
- latest-head hosted checks — Content validation, Ubuntu/Windows syntax,
Conventional PR title, Analyze, and CodeQL all pass at `f5f25c35e`

## Review

Three complete base-to-head review rounds covered requirements, every
changed file, map semantics, lossless syntax, fixture inheritance,
overlap collapse, Everlink sequencing, review-ledger truthfulness, data
integrity, compatibility, security, and operations.

- The merge-resolution pass found four Everlink `light_color` fields
outside their lantern blocks; `8c4fe2ea5` moved them into the correct
objects, and all eight Everlink maps plus the complete validator pass.
- The post-merge semantic pass found eight Everlink rationales that
still described removed or formerly dark helpers; `f5f25c35e` now
describes the actual fixture-owned state without changing semantic
hashes.
- The final post-fix whole-diff pass found zero known actionable
findings and reopened neither finding.

## Runtime boundary

The issue-owned resources are preserved as profile/scenario
`issue-89-magic-lantern`, state `scenario-issue-89-magic-lantern`,
Classic `8ba8757a34e8`, resources `266ac693e556`, and content
`f5f25c35e`.

The supervised topology reached exact-head build, collection, world
generation, and scenario provisioning, then Classic exited before
readiness because it rejects the wrapper-owned `/proc/self/fd/...` asset
directory. That independent integration defect is tracked by
atrinik/classic#318. The failed topology was
inspected with wrapper `ps`/bounded logs and stopped with all leases
released; scenario state and diagnostic record are preserved. The
issue's evidence-policy amendment makes renderer diagnostics optional
and non-gating. Exact-head deterministic smooth/discrete renderer
replays pass, and the 21 preserved Everlink footprints retain the
all-map smooth/discrete evidence from #202.

Replacement integrated build/runtime adapters remain unavailable under
atrinik/atrinik#266,
atrinik/atrinik#269, and
atrinik/atrinik#270, so this PR does not claim
replacement runtime rendering.
zoeyrose added a commit that referenced this pull request Aug 23, 2026
## Summary

- add warm-gold map-instance colors to all 21 existing Everlink
magic-lantern helper footprints
- give the established magic-pool helper cyan and keep the two legacy
campfire helpers consistent with visible orange-red fire
- add bounded organic yellow-green garden accents while retaining
unrelated navigation fill as neutral
- refresh the complete eight-tile semantic light review and current
digests

## Ownership and sequencing

This PR changes only authored `main` content. It does not modify the
immutable historical `1.x` line or shared `light1`-`light9` archetypes.

- #87 still owns transferring
the Everlink magic-pool helper onto the visible pool fixture; that
transfer must preserve this PR's cyan/radius choice.
- #89 still owns transferring
magic-lantern helpers onto visible fixtures and reviewing currently dark
lanterns; that transfer must preserve these local gold footprints and
avoid duplicate sources.
- Candle and fire fixture defaults from #90-#92 are incorporated.
Existing visible candle/fire colors remain unchanged.

Closes #83

## Coordinates

- Base: `main@f876373787d45ecc124da1568e74cdab5742aecb`
- Head: `feat/83-everlink-palette@db8bc2058`
- Worktree:
`/workspaces/atrinik/workspace/worktrees/content/issue-83-everlink-palette`
- Commits: `0e9a9403c feat(maps): localize Everlink night colors`;
`db8bc2058 docs(maps): preserve Everlink fixture review evidence`

## Validation

- `python3 -m tools.content_core validate --format map` for all eight
Everlink maps: pass, zero diagnostics
- `python3 -m tools.content_catalog validate`: pass (8,105 definitions;
68,477 references)
- `python3 tools/world_content_audit.py lights --check`: pass (11,749
instances across 641 maps; zero unreviewed)
- `python3 tools/validate.py`: pass (165 tests plus aggregate
content/schema/catalog/contracts/syntax/resources/runtime collection)
- `git diff --check`: pass
- `./atrinik build all --profile issue-83-everlink-palette`: pass on the
byte-identical issue content at pre-rebase head `3ea65c6d` and Classic
`a10957c`; the intervening base-only Hierro change does not affect
Everlink or build contracts
- latest-head GitHub checks: pass at `db8bc2058` (Content validation,
Conventional PR title, Syntax prototypes on Ubuntu and Windows, Analyze,
and CodeQL)

## Verification status

Classic nighttime verification passed using wrapper
profile/scenario/topology `issue-83-everlink-palette` with preset
`lighting-radiance-night` and clean Classic head `a10957c`. The
runtime-verified content head was `69ccd414`; all eight Everlink map
blobs are byte-identical at rebased head `db8bc2058`.

- inspected all eight 24x24 Everlink tile centers in smooth and discrete
lighting
- inspected all six east/west and four north/south internal seams in
both modes
- inspected representative west/east/north/south outer transitions,
routes, water and building edges, and orange-fire overlaps in both modes
- smooth mode shows localized gold lanterns, yellow-green garden
accents, cyan magic water, and distinct orange-red fire without broad
wash, muddy overlap, or wall bleed
- discrete mode retains expected per-tile lighting and readable fixtures
without seam-specific steps, broken transitions, or navigation
regressions
- 44 labeled captures cover the same 22 points in both renderers; no
content adjustment was required

Fresh whole-diff review found no actionable implementation findings. The
isolated topology and display were shut down; the issue-owned profile,
clean worktrees, scenario/state, and native captures are preserved for
repeatability.

Replacement integrated build/runtime adapters remain unavailable under
atrinik/atrinik#266,
atrinik/atrinik#269, and
atrinik/atrinik#270; this PR therefore uses
the coherent Classic wrapper profile rather than substitute replacement
providers.
zoeyrose added a commit that referenced this pull request Aug 23, 2026
## Summary

- give all 402 visible magic lanterns fixture-owned `ffd080`
illumination across 66 maps
- preserve every established radius-3/4/5/6/7/9 footprint while removing
all 239 co-located helper sources
- collapse the five direct-plus-helper compositions and deliberately
illuminate the 101 formerly source-less fixtures through reviewed
standing/wall defaults
- add a fail-closed semantic fixture contract and current placement,
overlap, context, and source-digest evidence

Closes #89.

## Coordinates

- Base: `main@cadf90f724d39e5ec49984c403ab080f8f667e03`
- Head:
`feat/89-magic-lantern-illumination-main@7e750593b27354c0181a7d91ee6a69a2a394d484`
- Worktree:
`/workspaces/atrinik/workspace/worktrees/content/issue-89-magic-lantern-main`
- Feature commits: `78c8e2b4e feat(lighting): consolidate magic lantern
illumination`; `42ce1a87e docs(lighting): clarify review provenance`;
`7e750593b docs(lighting): align Everlink fixture rationales`
- Synchronization merges preserve current `main` history without
rebasing or force-pushing.

## Authored behavior

- `lantern_magic.131` inherits radius 5; `lantern2_magic.131` inherits
radius 7; both retain `ffd080`.
- The 239 helper radii transfer exactly: 2 × radius 3, 10 × radius 4, 18
× radius 5, 32 × radius 6, 160 × radius 7, and 17 × radius 9. Five
transferred fixtures already had the same direct radius, so the
duplicate source is removed without changing their result.
- The final 402-fixture distribution is 2 × radius 3, 10 × radius 4, 160
× radius 5, 32 × radius 6, 179 × radius 7, and 19 × radius 9, with zero
non-emitters and zero same-tile emitters.
- All 21 Everlink choices from #83 remain explicit `ffd080` map-local
colors on their visible fixtures; the remaining Everlink lanterns
inherit the reviewed form defaults.
- Directions, animations, coordinates, obstruction, exits/tile links,
darkness/time fields, names, plural names, and every unrelated map
field/object remain unchanged.

## Validation

- `python3 tools/validate.py` — pass at `7e750593b`: 167 tests; 1,355
archetypes and 3,651 maps parsed losslessly; schema, catalog, contracts,
syntax prototypes, resource collection, and isolated runtime collection
pass
- `python3 tools/world_content_audit.py lights --check` — pass: 138
archetypes, 10 artifacts, 11,848 instances across 643 maps; 7,283
explicit colors, 4,713 intentional neutral, zero unreviewed
- `python3 -m tools.content_catalog validate` — pass: 8,105 definitions
and 68,444 references
- independent semantic transformation replay — pass for all 46 edited
maps: exactly 239 helper removals, five direct-plus-helper cases, exact
radius/color transfers, and no unrelated semantic difference
- fixture reconstruction — 285 standing plus 117 wall fixtures across 66
maps; all 402 `ffd080`, exact radius distribution, zero non-emitters,
zero same-tile emitters
- exact-head Classic build/runtime collection — server, client, and
integrated binaries built from content `7e750593b`; worldmaker and the
`lighting-radiance-night` scenario provisioner loaded the collected
content successfully
- exact-head Classic offline renderer — colored and radial-light
smooth/discrete replays produced their four expected pixel hashes
(`1effb0d3…`, `8dec2b87…`, `bde854a5…`, `76247d66…`)
- `git diff --check` — pass; worktree clean
- latest-head hosted checks — Content validation, Ubuntu/Windows syntax,
Conventional PR title, Analyze, and CodeQL all pass at `7e750593b`

## Review

Three complete base-to-head review rounds covered requirements, every
changed file, map semantics, lossless syntax, fixture inheritance,
overlap collapse, Everlink sequencing, review-ledger truthfulness, data
integrity, compatibility, security, and operations.

- The merge-resolution pass found four Everlink `light_color` fields
outside their lantern blocks; `d2b9d69d5` moved them into the correct
objects, and all eight Everlink maps plus the complete validator pass.
- The post-merge semantic pass found eight Everlink rationales that
still described removed or formerly dark helpers; `7e750593b` now
describes the actual fixture-owned state without changing semantic
hashes.
- The final post-fix whole-diff pass found zero known actionable
findings and reopened neither finding.

## Runtime boundary

The issue-owned resources are preserved as profile/scenario
`issue-89-magic-lantern`, state `scenario-issue-89-magic-lantern`,
Classic `8ba8757a34e8`, resources `266ac693e556`, and content
`7e750593b`.

The supervised topology reached exact-head build, collection, world
generation, and scenario provisioning, then Classic exited before
readiness because it rejects the wrapper-owned `/proc/self/fd/...` asset
directory. That independent integration defect is tracked by
atrinik/classic#318. The failed topology was
inspected with wrapper `ps`/bounded logs and stopped with all leases
released; scenario state and diagnostic record are preserved. The
issue's evidence-policy amendment makes renderer diagnostics optional
and non-gating. Exact-head deterministic smooth/discrete renderer
replays pass, and the 21 preserved Everlink footprints retain the
all-map smooth/discrete evidence from #202.

Replacement integrated build/runtime adapters remain unavailable under
atrinik/atrinik#266,
atrinik/atrinik#269, and
atrinik/atrinik#270, so this PR does not claim
replacement runtime rendering.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

feat(maps): add localized lantern and garden colors across Everlink

1 participant