From 337f5410f0d993b176c4cd7da1315af3a299880e Mon Sep 17 00:00:00 2001 From: slhx agent Date: Thu, 25 Jun 2026 14:24:49 +0200 Subject: [PATCH] docs(requirements): add rings to pitch Add explicit northstar rings to the pitch requirements so redgate no longer reports missing-ring warnings. req: pitch/001 req: pitch/002 req: pitch/003 req: pitch/004 req: pitch/005 --- AGENTS.md | 2 +- REQUIREMENTS.md | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 72fb5e5..feb1263 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -30,7 +30,7 @@ Keep it stable. Prefer pointers to canonical sources over copied structure, file ## Requirements-first TDD - Write requirements as desired behavior, not as a snapshot of current behavior. -- Keep each requirement row to one checkable obligation; shorten near-limit rows or split oversized examples, escape hatches, or negative cases into separate stable IDs while preserving the original ID's main intent. +- Keep each requirement row to one checkable obligation with an explicit redgate ring field; shorten near-limit rows or split oversized examples, escape hatches, or negative cases into separate stable IDs while preserving the original ID's main intent. - First split intent into broad error classes: what can go wrong, and what outcome must hold. - Test the largest risky classes before narrow examples. - Add adversarial tests for malformed, hostile, ambiguous, missing, duplicated, and boundary inputs. diff --git a/REQUIREMENTS.md b/REQUIREMENTS.md index ef7be2f..3710e97 100644 --- a/REQUIREMENTS.md +++ b/REQUIREMENTS.md @@ -31,19 +31,19 @@ client app state framework. ## pitch ### req: pitch/001 -001 hemx is checked hypermedia for Rust: authors write `.heml`, write Rust handlers, and return generated UI commands while the compiler checks every cross-file reference. [north_star] +0 001 hemx is checked hypermedia for Rust: authors write `.heml`, write Rust handlers, and return generated UI commands while the compiler checks every cross-file reference. [north_star] ### req: pitch/005 -005 For ordinary server-first apps, no app-owned JavaScript is required: the browser runtime only sees lowered ids and effect bytes. [north_star] +0 005 For ordinary server-first apps, no app-owned JavaScript is required: the browser runtime only sees lowered ids and effect bytes. [north_star] ### req: pitch/002 -002 No CSS selectors. No hx-* strings. No virtual DOM. No client framework. No hidden global proxy magic. No component hydration. SSR state bootstrap via `data-hemx-st` is allowed, but the browser never reconstructs a component tree. [north_star] +0 002 No CSS selectors. No hx-* strings. No virtual DOM. No client framework. No hidden global proxy magic. No component hydration. SSR state bootstrap via `data-hemx-st` is allowed, but the browser never reconstructs a component tree. [north_star] ### req: pitch/003 -003 hemx replaces React/Vue not with a UI framework, but with a compiler contract: hemplate knows the surface, Rust knows the types, hemx knows the effects, the browser only executes commands. [north_star] +0 003 hemx replaces React/Vue not with a UI framework, but with a compiler contract: hemplate knows the surface, Rust knows the types, hemx knows the effects, the browser only executes commands. [north_star] ### req: pitch/004 -004 The north-star feel: **boring server-rendered HTML with typed, selectorless partial swaps.** Short handler bodies, compile-checked HTML contracts, plain Rust state changes, hemplate-rendered partials, and a tiny runtime that applies effects. [north_star] +0 004 The north-star feel: **boring server-rendered HTML with typed, selectorless partial swaps.** Short handler bodies, compile-checked HTML contracts, plain Rust state changes, hemplate-rendered partials, and a tiny runtime that applies effects. [north_star] ---