# README.md · versecafe/strata

[View on GitCafe](https://git.cafe/versecafe/strata/blob/ec8a6e74d0ecda7c29c3f365e1eff2e4f6e3e0c1/README.md)

Repository: [versecafe/strata](https://git.cafe/versecafe/strata)

Visibility: public

Requested revision: ec8a6e74d0ecda7c29c3f365e1eff2e4f6e3e0c1

Requested commit: ec8a6e74d0ecda7c29c3f365e1eff2e4f6e3e0c1

Commit: ec8a6e74d0ecda7c29c3f365e1eff2e4f6e3e0c1

Blob: 018aa955db9ab3c84af4246ad491085e1e4fb54f

Size: 1385 bytes

[Immutable source](https://git.cafe/versecafe/strata/blob/ec8a6e74d0ecda7c29c3f365e1eff2e4f6e3e0c1/README.md?format=markdown)

```
# strata

The Strata toolchain — typed comptime HDL + integrated verification platform.
Design authority: `../proposal/` (decisions register D-001–D-080). Language surface: `../proposal/16-syntax.md`.
Probe seeds being promoted (rewrite-with-tests-carried, never copied): `../probes/`.

## Workspace layout

- `crates/strata-syntax` — lexer, lossless trivia-anchored tree, and resilient-LL parser (D-052/D-053/D-062; full 16-syntax grammar)
- `crates/strata-hir` — deterministic, syntax-anchored HIR for declarations, callable bodies, and name-resolution inputs
- `crates/strata-width` — canonical closed width algebra and normalization (D-037)
- `crates/strata-check` — package-aware Tier-A header checks plus the supported body-checking slice; unsupported bodies are reported as explicit tri-state deferrals
- `crates/strata-cli` — `strata parse` and `strata check` drivers with structured `strata-diag/0` output; `strata fmt` remains an honest unavailable-command diagnostic

The formatter and later architecture IR/ledger phases are not implemented yet.

## Invariants enforced from day one

- P-6: determinism everywhere; no wall clock, no env-dependence in any tool path
- D-053: parser losslessness and recovery invariants are CI-fuzzed (`text(tree) == input`, including malformed input)
- R-LS-1 lineage: one frontend — every tool is a driver over these crates

```
