Skip to content

Aionis v0.3.11 Docker Lifecycle Recovery Candidate

Pre-release
Pre-release

Choose a tag to compare

@ostinatocc ostinatocc released this 20 Jul 07:37

Aionis v0.3.11 Docker Lifecycle Recovery Candidate

These notes describe the Aionis Runtime v0.3.11 patch candidate for the
self-hosted Local Runtime Public Beta. Candidate status alone does not create
or validate release artifacts; publication is complete only after the immutable
tag, exact-digest image gates, and verified GitHub prerelease all succeed.

The patch corrects the Docker lifecycle boundary found after v0.3.10. The
v0.3.10 image starts through npm, so Runtime Node is not PID 1 and Docker
SIGTERM does not reliably execute the awaited shutdown drain. v0.3.11 starts
through the existing checked startup script and makes Node PID 1 with its final
exec.

What Changes

  • Docker SIGTERM reaches Runtime's signal handler directly.
  • Successful Docker stop must produce the Runtime drain log and exit code 0.
  • The release workflow must recover memory and exact operation receipts in a
    fresh container after both graceful stop and SIGKILL using the same named
    /data volume.
  • The recovery gate also requires operation-conflict rejection, healthy
    projection and learning workers, protected SQLite modes, and offline database
    verification.
  • Image promotion occurs only after the basic and recovery smokes pass against
    the exact immutable digest built by the workflow.

Frozen Coordinates

Artifact Version Source ref
GitHub Runtime source v0.3.11 Immutable tag created from verified origin/main.
Docker image ghcr.io/ostinatocc/aionis:v0.3.11 Promoted linux/amd64 digest after both image gates.
Default installer Runtime ref v0.3.6 Frozen installer default.
aionis 0.3.8 v0.3.8
@aionis/create 0.3.8 v0.3.8
@aionis/sdk 0.3.19 v0.3.19
@aionis/manifest 0.1.1 v0.1.1
@aionis/mcp 0.3.7 v0.3.7
@aionis/aifs 0.3.4 v0.3.4
@aionis/claude-code 0.3.5 v0.3.5
@aionis/substrate 0.1.11 v0.1.11

No external npm package is republished by this Runtime patch. The route surface,
schema v6, learning posture, and installer default remain unchanged.

Compatibility And Limits

  • Runtime v0.3.10 remains immutable; its annotated tag and published digest
    must not be moved, deleted, or recreated.
  • The supported deployment remains one self-hosted Runtime process with SQLite
    authority. Multi-instance HA and managed multi-tenancy remain out of scope.
  • The image remains linux/amd64 only.
  • Global admission-candidate serving remains off; this patch does not broaden
    autonomous-learning claims.
  • Existing schema-v6 data remains compatible. Back up authority data before an
    upgrade and restore a backup rather than opening adopted data with an older
    Runtime.

Promotion Condition

The local engineering smoke is a checkpoint, not release evidence. Before
tagging, the settled candidate commit must pass full Runtime CI, exact external
package and Manifest checks, and the protected DashScope embedding smoke on
origin/main.

The protected provider gate is
.github/workflows/exact-main-embedding-smoke.yml. It is manual-only, has
read-only repository permissions, binds to the main-only
exact-main-embedding environment, and fails unless its requested SHA equals
both the dispatch commit and current origin/main. It accepts a candidate or
stable release train and gives every dispatch a random-nonce evidence ID; a
stable commit must produce its own same-SHA run. Using the frozen SDK, MCP, and
installer commits, it must prove available-mode SDK and MCP semantic recall
with qwen3.7-text-embedding, persisted model
dashscope:qwen3.7-text-embedding, and 1,536-dimensional queries. The
DASHSCOPE_API_KEY secret must be rotated and stored only in that environment;
it must not be committed, logged, or uploaded as an artifact. The workflow also
requires the immutable Runtime tag to remain absent through the final provider
check.

Only then may an annotated v0.3.11 tag be created from that verified commit.
The tag-triggered workflow first queries GitHub Actions and rejects the release
unless that exact commit has successful protected embedding evidence. It then
builds one image digest, runs the basic smoke and cross-process recovery smoke,
and promotes only that tested digest. A separate digest check completes before
the verified GitHub prerelease is created.