Commit Graph

63 Commits

Author SHA1 Message Date
slhx agent 3a1512994d docs(requirements): tighten wire rows
Add explicit northstar ring fields to wire requirements, split root-boundary metadata, and shorten runtime metadata wording without changing behavior.

req: wire/001

req: wire/002

req: wire/003

req: wire/004

req: wire/005

req: wire/006
2026-06-25 15:27:05 +02:00
slhx agent 9a4971eee8 docs(requirements): tighten form effect rows
Add explicit northstar ring fields to form_effects requirements and shorten the generated clear command wording without changing behavior.

req: form_effects/001

req: form_effects/002

req: form_effects/003
2026-06-25 15:23:48 +02:00
slhx agent 4938c2ea2e docs(requirements): split form source rows
Add explicit northstar ring fields to form requirements and split form domain/parser obligations without changing behavior.

req: form/001

req: form/002

req: form/003

req: form/004

req: form/005

req: form/006

req: form/007

req: form/008
2026-06-25 15:21:00 +02:00
slhx agent e7c2a1f0cc docs(requirements): split keyed list rows
Add explicit northstar ring fields to list requirements and split oversized keyed identity/helper obligations without changing behavior.

req: list/001

req: list/002

req: list/003

req: list/004

req: list/005
2026-06-25 15:17:43 +02:00
slhx agent ee95222b9b docs(requirements): add ring to scope row
Add an explicit northstar ring field to the scope requirement without changing behavior.

req: scope/001
2026-06-25 15:15:05 +02:00
slhx agent 829838e639 docs(requirements): split typed id primitive row
Add explicit northstar ring fields to typed_id requirements and split the oversized ResourceId/ResourceRef obligation without changing behavior.

req: typed_id/001

req: typed_id/002

req: typed_id/003
2026-06-25 15:12:40 +02:00
slhx agent ee5b0d0f15 docs(requirements): add rings to effect algebra
Add explicit northstar ring fields to effect_algebra requirements without changing behavior.

req: effect_algebra/001

req: effect_algebra/002

req: effect_algebra/003

req: effect_algebra/004

req: effect_algebra/005

req: effect_algebra/006
2026-06-25 15:09:51 +02:00
slhx agent b32ee3ee0a docs(requirements): tighten public api rows
Add explicit northstar ring fields to public_api requirements, remove planning wording, and split page-boundary guidance from beginner escape-hatch guidance.

req: public_api/001

req: public_api/002

req: public_api/003

req: public_api/004

req: public_api/005

req: public_api/006
2026-06-25 15:07:44 +02:00
slhx agent 99bc734297 docs(requirements): tighten codegen rows
Add explicit northstar ring fields to codegen requirements and shorten generated-artifact and event-name rows without changing behavior.

req: codegen/001

req: codegen/002

req: codegen/003

req: codegen/004

req: codegen/005

req: codegen/006

req: codegen/007

req: codegen/008

req: codegen/009
2026-06-25 15:05:22 +02:00
slhx agent 47b8d420f6 docs(requirements): tighten surface rows
Add explicit northstar ring fields to surface requirements and shorten parser/key wording without changing behavior.

req: surface/001

req: surface/002

req: surface/003

req: surface/004

req: surface/005

req: surface/006

req: surface/007

req: surface/008

req: surface/009

req: surface/010
2026-06-25 15:01:35 +02:00
slhx agent a9f5fcb2be docs(requirements): tighten component rows
Add explicit northstar ring fields to component requirements, split the missing-handler fallback, and shorten overlong macro rows without changing behavior.

req: component/001

req: component/002

req: component/003

req: component/004

req: component/005

req: component/006

req: component/007
2026-06-25 14:57:38 +02:00
slhx agent 1a24dff507 docs(requirements): tighten htmx equivalent rows
Add explicit northstar ring fields to htmx_equivalents rows and shorten the selector-boundary row without changing behavior.

req: htmx_equivalents/001

req: htmx_equivalents/002

req: htmx_equivalents/003

req: htmx_equivalents/004

req: htmx_equivalents/005

req: htmx_equivalents/006
2026-06-25 14:54:46 +02:00
slhx agent a667113dc0 docs(requirements): tighten page swap rows
Add explicit northstar ring fields to page_swap rows, split boosted native behavior, and shorten overlong rows without changing behavior.

