Mercurial
comparison .claude/skills/zenbu-personal-site/SKILL.md @ 259:667156fcd3e3
Add dev-only cyberpunk JRPG page
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Wed, 05 Aug 2026 09:19:41 -0700 |
| parents | 60a876c4587a |
| children | 1f9877b637e9 |
comparison
equal
deleted
inserted
replaced
| 258:60a876c4587a | 259:667156fcd3e3 |
|---|---|
| 27 - New site CSS uses `--zenbu-sys-*` semantic roles. Do not consume | 27 - New site CSS uses `--zenbu-sys-*` semantic roles. Do not consume |
| 28 `--zenbu-ref-color-*` or add new `--zen-*` compatibility-token usage. | 28 `--zenbu-ref-color-*` or add new `--zen-*` compatibility-token usage. |
| 29 - `mrjunejune/test/`: integration tests and snapshots. | 29 - `mrjunejune/test/`: integration tests and snapshots. |
| 30 - `mrjunejune/BUILD`: Bazel build, bundle, asset movement, and test-visible filegroups. | 30 - `mrjunejune/BUILD`: Bazel build, bundle, asset movement, and test-visible filegroups. |
| 31 - `mrjunejune/.config` and `.config.development`: server configuration. Do not commit secrets. | 31 - `mrjunejune/.config` and `.config.development`: server configuration. Do not commit secrets. |
| 32 - Experimental pages use the `MRJUNEJUNE_ENABLE_DEV_PAGES` compile-time gate. | |
| 33 Their static files belong in `src_files_development`; production | |
| 34 `src_files`, `mrjunejune_server`, and `mrjunejune_server_bundle` must exclude | |
| 35 them. | |
| 32 | 36 |
| 33 ## How rendering works | 37 ## How rendering works |
| 34 | 38 |
| 35 Handlers allocate a response body from `Dowa_Arena`, render an HTML file with `Seobeo_Render_Html_FilePath`, and return a response map: | 39 Handlers allocate a response body from `Dowa_Arena`, render an HTML file with `Seobeo_Render_Html_FilePath`, and return a response map: |
| 36 | 40 |
| 68 bazel build //mrjunejune:mrjunejune_server | 72 bazel build //mrjunejune:mrjunejune_server |
| 69 bazel build //mrjunejune:mrjunejune_server_bundle | 73 bazel build //mrjunejune:mrjunejune_server_bundle |
| 70 bazel test //mrjunejune/test:integration_test | 74 bazel test //mrjunejune/test:integration_test |
| 71 ``` | 75 ``` |
| 72 | 76 |
| 73 Use the debug server when investigating routing or networking: | 77 Use the development server for experimental pages and debug networking: |
| 74 | 78 |
| 75 ```bash | 79 ```bash |
| 76 bazel build //mrjunejune:mrjunejune_server_debug -c dbg | 80 bazel run //mrjunejune:mrjunejune_server_dev -c dbg |
| 77 ``` | 81 ``` |
| 78 | 82 |
| 79 ## Production-minded checklist | 83 ## Production-minded checklist |
| 80 | 84 |
| 81 - Use Dowa's fixed-width aliases and `boolean`/`TRUE`/`FALSE` in first-party C | 85 - Use Dowa's fixed-width aliases and `boolean`/`TRUE`/`FALSE` in first-party C |
| 84 - Never hardcode secrets. Read configuration from `.config` or environment wiring already used by the Bazel target. | 88 - Never hardcode secrets. Read configuration from `.config` or environment wiring already used by the Bazel target. |
| 85 - For uploads and downloads, validate filenames and content lengths before touching `/tmp`. | 89 - For uploads and downloads, validate filenames and content lengths before touching `/tmp`. |
| 86 - For binary responses, set `content-length` and avoid string-only operations on body bytes. | 90 - For binary responses, set `content-length` and avoid string-only operations on body bytes. |
| 87 - If a route is part of the public website, add or update snapshot coverage in `mrjunejune/test`. | 91 - If a route is part of the public website, add or update snapshot coverage in `mrjunejune/test`. |
| 88 - Keep PWA changes consistent across `manifest.json`, `sw.js`, icons, and `PWA_SETUP.md`. | 92 - Keep PWA changes consistent across `manifest.json`, `sw.js`, icons, and `PWA_SETUP.md`. |
| 89 - Site themes use `data-zen-theme` with Auto, Paper, Ink, and Playful states. | 93 - Site themes use `data-zen-theme` with Auto, Paper, Ink, Playful, and |
| 94 Cyberpunk states. | |
| 90 Preserve the More Sugar font aliases and keep theme-specific values in shared | 95 Preserve the More Sugar font aliases and keep theme-specific values in shared |
| 91 design-system tokens rather than branching inside components. | 96 design-system tokens rather than branching inside components. |
| 92 - Reuse `seobeo`, `dowa`, `deita`, `s3`, and `markdown_converter` instead of adding parallel implementations. | 97 - Reuse `seobeo`, `dowa`, `deita`, `s3`, and `markdown_converter` instead of adding parallel implementations. |