Skip to content

Build the Typikon v2 typed kernel and deterministic derivation graph #65

Description

@forkwright

Finding

Typikon has no framework-neutral typed authority for site, content, provenance, asset, provider, gate, compatibility, or design contracts. Its schemas, scaffolds, validators, templates, and documentation are independently maintained across JSON, Python, shell, Tera, and prose.

Evidence

The repository is a Zola theme/tool script collection with no Cargo workspace, canonical resource registry, or contract generator. rust-toolchain.toml exists at the repo root but is a fleet-wide CI pin consumed by a shared reusable workflow, not kernel work: .github/workflows/gate-attestation.yml:105-107 sets rust_toolchain: "" (deferring to that file only for setup-rust-toolchain auto-detect) with fmt_cmd/check_cmd as no-ops, and the workflow's own comments say outright this repo has no Rust code of its own.

Dependency locking is no longer absent. ci/consumer-python-requirements.lock (hash-locked, generated via uv pip compile --generate-hashes, predating this issue) and ci/tool-lock.toml (holding every gate tool's version and integrity value since #194) both exist. Neither is the typed authority this issue asks for — they lock dependencies, not contracts, and say nothing about site, content, provenance, asset, provider, gate, compatibility, or design semantics.

Existing #53, #56, and #60 identify specific consumer-facing consequences. #56 and #60 are now closed (#60 closed on the fail-closed consumer schema registry — docs/SCHEMAS.md:27, enforced by ci/check-consumer-schema-registry.py); #53 remains open and converges with #67's content new surface. None of the three owns the neutral kernel and derivation mechanism.

Why this matters

Without one constrained model, every adapter and consumer can reinterpret the same concept, generated surfaces drift, migrations invent semantic facts, and Typikon remains a template collection rather than a real library. A future gate cannot prove agreement among types, schemas, docs, scaffolds, and consumers if those artifacts have independent authority.

Desired correction

Create the Typikon v2 Rust workspace and strict core under crates/typikon-core, with canonical resources/registry.toml, exact tool/dependency identities, typed site/content/provenance/asset/provider/gate/compatibility models, deterministic digests, and DTCG design authority. Derive JSON Schema 2020-12, TypeScript contracts, reference docs, scaffolds, design outputs, and provider schemas with provenance-bearing byte-stable output.

Done when unknown fields and invalid identities fail closed; generated bytes are deterministic; typikon derive --check detects manual drift; property/fuzz tests cover parsing, normalization, derivation, and migrations; consumer namespaces close with unevaluatedProperties: false; and legacy fixtures migrate without inferred semantic values. #53 remains the acceptance owner for the content new surface it converges with; #56 and #60 are closed and no longer acceptance-gate this issue.

Program: ardent-web-triad.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew capability or improvement to an existing feature

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions