Versioned required behaviour
A specification states what an implementation must, should, or may do.
The registry records a specification identifier, semantic version, exact source revision, status, authority, normative requirements, explanatory notes, related implementations, conformance results, and publication receipt. It complements documentation; it is not a replacement for it.
Registry and discovery
Find the exact standard before reading the prose.
Status, identifier, version, revision, authority, and conformance remain visible together. Popularity never outranks whether a specification is current or reviewable.
| Specification | Version | Status | Domain | Revision | Updated |
|---|---|---|---|---|---|
| 1.2.0 | accepted | runtime | 7107147d | 2026-08-19 | |
| 0.9.2 | proposed | typed | b37d9b71 | 2026-08-18 | |
| 0.3.0 | experimental | work | d4502d3d | 2026-08-17 | |
| 1.1.1 | superseded | native | 9a85d3ed | 2026-08-13 | |
| 0.1.0-draft | draft | packages | 2de379ee | 2026-08-16 | |
| 0.8.0 | withdrawn | interop | 4f2e7a93 | 2026-07-29 |
Exact filters remain visible. Reset them without losing the current catalogue location.
Editable proposal without a durable public decision.
Exact submitted revision is fenced while review is active.
Normative version and publication receipt are current.
Historical version remains inspectable and points to its replacement.
Proposal is no longer current; identity and withdrawal reason remain durable.
Useful for implementation study but not an accepted compatibility promise.
Keep the active filters visible and offer one clear reset action.
Show the last indexed revision and do not claim newer proposal state.
Render available records, name unavailable sources, and keep exact revision facts visible.
Specification document
Normative requirements and explanatory material remain distinct.
The reader retains access to the outline, status, version, source revision, supersession chain, machine representation, related implementations, and conformance records.
HSP-0008 · runtime.session@1.2.0
Unified live-session lifecycle
One fenced lifecycle envelope for browser, interpreter, compiled, and embedded execution surfaces.
The following statements are compatibility requirements. “Must”, “should”, and “may” express their defined normative levels.
- must REQ-001
Every execution names a session identity, generation, and exact source revision.
- must REQ-004
Backend selection never silently falls back to a different implementation.
- should REQ-009
Observation streams expose a monotonic sequence within the session envelope.
session-envelope = identity generation source-revision backend capabilities sequence state receipts Browser, interpreter, compiled, and embedded implementations may expose different observations. They still require one lifecycle vocabulary so replacement, cancellation, backend availability, and receipt evidence have consistent meanings across hosts.
- 1.2.0Current accepted version
7107147d - 1.1.0Superseded by 1.2.0
53c31d8e - 1.0.0First accepted lifecycle envelope
4ac7e09c
Checker and conformance
A result is only useful when its fence is inspectable.
The checker names the exact input, specification version, specification revision, implementation, findings, and receipt. Unavailable never masquerades as failure.
Pass: runtime.session@1.2.0
The value satisfies all required session-envelope fields and lifecycle constraints.
- Source
- examples/session-envelope.hara
- Source revision
- 9f3c2ab7
- Specification
- runtime.session@1.2.0
- Spec revision
- 7107147d45d4c03f
- Implementation
- browser-checker@0.6.1
- Receipt
- check:runtime.session:1.2.0:9f3c2ab7:pass
| Specification | Implementation | Target | Revision | Result | Receipt |
|---|---|---|---|---|---|
| runtime.session@1.2.0 | Hara JVM | JDK 21 | f4ac17e2 | pass · 82/82 | conformance:jvm:runtime.session:82-82 |
| runtime.session@1.2.0 | Hara Rust | native | cc8f2301 | warning · 79/82 | conformance:rust:runtime.session:79-82 |
| runtime.session@1.2.0 | Browser/Wasm | wasm32 | 71cc80f4 | pass · 40/40 | conformance:wasm:runtime.session:40-40 |
| std.typed.schema@0.9.2 | Hara JVM | JDK 21 | 3b4b7a12 | pass · 61/61 | conformance:jvm:std.typed.schema:61-61 |
| std.typed.schema@0.9.2 | Hara Rust | native | fe63a129 | failure · 57/61 | conformance:rust:std.typed.schema:57-61 |
| work.executor@0.3.0 | Browser/Wasm | wasm32 | unavailable | unsupported · 0/46 | No claim |
Authoring and proposal workflow
Author intent here. Canonical history in GitHub.
The product provides structured entry, validation, preview, and review state. GitHub remains the exact source and discussion history once a proposal is submitted.
-
Local revision
-
Fenced input + queued checks
-
GitHub proposal + submission receipt
-
Review decision on exact revision
-
Acceptance decision + version assignment
-
Git commit + publication receipt
Canonical boundary. Submission creates or updates the exact GitHub proposal. Review conversation, merged commit, and acceptance decision are referenced here rather than copied into a private workflow.
Exact revisions awaiting action
- Revision
- 42cb7e16
- Reviewers
- 3
- Checks
- 2 pass · 1 warning
- Age
- 4h
- Revision
- b37d9b71
- Reviewers
- 2
- Checks
- 61 / 61
- Age
- 2d
- Revision
- f9207a61
- Reviewers
- 0
- Checks
- queued
- Age
- 18m
Digest and change review
Read the consequence before opening the diff.
Breaking, additive, and proposed changes name the exact specification revision, affected packages and namespaces, and concrete migration guidance.
Disposal is now terminal and idempotent
Adds an explicit disposal receipt and preserves replacement history without changing successful Run behavior.
hara-runtimehara-wasm-corestd.runtime.sessionInventory-only native methods require a reviewable reason
Unclassified additions, removals, and renames now fail the conformance guard.
hara-nativehara-ruststd.nativeNormalized value paths in validation findings
Proposal adds stable machine codes and exact nested value paths across supported runtimes.
hara-typedstd.typedstd.typed.schemaChoose daily or weekly delivery and exact domains. The public archive, RSS, and JSON Feed remain first-class alternatives.
Ownership and adoption
Visual Language presents specifications; hara-specs owns their authority.
An implementation may use these compositions without moving canonical source, version history, proposal review, or conformance records into this repository.
Table, form, inspector, status, navigation, focus, responsive, and receipt presentation contracts.
Registry search, checker transport, proposal entry, review queue, change subscriptions, and route-local information architecture.
Canonical source, identifiers, versions, normative text, Git history, review decisions, supersession, and machine representations.
Checker implementations, exact result receipts, implementation revisions, test vectors, and supported-target claims.
Adoption checklist
- Pin a merged Visual Language revision rather than an unmerged branch.
- Resolve every registry card to an exact specification version and revision.
- Keep normative and explanatory regions semantically and visually distinct.
- Never convert checker unavailable into pass, warning, or failure.
- Preserve GitHub as canonical proposal and review history.
- Verify keyboard, touch, reduced-motion, light/dark, and narrow-width behaviour.
Review the front-matter contract, component reference, interaction-state reference, and V2-SPECS.md before adoption into hara-lang/hara-specs.