req: page_swap/001

req: page_swap/002

req: page_swap/003

req: page_swap/004

req: page_swap/005

req: page_swap/006

req: page_swap/007

req: page_swap/008
2026-06-25 14:46:36 +02:00
slhx agent 351f5147a4 docs(requirements): tighten progressive disclosure rows
Add explicit northstar ring fields to progressive disclosure requirements and shorten the level-ordering row without changing behavior.

req: progressive_disclosure/001

req: progressive_disclosure/002

req: progressive_disclosure/003

req: progressive_disclosure/004
2026-06-25 14:42:41 +02:00
slhx agent 6136d67ad0 docs(requirements): tighten ceremony rows
Add explicit northstar ring fields to ceremony requirements, split the mobile-starter negative boundary, and shorten overlong rows without changing behavior.

req: ceremony/001

req: ceremony/002

req: ceremony/003

req: ceremony/004

req: ceremony/005

req: ceremony/006

req: ceremony/007
2026-06-25 14:39:55 +02:00
slhx agent ed7bdc5c1f docs(requirements): tighten dx rows
Add explicit northstar rings to dx rows and shorten overlong wording without changing the authoring obligations.

req: dx/001

req: dx/002

req: dx/003

req: dx/004

req: dx/005

req: dx/006

req: dx/007

req: dx/008

req: dx/009

req: dx/010
2026-06-25 14:36:50 +02:00
slhx agent e74d3f632d docs(requirements): tighten mode rows
Add explicit northstar rings to modes rows and shorten the Page Enhancer and beginner-doc obligations below lint thresholds without changing their intent.

req: modes/001

req: modes/002

req: modes/003

req: modes/004
2026-06-25 14:32:39 +02:00
slhx agent 0995374f9d docs(requirements): add rings to canonical rows
Add explicit northstar ring fields across canonical_authoring rows so redgate no longer reports missing-ring warnings for that section.

req: canonical_authoring/001

req: canonical_authoring/002

req: canonical_authoring/003

req: canonical_authoring/004

req: canonical_authoring/005

req: canonical_authoring/006

req: canonical_authoring/007

req: canonical_authoring/008
2026-06-25 14:28:07 +02:00
slhx agent 337f5410f0 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
2026-06-25 14:24:49 +02:00
slhx agent db4e6dad9b docs(requirements): add rings to laws
Add explicit northstar rings to the law requirements so redgate no longer reports missing-ring warnings for the first rows.

req: laws/001

req: laws/002

req: laws/003

req: laws/004

req: laws/005
2026-06-25 14:22:38 +02:00
slhx agent 7b647add0a docs(requirements): split offline adapter boundary
Split oversized canonical_authoring/008 into offline opt-in, adapter queue, and no-core-local-runtime requirements.

req: canonical_authoring/008

req: canonical_authoring/018

req: canonical_authoring/019
2026-06-25 14:18:27 +02:00
slhx agent aa036922cf docs(requirements): split island boundary rule
Split oversized canonical_authoring/007 into explicit leaf adapter and no-second-UI-model requirements.

req: canonical_authoring/007

req: canonical_authoring/017
2026-06-25 14:15:33 +02:00
slhx agent 6b61fb7c4a docs(requirements): tighten helper intent row
Shorten canonical_authoring/005 while preserving its generated-helper naming obligation.

req: canonical_authoring/005
2026-06-25 14:13:01 +02:00
slhx agent bc381eda5e docs(requirements): split generated fact inference rule
Split oversized canonical_authoring/004 into known-template-facts and explicit-diagnostic requirements.

req: canonical_authoring/004

req: canonical_authoring/016
2026-06-25 14:10:46 +02:00
slhx agent 6ee8e46ac9 docs(requirements): split keyed CRUD composition rule
Split oversized canonical_authoring/003 into keyed CRUD and effect-composition/no-selector rows.

req: canonical_authoring/003

req: canonical_authoring/015
2026-06-25 14:09:07 +02:00
slhx agent 8c3a22d720 docs(requirements): split typed partial swap rule
Split oversized canonical_authoring/002 into handler partial-swap flow and primitive-shape requirements.

req: canonical_authoring/002

