These instructions apply to the entire repository.
- All complete application blueprints belong under
blueprints/. - Preserve existing example paths unless a separately approved migration provides redirects.
- When a blueprint supersedes an example, keep the old directory as a compatibility entry that links to the blueprint. Do not maintain two divergent reference implementations.
- Treat examples labeled
legacyincatalog.yamlas educational or historical material, not recommended architecture. - Write README content for developers first.
catalog.yamlandAGENTS.mdshould expose the same facts to coding agents. - Keep example status, known limitations, and declared checks accurate.
- Realtime SFU, AI provider, and Cloudflare API secrets must remain on trusted server-side infrastructure.
- Do not place secrets in browser code, generated browser assets, public variables, URLs, logs, screenshots, or checked-in configuration.
- Room, session, track, and user-controlled identifiers are not authorization.
- Publishing, control, resource creation, and destructive operations require a documented authorization policy in complete application blueprints.
- Use raw Realtime SFU primitives. Do not introduce a conferencing abstraction or large application SDK.
- PartyTracks and PartyKit are out of scope. Do not add them as dependencies or recommend them.
- Do not hide known limitations or imply that example status certifies an application for every production environment.
- Do not add unsupported performance, scaling, or availability claims.
Run the repository foundation checks after catalog, metadata, or documentation changes:
npm ci
npm run checkBlueprint-specific commands are declared in each blueprint.yaml and executed
by repository CI.