The pair (a80f4fd6e) changed library/scripts/posters/packet-strings.json
(point 4's reading list) without re-running the pin script, so the served
copy (assets/lib/packet-strings.json) no longer matched
PACKET_STRINGS_SHA384. The print then refused it and fell back to the
bundled English block: every non-English packet printed in English.
check:poster-render-pinned has failed on development since.
Re-pinned (library/packet/poster-render.integrity.js, packet-strings only;
the generator and places pins are unchanged), and rebuilt the five bundles
that compile the pin in: country-posters, doxa-research-map,
my-upg-100-list, regions-dashboard, upg-neighbor. The tree and SRI
regenerated. check:poster-render-pinned: FAIL (2) on 7744a8418, PASS here.
A host may move the engine's credit to the TOP of the map (a phone layout with the sheet flush at the
bottom). creditFloor() would then have used a credit near y=10 as the floor, and syncAttribClearance()
would have reserved the whole map height (capped at 120px), so the pill lifted itself for nothing. Now
a credit in the upper half of the pill's layout parent is not counted: no floor, and the 20px default
clearance. Every credit is at the bottom today, so this changes nothing yet.
Every bundle rebuilt (PinHint ships through ProfileLoader), composites after their children, then the
tree and SRI.
- It is dismissed when the reader taps a pin, the gesture it teaches. The signals are
uiStore.selectedPeopleGroup (the maps that select through uiStore.selectPeopleGroup) or a
'dxmaps:pin-selected' event inside the map's root (a map with its own selection). It was left
standing over the detail card that the tap had opened. A pan still does not dismiss it.
- Wide, the pill reached the gallery's round menu button (bottom-left). Its bottom now takes the
larger of the credit clearance and --map-fab-clearance, which the layout publishes only while the
button is rendered.
- Every bundle rebuilt (PinHint ships through ProfileLoader), composites after their children, then
the tree and SRI.
This branch changes five library files -- ProfileLoader.vue, LifeCalendar.vue,
packetCharts.js, RegionSectionCard.vue and packet/countrySheet.js -- and
ProfileLoader alone is carried by sixteen bundles. Built every one of those
sixteen, one at a time (memory is the limit on this box), then regenerated the
tree and refreshed SRI.
FIFTEEN CHANGED, which is the measurement that matters: all-people-groups,
cities-internet, country-map, country-posters, demo-map, doxa-research-map,
doxa-simple-map, gospel-internet, gospel-resources, my-upg-100-list,
pplr-data-maps, research-dashboard, template-bundle, upg-neighbor and
wall-of-people-groups. Only regions-dashboard was already current, because it was
rebuilt for the label fix.
A previous claim of mine that this tree was fresh rested on `bun run tree` and
`fix:sri` producing no diff. That proves neither: tree does not rebuild bundles,
and SRI only proves a leaf loads the bundle its integrity names. The test that
distinguishes the two is building the consumers and seeing whether their bytes
move -- and fifteen of them did.
The shadow-style label fix survives the rebuild: ,"regions-list") appears once
and ,"region-section-card") once in regions-dashboard.js.
The branch merges thirteen shared library files, including two new modules, so
every bundle that imports them was carrying older bytes than its source.
Found by building each of the twenty-two bundles the freshness step names, one
at a time: all twenty-two build cleanly in 8-24 seconds, none fails and none
hangs -- and twenty of them produce different bytes. Big Picture alone moves
510 bytes.
That also corrects a check I trusted earlier in this branch. `bun run tree`
reported zero changed files and I read it as "the consumers are fresh". It is
not: tree stages assets and regenerates leaf pages, and does NOT rebuild the
bundles, so it can report a clean tree over twenty stale ones. Only a build
answers that question.
Hashes rebaked and check:sri passes across every leaf.
check:composite-freshness found stale on main: template-bundle. Rebuilt, tree + SRI
regenerated; the landing precondition (fresh, one folder, SRI) passed in main-capture scan.