Handbook
Dual-wiki architecture
Forge STI uses the private handbook pair pattern shared by Fleet, LCDL, Lenses, and Platform: product Markdown in sti, Firebase deploy wiring in stiw.
Updated
| Repo | Abbr | Owns | Does not own |
|---|---|---|---|
| forge-sti | sti | docs/, schemas/, src/forge_sti/, Cursor composer prompts |
Firebase config, generator, Hosting chrome |
| forge-sti-website | stiw | generator/, firebase.json, website/ HTML, kitchensink submodule |
Product spec source of truth |
Publish loop
- Edit and commit in forge-sti (this repo).
- In forge-sti-website, bump the
forge-stisubmodule to that commit. - Run
python3 generator/build-site.pyfrom stiw. - Deploy:
./deploy-websites.sh --only forge-sti-websitefrom the Code workspace root.
Canonical URL (when Hosting is provisioned): https://sti.forgesdlc.com (Firebase project forge-sti-handbook).
Decision rules
- Product documentation or schema change → edit sti only.
- Generator, Firebase, or nav chrome change → edit stiw only.
- Kitchen Sink CSS/components changed → propagate KS first (
sync-kitchensink-and-rebuild.sh), then rebuild stiw. - One commit per repo — never stage sti and stiw together.
Submodule safety
When mirroring sti into the stiw submodule without waiting on remote SHA, never delete the submodule .git/ directory. Prefer git submodule update --remote forge-sti after push, or scoped rsync into docs/ and schemas/ only.
What is not dual-wiki here
Capablio-style wiki/external + wiki/internal split is out of scope. STI dual-wiki means product repo ↔ handbook deploy shell only.
Related
- Website publishing
- Workspace bridge: handbook-deploy-pairs (sti + stiw listed after catalog sync)