Skip to content

feat(lighting): add wall fireplace emitters - #177

Merged
zoeyrose merged 1 commit into
mainfrom
feat/92-wall-fireplace-lighting-main
Aug 12, 2026
Merged

zoeyrose merged 1 commit into
mainfrom
feat/92-wall-fireplace-lighting-main

Conversation

@zoeyrose

@zoeyrose zoeyrose commented Aug 12, 2026 •

Copy link
Copy Markdown
Member

Summary

  • make wmask_fire_on_1 a default radius-1 ff6030 emitter while keeping wmask_fire_off_1 dark
  • transfer four larger same-tile helper footprints to the visible fireplace and remove the redundant radius-1 helper
  • refresh the current semantic review for all 91 active placements across 54 maps while preserving main-only Classic decision references and the replacement-runtime boundary
  • synchronize the deterministic maximum-map snapshot and current-state decision prose without recapturing historical timing data

Canonical main implementation for #92 after the separately validated 1.x companion merged as #123. Per the lighting program's closure constraint, this PR intentionally has no closing keyword; #92 remains open for the later exact-tip audit and human closure.

Coordinates

  • base: main@3a0a7e044032ea042b949f24e0f62103c3a0fd74
  • head: 7f70a577fe010f39aef802abd23955e451ee9750
  • tree: a8e6157d5a62b8ac426ee025234c34351942809b
  • commits: exactly one
  • changed paths: exactly nine
  • merged 1.x squash: d863b1d66967841ad56ae5f205e88d87c681a688