req: canonical_authoring/014
2026-06-25 14:07:32 +02:00
slhx agent 89dbc3f0f4 docs(requirements): split canonical API scaling rule
Split oversized canonical_authoring/006 into generated-shape, normal authoring surfaces, and escape-hatch boundary requirements.

req: canonical_authoring/006

req: canonical_authoring/012

req: canonical_authoring/013
2026-06-25 14:05:36 +02:00
slhx agent 89878b424a docs(requirements): split canonical app shape rule
Split oversized canonical_authoring/001 into canonical app shape, ordinary-code escape hatches, and CSS ownership rows.

req: canonical_authoring/001

req: canonical_authoring/010

req: canonical_authoring/011
2026-06-25 14:03:39 +02:00
slhx agent f49efc67b6 docs(requirements): split workout release scope
Split oversized examples/006 into command-surface, generated-helper, and mobile-boundary requirements.

req: examples/006

req: examples/010

req: examples/011
2026-06-25 14:01:04 +02:00
slhx agent ac6d957952 docs(requirements): split examples exemplar scope
Split the oversized examples/001 row into canonical v0, html_examples, workout, and north-star exemplar requirements.

req: examples/001

req: examples/007

req: examples/008

req: examples/009
2026-06-25 13:58:01 +02:00
slhx agent ebe3383b8a docs(requirements): split test inspector contract
Split the oversized test/001 row into test backend, inspector assertions, canonical assertion style, and browser selector adapter requirements.

req: test/001

req: test/007

req: test/008

req: test/009
2026-06-25 13:55:45 +02:00
slhx agent 120268acc1 docs(requirements): split htmx equivalent coverage
Split htmx_equivalents/002 into core interaction, navigation/live-update, gallery, and component-shape rows.

req: htmx_equivalents/002

req: htmx_equivalents/004

req: htmx_equivalents/005

req: htmx_equivalents/006
2026-06-25 13:53:15 +02:00
slhx agent edf632a11e docs(requirements): split codegen helper surface
Split the oversized codegen/002 row into helper surface, string-key id, generated-command, and form-target requirements.

req: codegen/002

req: codegen/007

req: codegen/008

req: codegen/009
2026-06-25 13:49:31 +02:00
slhx agent 867c730ce9 docs(requirements): split generated helper escape hatches
Split the oversized dx/006 row into preferred helper, hidden render/lower, and escape-hatch surface requirements.

req: dx/006

req: dx/009

req: dx/010
2026-06-25 13:46:35 +02:00
slhx agent 42e2669a98 docs(requirements): split pitch runtime claim
Split the pitch overview into checked-hypermedia and no-app-JavaScript rows so redgate no longer reports pitch/001 as oversized.

req: pitch/001

req: pitch/005
2026-06-25 13:42:58 +02:00
slhx agent 7331676012 docs(requirements): split generated helper intent rule
Split the long canonical helper requirement into separate intent and forbidden-composition rows so redgate no longer reports that row as oversized.

req: canonical_authoring/005

req: canonical_authoring/009
2026-06-25 13:40:24 +02:00
slhx agent cbb9d68733 test(xtask): add html examples browser smoke
Add a repo-owned xtask command that starts html_examples, drives a CDP browser through click/save/input/search/load paths, and cleans up the server process.

req: test/006

req: examples/001

req: htmx_equivalents/002
2026-06-25 13:32:31 +02:00
slhx agent acddea21ee fix(examples): repair html dynamic partial interactions
Preserve data-hemx-revealed through hemx-build and make html_examples lazy/load-more/infinite/search interactions return server-driven partial updates with regression coverage.

req: convention/005

req: htmx_equivalents/002

req: examples/001
2026-06-25 12:56:43 +02:00
slhx agent cd7f64e5a3 feat(runtime): add tiny trigger timing conventions
Add boring runtime-level trigger timing primitives for delay, revealed, and interval while keeping them as attribute conventions rather than core effects or plugin surfaces. Promote lazy-load, infinite-scroll, progress-bar, value-select, and reset-user-input in examples/html_examples to runnable hemx patterns with exact htmx slugs and generated resources.

req: convention/001

req: convention/003

req: convention/005

req: htmx_equivalents/001

req: htmx_equivalents/002

