THE KUJO COURSE
Evidence and freshness ledger
Verification boundary
The lesson verifier uses the official Kujo 1.3.1 macOS x64 release artifact, checked against its published SHA-256 checksum. The GitHub release API reported v1.3.1 published on 2026-09-06. A cached web release page still showed v1.2.3; the live API and artifact were used instead.
Each of 40 lesson examples is checked and executed on the default VM, with exact expected stdout. Each intentional failure checks its exit category and diagnostic reason. Download the current verification receipts. The repository also records package, stage-project, AI replay, browser, and production checks.
Source hierarchy
Executable behavior and contract tests take precedence when explaining an observed release. Written specifications describe intended guarantees. If they disagree, the course shows the disagreement rather than inventing a convenient equivalence.
Core references: language specification, stable scope, standard library, AI runtime, CLI contracts, parity matrix, and security posture.
Known release discrepancies
The repository preserves minimal probes and both runtime results under evidence/runtime-discrepancies.json. They remain upstream issues; successful course examples avoid relying on the affected behavior.
| Concept | Intended contract | Observed 1.3.1 VM | Course treatment |
|---|---|---|---|
| Repeated loop declarations | Fresh block scope per iteration | Repeated let declaration fails on VM | Keep tested accumulation patterns explicit |
| Loop scope | Loop variable does not leak | Top-level loop variable remained visible | Explicit contract-versus-release note |
| Loop control | Bounded break/continue behavior | A combined probe exceeded external deadline | Avoid that pattern in successful builds |
| Struct mutation | Mutable field update | Assignment left field unchanged | Construct and read; label fallback needs |
| Qualified custom enum match | Match declared variant | Probe reached default on VM, matched on interpreter | Use verified built-in Result/Option examples |
These results do not justify broader claims that all loops or structs are unusable. They identify particular reproducible patterns and prevent the course from promising unverified behavior.
A control probe confirmed ordinary mutable collection reassignment works in both runtimes. Earlier duplicate-declaration observations for values/items were builtin-name collisions, not collection-mutation defects.
Today and on the horizon
VM-first execution, native capabilities, deterministic package snapshots, AI replay, schema validation, and vector math are current documented mechanisms. JIT remains experimental. Generics, FFI, WASM targeting, macros, and typing precision work remain deferred candidates in the reviewed scope. Roadmap entries are not promises.
Ecosystem and protocol references
Later lessons inspect Kujo Workflows, MCP framework, Eval, and RunLedger as composition choices. The reviewed MCP specification is a separate protocol authority, not a statement of full Kujo framework conformance.
Refresh procedure
Check the latest release API and artifact checksum; inspect spec, scope, roadmap, changelog, native and AI contracts, security, parity, and relevant ecosystem revisions. Rerun examples, negative cases, package drift, replay, browser QA, and production verification. Record the date and source identity. Do not update golden results until the changed behavior has been explained.
Download the concept/source ledger · Download both-runtime probe results