AGENTS.md@docs/product ยท diff
git:20260910.0b75130 to git:20260913.da10ba4
12 added, 12 removed. Audit A to A.
# AGENTS.md โ `docs/product/`
Applies to `docs/product/`. Inherits the root `AGENTS.md`. Scope-specific deltas only.
- ## Regenerate `/now/` with the changelog change
+ ## Editing the changelog: `/now/` needs nothing from you
The public `/now/` page is projected from the `### Highlights` blocks of
- released sections in `changelog.md`. When you add or edit one, regenerate the
- projection in the same change and commit both files:
+ released sections in `changelog.md`. **Edit the changelog and stop there.**
- ```bash
- python3 tools/build-site.py --journeys-only # writes web/src/lib/now-highlights.generated.json
- python3 -m pytest tools/test_build_site_routing.py -k now -q
- ```
+ `web/src/lib/now-highlights.generated.json` is generated, gitignored, and
+ rebuilt by every `npm run` script in `web/` and `docs-site/` that imports it, so
+ there is no second copy to keep in step and nothing to commit alongside your
+ edit. This replaced a rule that asked you to regenerate and commit the JSON in
+ the same change; a forgotten regeneration is how a stale `/now/` page reached
+ production, and the fix was to remove the step rather than to detect it later.
Write each highlight as a `-` bullet. The parser extracts only bullets, so a
- paragraph is dropped silently and the staleness check above still passes.
+ paragraph is dropped silently โ that is still true, and
+ `test_the_generator_projects_the_real_changelog_into_a_valid_payload` is what
+ catches a release whose highlights stop projecting.
- A changelog edit committed without the regenerated JSON fails
- `test_the_committed_now_projection_matches_the_changelog_source` with
- ``web/src/lib/now-highlights.generated.json is stale โ run `python3
- tools/build-site.py --journeys-only` ``.
+ To see your edit rendered, run `make site-build` and open `build/now/index.html`.
`changelog.md`'s own header owns how to write a highlight and which releases
owe one; [`packs/AGENTS.local.md`](../../packs/AGENTS.local.md) owns the pack
release pipeline that records that decision.