Bible push: merge 12e2ebafa

This commit is contained in:
Doxa Maps 2026-10-01 09:08:47 +00:00
commit 245eea9cb7
3 changed files with 9 additions and 9 deletions

View file

@ -1,11 +1,12 @@
{
"_comment": "Declares the composability tier. 'nested-mfe-spa' = capability 5: an app shell whose single element <posterverse-app> renders a vertical-tab rail of whole poster plugins, each mounted as its own real element from the manifest (no iframes). The tier is DERIVED from `composes` at tree generation (composing a cap-4 makes this cap-5) and this `type` is checked against it. `composes` lists every row in src/tabs.js whose bundle exists; a provisional row (bible-posters) joins the list in the SAME push as its bundle, since an unresolved ref fails check:capability-derived and a missing one fails check:posterverse-shelf.",
"_comment": "Declares the composability tier. 'nested-mfe-spa' = capability 5: an app shell whose single element <posterverse-app> renders a vertical-tab rail of whole poster plugins, each mounted as its own real element from the manifest (no iframes). The tier is DERIVED from `composes` at tree generation (composing a cap-4 makes this cap-5) and this `type` is checked against it. `composes` lists every row in src/tabs.js. A new row's ref joins this list in the SAME push as its bundle, since an unresolved ref fails check:capability-derived and a missing one fails check:posterverse-shelf.",
"type": "nested-mfe-spa",
"composes": [
"my-upg-100-list/upg-100-mfe",
"country-posters/country-posters-mfe",
"poster-design/poster-design-mfe",
"wall-of-people-groups/wall-of-people-groups"
"wall-of-people-groups/wall-of-people-groups",
"bible-posters/bible-posters"
],
"label": "Posterverse (vertical-tab app shell: every poster plugin)"
}

View file

@ -10,10 +10,10 @@
* appears, whatever the manifest holds.
*
* ★ A ROW WHOSE BUNDLE IS NOT IN THE TREE IS PRUNED, not painted dead. That is how a row can be listed
* before its plugin lands: Bible Posters is declared with PROVISIONAL ids and stays invisible until a
* bundle of that id exists. Its owner confirms the ids; change the `bundle`/`profile` here to match,
* never the row `id` (the id is the stable key for ?tab= links). A provisional row's `composes` entry
* lands in the same push as its bundle (check:posterverse-shelf arm D).
* before its plugin lands: mark it `provisional: true` and it stays invisible until a bundle of that id
* exists. Its owner confirms the ids; change the `bundle`/`profile` here to match, never the row `id`
* (the id is the stable key for ?tab= links). A new row's `composes` entry lands in the same push as
* its bundle (check:posterverse-shelf arm D).
*
* ★ MOUNT THE COMPOSITE, NOT A LEAF. The profile named here is the one that mounts. my-upg-100-list and
* country-posters each ship a leaf map, a leaf wall and the capability-4 composite of the two; the
@ -32,8 +32,7 @@ export const TABS = [
{ id: 'country-posters', section: 'posters', icon: 'map', bundle: 'country-posters', profile: 'country-posters-mfe' },
{ id: 'poster-design', section: 'posters', icon: 'poster', bundle: 'poster-design', profile: 'poster-design-mfe' },
{ id: 'wall-of-people-groups', section: 'experimental', icon: 'flask', bundle: 'wall-of-people-groups', profile: 'wall-of-people-groups' },
// Provisional ids: no bible-posters bundle exists yet, so this row is pruned until one does.
{ id: 'bible-posters', section: 'experimental', icon: 'flask', bundle: 'bible-posters', profile: 'bible-posters', provisional: true },
{ id: 'bible-posters', section: 'experimental', icon: 'flask', bundle: 'bible-posters', profile: 'bible-posters' },
]
// Bundles that must never be a Posterverse row. The allow-list above already excludes them; this set

File diff suppressed because one or more lines are too long