Starter content packs: build and publish the Pathfinder 2e (ORC) and D&D 5e SRD 5.2.1 packs with 4.6.0 #1200

Closed
opened 2026-10-17 04:20:59 +00:00 by claude-bot · 2 comments
Collaborator

Why

The content-pack importer shipped with the redesign, but no release has ever published the starter packs. STARTERS in webapp/backend/app/routers/content_packs.py is still (), and no release has .qbpack assets attached. So Admin → Content packs lists nothing to fetch, and a server (prod included) has no character content for the sheets unless someone uploads a pack by hand. This has sat on Build Status under "Waiting on you" since 4.5.0. Owner, 17 Oct 2026: build them as part of 4.6.0, and they don't have to be the owner's task.

Background: the owner's 8 Sep importer-first decision (docs/design/rules-reference-investigation-2026-09.md, the direction-change note), Q114 (lane 11: the scripts and a committed sample pack were built, and the full starters were left as a release step), D203 (the starters carry the character content the sheets read).

What

The recipe is docs/OPERATIONS.md → "Building the starter packs":

  1. Pin the upstreams: a tag or commit of foundryvtt/pf2e, and a dated crawl of the Open5e v2 API (the srd-2024 document only).
  2. Build with scripts/content/build_pf2e_starter.py and scripts/content/build_5e_starter.py, in the backend image, on a host with network access. Never on prod.
  3. The owner reads both SOURCES.md files before publishing: what was kept, what each rule withheld (ORC-only records, the Player Core books' character options only, setting prose and RESERVED_TERMS stripped), and the licence notices. This is the licence-compliance check and it is not skipped.
  4. Check on dev: import each pack through Admin → Content packs. It should report no warnings, and a PF2e sheet and a 5e sheet should each be able to add a weapon and an armour with the expected numbers.
  5. Publish both .qbpack files as assets on the 4.6.0 release and fill in STARTERS (key, name, system_key, the manifest's licence object, the asset URL, and a one-line description) in the release PR. Keep the ORC Notice and CC-BY attribution in full.

Points to settle while doing it

  • Ordering. STARTERS needs the asset URL, and the asset exists only once the release does. Either upload the assets to the rc's release and point at a stable URL, or let release.yml attach them. Decide, and update OPERATIONS.md to match.
  • Size. Check each pack against the 50 MiB fetch cap and the 20,000-record limit.
  • What the owner should do on prod once 4.6.0 is deployed (fetch both from Admin → Content packs), as a line in the release notes.

Done when

Both packs are on the 4.6.0 release, STARTERS lists them, dev has imported both cleanly, and the owner has signed off both SOURCES.md files.

## Why The content-pack importer shipped with the redesign, but no release has ever published the starter packs. `STARTERS` in `webapp/backend/app/routers/content_packs.py` is still `()`, and no release has `.qbpack` assets attached. So Admin → Content packs lists nothing to fetch, and a server (prod included) has no character content for the sheets unless someone uploads a pack by hand. This has sat on Build Status under "Waiting on you" since 4.5.0. Owner, 17 Oct 2026: build them as part of 4.6.0, and they don't have to be the owner's task. Background: the owner's 8 Sep importer-first decision (`docs/design/rules-reference-investigation-2026-09.md`, the direction-change note), Q114 (lane 11: the scripts and a committed sample pack were built, and the full starters were left as a release step), D203 (the starters carry the character content the sheets read). ## What The recipe is `docs/OPERATIONS.md` → "Building the starter packs": 1. **Pin the upstreams:** a tag or commit of `foundryvtt/pf2e`, and a dated crawl of the Open5e v2 API (the `srd-2024` document only). 2. **Build** with `scripts/content/build_pf2e_starter.py` and `scripts/content/build_5e_starter.py`, in the backend image, on a host with network access. Never on prod. 3. **The owner reads both `SOURCES.md` files** before publishing: what was kept, what each rule withheld (ORC-only records, the Player Core books' character options only, setting prose and `RESERVED_TERMS` stripped), and the licence notices. This is the licence-compliance check and it is not skipped. 4. **Check on dev:** import each pack through Admin → Content packs. It should report no warnings, and a PF2e sheet and a 5e sheet should each be able to add a weapon and an armour with the expected numbers. 5. **Publish** both `.qbpack` files as assets on the 4.6.0 release and fill in `STARTERS` (key, name, system_key, the manifest's licence object, the asset URL, and a one-line description) in the release PR. Keep the ORC Notice and CC-BY attribution in full. ## Points to settle while doing it - **Ordering.** `STARTERS` needs the asset URL, and the asset exists only once the release does. Either upload the assets to the rc's release and point at a stable URL, or let `release.yml` attach them. Decide, and update `OPERATIONS.md` to match. - **Size.** Check each pack against the 50 MiB fetch cap and the 20,000-record limit. - **What the owner should do on prod** once 4.6.0 is deployed (fetch both from Admin → Content packs), as a line in the release notes. ## Done when Both packs are on the 4.6.0 release, `STARTERS` lists them, dev has imported both cleanly, and the owner has signed off both `SOURCES.md` files.
Author
Collaborator

Q192 (c) (owner, 17 Oct 2026): the setting names that survive in Pathfinder spell and creature text stay as they are. That covers Golarion, Absalom, Kyonin and Irrisen once each; Pharasma about 10 times; Sarenrae 5; Asmodeus, Desna, Gorum and Nethys 2 each; and a few others at most twice. The existing setting-prose rule is unchanged, and RESERVED_TERMS is not extended. The built packs are as reported (pf2e-8.6.1, 5,157 ORC records; Open5e srd-2024, 998 records). Still the owner's before 4.6.0 ships: reading the two SOURCES.md files in docs/content-packs/4.6.0/.

**Q192 (c) (owner, 17 Oct 2026):** the setting names that survive in Pathfinder spell and creature text stay as they are. That covers Golarion, Absalom, Kyonin and Irrisen once each; Pharasma about 10 times; Sarenrae 5; Asmodeus, Desna, Gorum and Nethys 2 each; and a few others at most twice. The existing setting-prose rule is unchanged, and `RESERVED_TERMS` is not extended. The built packs are as reported (`pf2e-8.6.1`, 5,157 ORC records; Open5e `srd-2024`, 998 records). Still the owner's before 4.6.0 ships: reading the two `SOURCES.md` files in `docs/content-packs/4.6.0/`.
Author
Collaborator

Shipped in 4.6.0 (released 18 Oct 2026, on prod at the owner's say). Both packs are attached to the v4.6.0 release page: pf2e-orc.qbpack (5,157 ORC records, pf2e-8.6.1) and open5e-srd.qbpack (998 SRD 5.2.1 records). Admin → Content packs fetches them from that release. Nothing is loaded automatically on prod; an admin fetches them when wanted. Q192 (c): the surviving setting names stay. The owner released 4.6.0 with the reviewed SOURCES.md files in docs/content-packs/4.6.0/. Closing.

**Shipped in 4.6.0** (released 18 Oct 2026, on prod at the owner's say). Both packs are attached to the v4.6.0 release page: `pf2e-orc.qbpack` (5,157 ORC records, pf2e-8.6.1) and `open5e-srd.qbpack` (998 SRD 5.2.1 records). Admin → Content packs fetches them from that release. Nothing is loaded automatically on prod; an admin fetches them when wanted. Q192 (c): the surviving setting names stay. The owner released 4.6.0 with the reviewed `SOURCES.md` files in `docs/content-packs/4.6.0/`. Closing.
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
rbrooks/Quest-Board#1200
No description provided.