Repository navigation
Releases: jordanhubbard/literate-ai
Release list
v1.2.0
-
Instructional film: publish the 1.2 onboarding film, Settle the Argument. Before
CI. (11:52), inmedia/courses/sam-meets-literate-ai/. LitAI opens with the big
picture of agentic development, Sam dismisses it as the usual AI slop pitch, and
seven of his beliefs are settled with terminal sessions recorded against the 1.2
build: reviewable promises, independent acceptance, the full release gate before
CI,litai render htmlviews, adoption without a rewrite, learning as reviewed
changes, and a locally built release wheel; remote workers and the learning loop
are labelled walkthroughs. Local neural voices only; the integrity receipt verifies.
The 1.1 feedback edition (13:38) remains at thev1.1.0tag. -
litai video buildandlitai video verifynow measure media from its decodable
samples instead of trusting container headers and receipt hashes. Build refuses a
scene clip with no video or audio samples (video.media_empty) or whose measured
video length differs from its narration (video.media_duration), and reports the
final film's measured video duration. Verify re-measures the film and refuses empty
streams, video that stops before its audio, receipt durations that differ from the
media, and narrated captions that outlast the picture, even when every artifact
digest matches. Other video failures keepvideo.invalid; the receipt schema is
unchanged. -
Deferred to 1.3 by maintainer decision: clean three-way update merging and reviewed
resolution application (issue #2; in 1.2 conflict review is plan-only andlitai update --applypreserves
conflicts), and production
action DAG dispatch with multi-worker shared LAN-cache qualification (issue #4; 1.2
ships the scheduler and cache foundation). -
litai rebuildnow runs bounded candidate repair. Attaching durable checkpoints or
the source cache rebuilt the lifecycle service without its repair port, so a retryable
build or generated-test rejection failed the run after one candidate instead of
requesting up to two fresh replacements. The rejected attempt's checkpoint is closed as
failed and each replacement opens its own durable attempt, chained to the rejected one,
because it restarts at source generation. The rebuild result'srepairfield now
reports the replacements that ran instead of alwaysnot-needed. -
Toolchain observation now accepts the npm
@bazel/bazelisklauncher that the
installation guide recommends. Only the prebuilt binary bazelisk.js runs for the host,
selected by the Node runtime's own architecture, is observed as the native toolchain.
The package's other platform binaries are hashed as inert payload, and native files
anywhere else still refuse. -
litai project validateand Flavor catalog loading discover the project skill catalog
once per operation instead of once per Component and Flavor (117 times for this
repository). This removes most of the filesystem metadata calls that made Windows
gates slow. -
The worker template can declare Windows Defender process exclusions
(defender_process_exclusions):{python}, the real base interpreter behind the
template Python, or an absolute.exepath.litai worker alignreports a missing
one and--applyadds it, naming the resolved executable. Shells and script hosts
are refused, and{python}must resolve to an existing non-Store.exe. The
repository template now excludes{python}. That covers every process of that
interpreter on the worker, not only gate work, so Defender no longer scans its pip,
stdlib or site-packages reads outside the excluded workspace. -
The conformance sample runner now records a bounded, redacted
diagnostic_excerpt
for rejected generated candidates (compiler or Bazel output for build rejections;
generated expected and observed values for generated-test mismatches) in retained
evidence and in the next attempt's repair feedback. Previously only a diagnostic hash
was kept, so neither showed the error.litai rebuildrepair prompts still carry only
a short sanitized failure message. -
Release qualification is local-first:
litai release checkdefaults to thetiered
target when the release policy declares qualification (this host, then workers, then
CI), andlitai release qualifyruns that tiered qualification directly. The host gate and
the worker gates run concurrently rather than host-first, so a three-platform release
check takes one gate's wall-clock time instead of two. -
Forge issues and PRs/MRs are the documented default tracker and agent coordination
channel (ADR 0050); other trackers or review systems are overrides. Landing now passes
the policy target branch (gh pr create --base,glab mr create --target-branch).
litai prompt translaterecognizes--external-envelope/LITAI_EXTERNAL_TASK_ID
(errorprompt_routing.external_envelope_bypass, envelopeprompt-task@2); the MAC
spellings remain deprecated aliases.litai initno longer installs the opt-in
write-mac-project-contractskill;litai updatekeeps an existing copy unless the
parent does not ship it and it is unedited. Projects whose forge default branch is not
mainmust declarerepository_policy.default_branch, which landing now targets. -
Remote live gates no longer require
OPENAI_API_KEYin the worker login
environment. They still requireopencode, which resolves credentials for the
pinned model's provider from its own configuration (ADR 0017 amendment). A
missing provider key reported by OpenCode is now
coding_cli.authentication_required. -
make release-checknow runspublic-export-check, so an organization-internal
reference in tracked files fails the release gate instead of surfacing only at
export (#55). -
Retained Cargo receipts report unselected ignored cases as explicit exclusions,
preserving strict selected-test failures and empty-suite rejection. -
Cross-host workers: when BUILD, TEST, EXECUTE and FINALIZE all run on admitted
workers,litai rebuildderives locked toolchain identities, commands and
native dependencies from the worker instead of the controller host, which then
needs none of the project's tools. Workers serving PACKAGE or FINALIZE are no
longer refused for tool observation, and worker dependency observation is
several times faster. -
Add
python -m literate_ai.standard_receiver, a reference action receiver for
portable Standard projects configured by one private operator document. It
runs BUILD, TEST, EXECUTE, ACCEPT, PACKAGE and FINALIZE for single-Component
Make/Python projects and refuses any contract that names a tool, driver or
layout other than the packaged profiles for the worker's own tools. -
litai rebuildwith admitted action workers: install the bounded evidence
recorder remote phases need (every such rebuild previously failed at BUILD),
report project-level PACKAGE/FINALIZE refusals as typed CLI errors instead of
tracebacks, and run the full worker health and capability probe once per
action boundary instead of on every guarded read. -
FINALIZE grants: when a worker has no grant, the controller writes the exact
request to an operator-owned path and waits a bounded time for the operator to
grant it with--issue-finalize-grant, then continues in the same run. -
FINALIZE receivers check private grants in the parent as well as the child.
Before staging, the grant must be current and scoped to the exact input,
revision and privilege; after staging, the parent measures the child's portable
runtime and applies the full guard on every poll. The command-controller chain
now runs with real file grants instead of synthetic permission callbacks. -
A describe-only FINALIZE dispatch reports the exact grant request a receiver
measured, without executing, so an operator can authorize precisely that
runtime. The controller refuses descriptions for any other input, revision,
privilege set or builder. -
Reconcile HTML observability scope: distinguish delivered graph/health views
from remaining run-history, dashboard controls and later-view qualification. -
Require the versioned release line even for historical policies without a
default branch; refuse arbitrary-branch plans and legacy-plan preparation. -
Require explicit SemVer policy for release operations, including legacy policies;
retain historical policy inspection and migrate the framework policy to SemVer. -
Release publication and published verification independently validate
policy-bound tag names and declared release-line requirements. Altered prepared
records are rejected before tagging or pushing, even when substituted refs
select the same prepared commit. -
Provide a portable FINALIZE child startup adapter with private contracts/tools,
measured runtime grants, owned output cleanup and stage authority checks.
Operator provisioning and full CLI qualification remain pending. -
Add private file-backed FINALIZE grant lookup with live revocation checks for
parent supervision and child stages. Grant issuance and deployment provisioning
remain separate requirements. -
Add a pinned private FINALIZE policy for Standard rebuild with controller-owned
portable package/test/oracle verification. Production worker grant provisioning
and complete CLI rebuild qualification remain pending. -
Update: recover digest-verified historical bases recorded with GitHub's SCP
spelling (git@github.com:owner/repository) over the same SSH transport, while
preserving the original repository, revision and provenance. Recorded URLs keep
their transport, and an unusable historical locator leaves the conflict
unresolved instead of aborting the update (#36). -
Release: classify SemVer numbered drafts with SemVer precedence and match GitHub
prerelease publication/verification to the prepare...
v1.1.0
-
Initialization: seed the starter acceptance oracle from the
hello-component
contract the project actually received. Projects derived withinit --fromthe
framework repository inherit its greeting-card sample (nameplusmessages) and
previously got name-only expectations, so every live rebuild failed acceptance. -
Documentation: point getting started, installation, worker registration and
adoption guidance at the onboarding film and instructional courses, and link the
course index to repository files instead of a feature branch. -
Continue existing installations across the repository move: projects initialized
fromNVIDIA-dev/literate-aiplanlitai updateagainst public-repository builds,
and self-update follows the declared successor. Other repository origins are still
refused. See the
migration guide. -
macOS dependency observation reuses
dyld_infofacts within a process only for
identical inspector bytes, arguments and image identity: content and symlink chain
for on-disk images, the boot session for shared-cache images. Retained Cargo native
test guards no longer re-inspect ~700 unchanged system images per check (#13). -
Elixir: add
lang-elixirwith portable script-tree generation, syntax validation,
Standard runtime/test dispatch, exact Elixir/OTP toolchain identities, and
init/flavor addassets. Requires Elixir 1.18+ and Erlang/OTP 27+; native
macOS smoke verification passes with Elixir 1.20.4/OTP 29. Mix/Hex/Phoenix
are outside this dependency-free profile. -
Documentation tooling: update DOMPurify to 3.4.16. Gate the dependency audit
through reviewed, expiring per-advisory exceptions. The only exception covers the
unpatched braces advisory GHSA-vfj7-8cjw-p6xm in OpenSpec's glob dependencies (#24). -
CLI self-update: refresh bytecode in the caller-selected cache and optimization
mode so a successful wheel upgrade cannot immediately execute stale code from
an equal-size, equal-timestamp previous version. Keep import-path overrides
excluded from the installer environment. -
Retained adoption: add explicit read-only Standard planning with bounded binary input
custody and complete action inventories. Execution and release qualification remain
unavailable until the retained-origin receipt path is complete (ADR 0048). -
CLI: keep pip installation and command re-execution on the same configured
bytecode cache during self-update, preventing stale code after equal-size,
equal-timestamp upgrades while preserving unrelated caches. -
CI: run one full Linux suite plus cross-platform native/install smoke on ordinary
PRs, consolidate documentation jobs, cache dependency downloads, and preserve
independent failure diagnostics. Full multi-platform release qualification remains
required. Publication subprocess timeouts now stay within their reviewed limit
even when floating-point deadline arithmetic rounds upward. -
CI: separate focused macOS PR smoke checks from full main/release qualification,
bound conformance steps, and retain verbose test names and self-update failure
diagnostics. Full release gates remain unchanged. -
Onboarding: feature the continuous narrated video in the README, with a clickable
preview, chapters, subtitles, and a public-feedback link. -
Move the canonical repository to
jordanhubbard/literate-ai: release
publication, the Homebrew formula, install documentation, and initialized project
READMEs now reference it. Earlier issue and CI links refer to the archived
NVIDIA-dev/literate-airepository. -
CLI: identify Git/source builds and their exact revision in version output,
without treating package metadata as published-release evidence. Explicit
litai updatenow checks for and applies a newer stable release in an enrolled
prefix before continuing project reconciliation; opt-outs remain effective. -
Bind TEST dispatch to the exact worker, deadline, planned predecessors and
BUILD/result handoff before child execution, then re-admit returned evidence.
Configured receiver and scheduling integration remain pending. -
Add a supervised TEST child with current grant/deadline checks, cancellation,
bounded streams and descendant cleanup, sharing BUILD's process supervision.
Configured receiver dispatch and production TEST scheduling remain pending. -
Import worker TEST results through explicit verified return transport, retaining
evidence before registration and refusing corrupted records or changed worker
authority. Production TEST dispatch remains pending. -
Add a worker TEST operation over verified transferred source and BUILD artifacts,
returning bounded evidence tied to the exact handoff. Supervised command/SSH
dispatch and production queue integration remain pending. -
Add controller admission for transferred generated-test evidence, checking exact
suite, build and entrypoint authority before registration. Worker TEST execution
and production dispatch remain pending. -
Remote tool discovery verifies authored command names against a worker's private
search environment and rechecks them before reuse. Changed resolution, including
a newly shadowing executable, is refused without running the supplied command. -
Make locked-command BUILD export and provider checks reusable from portable
records, preserving local refusal before command execution. Remote BUILD
execution and artifact transfer remain pending. -
Standard rebuild dispatches AUTHORIZE through the shared admitted worker pool,
captures controller time after reserving capacity, and rechecks returned grants
against current SDK custody and expiry without local retry or grant renewal. -
Add bounded command-worker AUTHORIZE execution using the controller-selected
issuance time and fixed constrained policy. Changed index custody, future/expired
grants and payload substitutions are refused; production queue wiring is pending. -
Report hardware probe error codes when no candidate can be observed, preserving
healthy-worker admission and excluding raw exception messages from the refusal. -
Construct Standard authorization from explicit intent, index and controller time,
preserving the existing grant policy while retaining local SDK admission and
evidence recording. AUTHORIZE transport remains pending. -
Retain remote PLAN result evidence before registering local plan or SDK authority;
an evidence-store failure leaves registration unchanged and frees worker capacity. -
Command workers can construct build intent from an exact indexed-source handoff
and typed provider acceptance records, checking the canonical DAG and bounded
predecessor custody. Standard rebuild now dispatches BUILD_INTENT through the
shared INDEX/PLAN worker slots, retaining results before local admission and
refusing missing provider acceptance evidence without local retry. -
Build-intent admission rechecks current inputs and registers provider bindings
only after library validation and required evidence recording succeed. Rejected
intents no longer leave partially registered provider state. -
Standard rebuild can finalize plans through admitted command/SSH workers, sharing
capacity with source indexing and independently verifying returned plans before
local registration. Native Linux and Windows PLAN receiver and SSH checks pass;
remaining lifecycle phases and release qualification stay open. -
Construct build intent from exact portable source, command, dependency and SDK
inputs, rejecting mismatched candidate and generation-plan bindings. Local source
admission, live SDK checks and library-import custody remain enforced. -
Test qualification: preserve the long coordinator-path regression on native
Windows by creating its fixture through the existing native filesystem boundary.
Real SSH PLAN checks now confirm exact results and authorization refusals on
Linux and Windows without executing a build. -
Add opt-in local worker provisioning through an organization-owned command, with
credential bindings, help discovery, bounded request/response validation, durable
duplicate-allocation protection, and registration recovery. Static worker CRUD
and SSH tests remain independent of provisioning. -
Windows action dispatch preserves case-insensitive runtime environment names.
Capability probes allow up to 60 seconds for native identity checks and startup,
while retaining any shorter action deadline and the existing environment allowlist. -
Framework core: local builds no longer wait for packaging-only providers or bind
their artifacts into compilation. Final packages still require accepted providers;
provider failure prevents publication. -
Framework core: artifact graphs retain explicit runtime and packaging dependencies
with locked-edge and provider-acceptance evidence, preserving compiled artifact
identities while validating exact package closure. -
Framework core: execution evidence records exact provider artifacts; lifecycle
admission and independent evidence reopening reject omitted or substituted inputs. -
Framework core: toolchain dependencies now bind accepted provider exports into
consumer build intent, build actions, worker imports, process bindings, and
resulting artifact provenance. -
Framework core: consumers of locked public interfaces can build while providers
are still running. Artifact consumers retain acceptance barriers, and any failed
component still prevents project acceptance and publication. -
Framework core: private action workers can configure an SSH receiver for capability
probes and source indexing, using bounded stdin and exact worker/receiver checks. -
Framework core: action plans now bind accepted build/toolchain inputs before build
intent and authorization, while p...