Acceptance and preservation

  • all 91 active wall-fireplace placements across 54 maps resolve to ff6030; 87 use radius 1, one preserves radius 2, and three preserve radius 3
  • all 18 wmask_fire_off_1 placements remain dark; directions 1 and 7 remain unchanged at 54 and 37 placements
  • the on archetype gains only glow_radius 1 and light_color ff6030; main-only plural metadata and every type, layer, turnability, direction, draw, face/animation, naming, and gameplay field remain intact
  • four larger neutral-helper footprints transfer exactly to fireplace overrides; the Incuna radius-1 helper is removed as redundant with the new default
  • all existing classic_views, the pinned Classic source_review, and the explicit replacement-runtime-unavailable boundary remain intact
  • no maps/light-source-evidence/**, evidence manifest, proof scene, capture tooling/tests, capture-bound review fields, provider adapter, or benchmark recapture is added

Validation

  • python3 tools/validate.py — 129 tests; lossless 1,355-archetype/3,651-map core; semantic lights, 338-field schema, 8,105-definition catalog, contracts, syntax prototypes, resources, isolated runtime build, and both archives passed
  • python3 tools/world_content_audit.py lights --check — 111 archetypes, 10 artifacts, 11,576 instances across 636 maps; 5,895 explicit colors, 5,802 intentional neutral, zero unreviewed
  • focused fireplace inventory — 91 active placements/54 maps and 18 dark off placements; exact direction/radius/color counts pass
  • focused syntax suite — 13 tests passed; source, snapshot, and decision text agree on 95,652 bytes, 2,778 objects, and SHA-256 85e5200e1825a70a173d80c2e371026b6178be262ed3b3737b8c47d19c2ab01d
  • git diff --check and JSON parsing
  • fresh independent whole-diff review — zero actionable findings at exact tree a8e6157d5a62b8ac426ee025234c34351942809b

Runtime boundary

The replacement stack still has no integrated content runtime or rendering adapter. This PR validates the authored mirror and semantic contracts without claiming live visual activation; integration remains tracked by atrinik/atrinik#266, atrinik/atrinik#269, and atrinik/atrinik#270. Classic rendering conclusions are retained in the checked semantic review under the superseding evidence policy.

Merge order

Squash-merge this canonical main companion only after all final-head checks and review exit conditions pass. Then re-query main and 1.x independently before starting #90. #138, #137, #139, and the final #113/#154 audit remain blocked.

@zoeyrose
zoeyrose marked this pull request as ready for review August 12, 2026 04:22
@zoeyrose
zoeyrose merged commit 7075ad9 into main Aug 12, 2026
5 checks passed
@zoeyrose
zoeyrose deleted the feat/92-wall-fireplace-lighting-main branch August 12, 2026 04:36
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 2.11.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

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

- make `wmask_fire_on_1` a default radius-1 `ff6030` emitter while
keeping `wmask_fire_off_1` dark
- transfer four larger same-tile helper footprints to the visible
fireplace and remove the redundant radius-1 helper
- refresh the current semantic review for all 91 active placements
across 54 maps while preserving main-only Classic decision references
and the replacement-runtime boundary
- synchronize the deterministic maximum-map snapshot and current-state
decision prose without recapturing historical timing data

Canonical `main` implementation for #92 after the separately validated
`1.x` companion merged as
[#123](#123). Per the lighting
program's closure constraint, this PR intentionally has no closing
keyword; #92 remains open for the later exact-tip audit and human
closure.

## Coordinates

- base: `main@5a844f7a66c48c3abed80c8fff256dd16e404631`
- head: `9b424017358db72e643f8ef8fecbc50bb7a562f7`
- tree: `a8e6157d5a62b8ac426ee025234c34351942809b`
- commits: exactly one
- changed paths: exactly nine
- merged `1.x` squash: `5a27bdf8c31e7298f4a13d9d5219ae226496031f`

## Acceptance and preservation

- all 91 active wall-fireplace placements across 54 maps resolve to
`ff6030`; 87 use radius 1, one preserves radius 2, and three preserve
radius 3
- all 18 `wmask_fire_off_1` placements remain dark; directions 1 and 7
remain unchanged at 54 and 37 placements
- the on archetype gains only `glow_radius 1` and `light_color ff6030`;
main-only plural metadata and every type, layer, turnability, direction,
draw, face/animation, naming, and gameplay field remain intact
- four larger neutral-helper footprints transfer exactly to fireplace
overrides; the Incuna radius-1 helper is removed as redundant with the
new default
- all existing `classic_views`, the pinned Classic `source_review`, and
the explicit replacement-runtime-unavailable boundary remain intact
- no `maps/light-source-evidence/**`, evidence manifest, proof scene,
capture tooling/tests, capture-bound review fields, provider adapter, or
benchmark recapture is added

## Validation

- `python3 tools/validate.py` — 129 tests; lossless
1,355-archetype/3,651-map core; semantic lights, 338-field schema,
8,105-definition catalog, contracts, syntax prototypes, resources,
isolated runtime build, and both archives passed
- `python3 tools/world_content_audit.py lights --check` — 111
archetypes, 10 artifacts, 11,576 instances across 636 maps; 5,895
explicit colors, 5,802 intentional neutral, zero unreviewed
- focused fireplace inventory — 91 active placements/54 maps and 18 dark
off placements; exact direction/radius/color counts pass
- focused syntax suite — 13 tests passed; source, snapshot, and decision
text agree on 95,652 bytes, 2,778 objects, and SHA-256
`85e5200e1825a70a173d80c2e371026b6178be262ed3b3737b8c47d19c2ab01d`
- `git diff --check` and JSON parsing
- fresh independent whole-diff review — zero actionable findings at
exact tree `a8e6157d5a62b8ac426ee025234c34351942809b`

## Runtime boundary

The replacement stack still has no integrated content runtime or
rendering adapter. This PR validates the authored mirror and semantic
contracts without claiming live visual activation; integration remains
tracked by atrinik/atrinik#266, atrinik/atrinik#269, and
atrinik/atrinik#270. Classic rendering conclusions are retained in the
checked semantic review under the superseding evidence policy.

## Merge order

Squash-merge this canonical `main` companion only after all final-head
checks and review exit conditions pass. Then re-query `main` and `1.x`
independently before starting #90. #138, #137, #139, and the final
#113/#154 audit remain blocked.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant