Skip to content

ContextOS 0.1.0-alpha.14

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Nov 09:50
· 160 commits to main since this release
Immutable release. Only release title and notes can be modified.
8cab289

ContextOS 0.1.0-alpha.14

The fourteenth alpha of ContextOS. It is about authoring and operating Context Packs:
testing a pack before release, seeing what it lets a principal do, building it from
shared rules, publishing new versions while the server runs, and delivering the audit
chain to a SIEM.

What changed since 0.1.0-alpha.13

Authoring packs

  • ctx test runs pack test suites offline through admission's own compiler and policy
    composition: a base case, a JSON merge patch per test, and the expected verdict,
    rules, obligations, capabilities and evidence gates. It exits 1 on any failure and
    can write JUnit XML.
  • ctx plan and POST /v1/plan (compile scope) report what a pack lets one
    principal do for an intent before any request exists. Each rule applies always, or
    when or unless a residual condition over request.* holds. The residuals come from
    an exact partial evaluator (contextos_policy::partial_apply).
  • ctx build assembles a pack from a pack source: a base, a JSON merge patch and
    imports of rule libraries, each optionally limited to some bundles, given a priority
    or scoped to one intent. --check fails when a committed pack no longer matches its
    sources.
  • ctx inspect summarises a pack for review and lists problems such as names that do
    not resolve; ctx repl tries a pack on one case interactively.
  • skills/contextos-pack-authoring is an agent skill for writing and changing packs,
    with scripts/check_pack.sh.

Running packs

  • POST /v1/runs/{run_id}/tool-calls/check (dispatch scope) governs a tool call as
    dispatch would and stops before anything is redeemed, reserved, claimed or sent. One
    tool_call_check audit entry records each check. Clients: check_tool_call /
    checkToolCall.
  • pack_dirs, pack_reload_secs and POST /v1/packs/reload (control scope) add
    pack versions while the server runs. A reload only adds: a removed file does not
    unload its version, and a pack for a tenant without a startup pack is refused.
  • A pack reference now names one content across restarts. The first load of a
    reference records pack_loaded and binds the reference to its digest in the store
    before the pack serves traffic. A later load with other content is refused on reload
    and stops the server at startup.
  • The Helm chart's packSync keeps a pack directory current from git (git-sync as an
    init container and a sidecar). deploy/README.md has the recipe.

Audit

  • [[audit_sinks]] delivers every tenant's audit chain to a SIEM or archive: in order,
    in HMAC-signed batches over HTTPS, at least once and never skipping an entry. Fields
    named by mask become keyed HMAC tokens, so equal values still correlate.
    ctx audit-verify checks a masked entry's spine and signature and reports its
    payload as unverified.

Also

  • llms.txt: an index of the docs, API, schemas, clients and examples for LLMs and
    agents.
  • ctx build reports a malformed library rule as a usage error instead of panicking;
    ctx plan caps the intent at 256 bytes, as POST /v1/plan does.
  • Dependency updates, including napi 3.16.1, jsonschema 0.60.2 and react-router 8.5.1.

The changelog
lists every change.

Upgrading from 0.1.0-alpha.13

  • Packs are bound to their digest on first start. The first start of alpha.14
    records one pack_loaded entry per loaded pack in its tenant's audit chain and binds
    each reference to its content. From then on, a start whose pack file has other
    content under the same reference fails with context pack <ref>: the reference is bound to sha256:…; publish changes as a new version. If you edit packs in place,
    change pack_meta.pack_version with every edit. Bindings outlast a restart only
    with the postgres store.
  • Webhook cursors move. Escalation webhook cursors are stored under a new document
    kind. A cursor kept by alpha.13 is carried over the first time it is used, so no
    escalation event is skipped or sent again. No action is needed.
  • No API or storage format is removed or changed incompatibly.

Downloads

Platform Archive Checksum
Linux x86-64, glibc 2.28+ (tested on AlmaLinux 8 and Ubuntu 24.04) Download SHA-256
Linux ARM64, glibc 2.28+ (tested on AlmaLinux 8 and Ubuntu 24.04) Download SHA-256
macOS Apple Silicon Download SHA-256

Archives need Python 3.9+, Bash and curl. Verify an archive's checksum and provenance
as in the alpha.12 notes,
with v0.1.0-alpha.14 as the tag. The container image is
ghcr.io/contextosai/contextosd:0.1.0-alpha.14, signed and with build provenance.
The clients are pip install --pre contextos-client and npm install contextos-client.

The alpha limits in the alpha.12 notes apply unchanged. There is no support SLA.
Report vulnerabilities privately to security@contextosai.com.

Code is Apache-2.0; prose is CC BY 4.0.