Skip to content

Releases: 0al-spec/Hypercode

0.5.0 — spec-layer hardening

12 Jun 14:49
7d28e70

Choose a tag to compare

The resolver becomes a verifiable pipeline: typed IR with full provenance, monotonic contracts, cascade explanation, semantic diff, and a runnable AI-codegen loop. (PRs #19#25.)

Added

  • hypercode.ir/v2 (HC-112, breaking; now the default emit output): typed values, the winning rule and every losing rule per property with file:line, specificity and source order, applicable contracts echoed per property, per-node SHA-256 Merkle hashes plus a documentHash, context echo, and resolver.name/version. JSON Schema in Schema/; v1 remains available via --ir-version 1.
  • Monotonic selector contracts (HC-111): @contract: blocks attach property schemas (type, bounds, required) to selectors. Values cascade; contracts accumulate by intersection and may only narrow — weakening is a build error (RFC §9.4). Diagnostics HC2101–HC2103, plus context-dependent value validation HC2104 (validate --ctx).
  • hypercode explain <selector> [property] (HC-110) — the full cascade trace: the winner and every loser with specificity and source order.
  • hypercode diff <old.ir> <new.ir> (HC-113) — semantic diff over IR v2: hash-driven traversal, selector-identity matching with content-hash pairing for duplicate siblings, --format json = hypercode.diff/v1, diff-like exit codes 0/1/2.
  • End-to-end AI codegen demo (HC-124, Examples/codegen-demo/): spec → IR v2 → one generated module per node; check.py verifies freshness (node hashes) and contract conformance of the artifacts; generate.sh regenerates only stale modules. Runs in CI.
  • Usage guide (DOCS/Usage.md) with real CLI outputs; OVERVIEW.md rewritten to the current positioning; RFC v0.2; EBNF/ 0.2.
  • CI validates emitted IR and diff output against their JSON Schemas (ajv).

Changed

  • SHA-256 via swift-crypto (Linux-capable).
  • Hardened boundaries: emitted JSON escapes object keys; --ctx keys must be identifiers; the diff JSON parser is strict RFC 8259; unreadable diff input exits 2.
  • Single version constant HypercodeVersion.current, echoed as resolver.version in IR v2.

Full changelog: CHANGELOG.md

v0.4.0 — reference implementation

02 Jun 08:14
ae7de21

Choose a tag to compare

First release with a reference implementation.

Highlights

  • Swift package (consumable via SwiftPM): .hc lexer + recursive-descent parser, grammar-core as SpecificationCore specifications, and the cascade resolver with provenance (RFC §4.2).
  • hypercode CLI: parse, validate, resolve, emit (JSON/YAML IR).
  • Canonical IR hypercode.ir/v1 + JSON Schema — the cross-implementation contract.
  • Lean 4 cascade oracle — machine-checked agreement with the Swift resolver.
  • DocC API docs: https://0al-spec.github.io/Hypercode/
  • Examples: service (RFC §5) and whitelabel.

Install

.package(url: "https://github.com/0al-spec/Hypercode", from: "0.4.0"),

Full notes in CHANGELOG.md.

🤖 Generated with Claude Code

0.3.0

14 Aug 20:41
c0aaa8f

Choose a tag to compare

0.3.0 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: https://github.com/0al-spec/Hypercode/commits/v0.3.0