req: examples/001
2026-06-23 07:51:43 +02:00
slhx agent b3d72e8d82 feat(examples): add hemx html pattern gallery
Add examples/html_examples as a copy-pasteable gallery for the first htmx-style HTML UX patterns using exact htmx URL slugs in the page and README. The slice covers click-to-edit, edit-row, delete-row, inline-validation, click-to-load, and active-search with .heml templates, generated resources, server-owned Rust state, and runtime-free selector targeting.

req: htmx_equivalents/001

req: htmx_equivalents/002

req: examples/001
2026-06-23 07:22:40 +02:00
slhx agent de6ecd469f fix(runtime): show transport failures in app error outlets
Make failed hemx requests visibly recoverable by updating root-scoped data-hemx-error outlets while preserving fail-closed non-2xx handling and inspectable hemx:error events. The v0 generated-app exemplar now includes a transport error outlet alongside generated field-error targets.

req: runtime/005

req: examples/001

req: canonical_authoring/003
2026-06-22 22:26:33 +02:00
slhx agent f1aa232c94 fix(runtime): fail closed on hemx request errors
Preserve pending recovery while making failed HTTP responses non-applicable as effects. The runtime now restores aria-busy with pending state and emits inspectable hemx:error details with HTTP status for failed requests.

req: runtime/005

req: convention/007
2026-06-22 22:22:26 +02:00
slhx agent 797132647f feat(diagnostics): add compiler-backed heml language service
Add hemx-lsp for stdio LSP diagnostics, completion, and hover while preserving HTML editor tooling for .heml files. Teach hemx-build to expose generated target and derive-known template context facts, including simple h-for locals, so editor help comes from build-owned facts instead of editor-only parsers. Wire VS Code/Cursor and Neovim documentation and extend the Workout exemplar with a real h-for plan loop for end-to-end proof.

req: diag/004

req: diag/005

req: diag/006
2026-06-22 22:06:42 +02:00
slhx agent 4bca046ed1 docs: bound optional heml editor overlays
Make hemx-build diagnostics and the documented .heml syntax surface the authority for any editor overlay, while rejecting a second template language, selector model, formatter, or custom editor framework.

req: diagnostics/004
2026-06-12 18:15:30 +02:00
slhx agent b8c83fee25 feat(build): surface structured template diagnostics
Add public .heml syntax authority and refactor the unkeyed generated-target error into structured diagnostic data while preserving the human compiler error.

req: diagnostics/001

req: diagnostics/002
2026-06-12 18:11:39 +02:00
slhx agent d4916b1a1e feat(xtask): add mobile app starter
Add app new --mobile as the public phone-first starter path. It reuses the Workout starter so created apps carry a real page/form/keyed partial/notice flow, typed host capability handling, app-owned recovery truth, and inspectable mobile release/verify commands without adding a mobile framework.

req: ceremony/006

req: examples/006
2026-06-12 15:34:32 +02:00
slhx agent 274f44f91d feat(xtask): scaffold generic hemx apps
Add cargo run -p hemx-xtask -- app new PATH for the generic checked-hypermedia starter: v0 page/form/keyed-row/notice handlers and tests with generated helpers instead of raw ids, opcodes, selector UI JavaScript, or manual registry plumbing.

req: ceremony/005

req: canonical_authoring/003
2026-06-12 15:13:33 +02:00
slhx agent d0dc9729fd docs: explain reusable partials
Add the public 'Where are my components?' answer: hemx maps framework component jobs to hemplate partials, generated helpers, app-owned state, IntoEffect composition, and explicit leaf islands. The pre-commit guard now only blocks commits that change REQUIREMENTS.md without an AGENTS.md review, so unrelated follow-up commits are not trapped by old history.

req: canonical_authoring/002

req: canonical_authoring/003
2026-06-12 14:40:25 +02:00
slhx agent a4a4dcf74f feat(workout): hide registry conversion from golden path
Let the Workout generated interaction builder satisfy DispatchRegistry directly and guard canonical sources/docs against .into_registry() so the beginner path does not teach manual registry conversion.

req: examples/001

req: examples/006

req: public_api/002
2026-06-12 13:08:46 +02:00
slhx agent 860a4edf61 feat(workout): unify release command surface
Route local dev, tests, production build, mobile release, mobile verification, and doctor through one Workout xtask surface, and update the canonical docs around that surface.

req: examples/001

req: examples/006

req: test/004
2026-06-12 11:20:22 +02:00