Releases: phenomenoner/ai-agent-thinkroom
Release list
Thinkroom v0.2.7
Thinkroom 0.2.7 fixes provider deadline handling and preserves useful partial research.
- Failover enforces the complete route timeout, drains cancellation before fallback, and rejects late timeout results.
- Same-route retries are skipped when their delay and configured primary/fallback timeouts cannot fit the remaining deadline.
- Available branches can reach critique and synthesis after soft admission closes. Missing branches remain explicitly partial, even when synthesis is available.
- A separate diagnostics endpoint and SDK method expose unstarted admissions without changing legacy detail schemas.
Validation: Ubuntu 24.04 / Python 3.12 CI passed 362 tests, locked build, installed-package verification, and native-process restart/lock smoke. The selected release wheel also passed local POSIX hash-locked dependency, package, and process verification. CI reported one asynchronous subprocess transport cleanup warning; it did not fail the tests. These checks establish integration behavior, not research quality or a completion-rate guarantee.
The SQLite schema and managed Skills bundle retain their v0.2.6 identities. Native production support remains single-instance POSIX; Docker is an operator-owned reference integration.
Verify SHA256SUMS, install requirements-production.txt with --require-hashes, then install the wheel with --no-deps. Use the accompanying uv.lock and flat verify_locked_runtime.py to attest the installed runtime.
Thinkroom v0.2.6
Thinkroom v0.2.6
This release makes Prime RPC transport accounting resilient to cumulative telemetry amplification while keeping hard resource ceilings and the existing provider-failover policy intact.
What changed
- Separates exact raw-wire observation from an amplification-aware accounted transport budget.
- Discounts only the repeated
message_update.messageandassistantMessageEvent.partialpayloads; unknown and control fields remain charged, every event has a minimum cost, and projection depth is bounded. - Keeps a 64 MB per-line ceiling, a 64 MB accounted ceiling, and a 512 MB absolute raw ceiling.
- Preserves transport metrics when otherwise valid backend results fail response-schema validation.
- Makes the v0.2.4 to v0.2.6 SQLite migration chain and final schema attestation atomic.
- Recognizes the exact released v0.2.5 managed-Skills receipt so production Skills can migrate directly to v0.2.6 while unknown or modified receipts still fail closed.
- Aligns English and Traditional-Chinese guidance for the legacy and Prime 0.8.1 lifecycle custody paths.
Verification
- All required clean-export gates passed on commit
e65c05b311ad1b46e3d641977eff4583decbeecb, including 352 tests. - A locked candidate runtime passed package, native-process, and 44-distribution manifest verification.
- The installed candidate read the production v0.2.5 Skills receipt without mutation and classified three Skills as
UPDATEand their three agent descriptors asEXACT. - One isolated Terra/high three-branch run on the released transport implementation completed all three branches. Two provider calls transported more than the previous 64 MB raw threshold while remaining below the new accounted ceiling, and neither ended with
OUTPUT_LIMIT_EXCEEDED.
The isolated provider run finished succeeded/partial: the 900-second soft deadline did not admit critique or synthesis. Two rollout attempts initially returned malformed provider output and required the existing route-preserving schema repair. This validates the transport repair and branch path; it does not claim complete synthesis, provider-wide reliability, or research correctness.
Installation
Verify SHA256SUMS, install the hash-locked dependencies from requirements-production.txt, then install the wheel with --no-deps. See docs/OPERATIONS.md for the native production procedure and rollback boundary.
v0.2.5
Thinkroom v0.2.5
This release makes long provider-backed research bounded and observable while
preserving Thinkroom's fail-closed evidence contract.
Highlights
- Adds separate soft and hard job deadlines, bounded per-route timeouts, and a
shared three-call budget for transient retry, configured fallback, and
producer-affine schema repair. - Adds an attempt-local primary circuit reconstructed from durable provider-call
evidence. Timeouts, repeated fast failures, and primary raw-transport
amplification prevent new primary calls in the same attempt. - Allows one configured fallback after a primary raw-transport limit without
retrying the amplified route. Semantic, final-result, process-envelope, and
fallback output limits remain terminal. - Records content-free Prime RPC byte/event counters on successful and failed
calls without retaining prompts, responses, provider errors, or event payloads. - Adds snapshot-labelled progress substates for active, queued, slow, degraded,
stalled, and presumed-dead work. - Preserves typed partial evidence when a soft deadline prevents remaining work
from starting. - Adds an opt-in rollout concurrency canary of two while retaining the production
default of one active provider call. - Migrates the exact canonical v0.2.4 SQLite schema in place and rejects unknown
or intermediate database shapes before mutation.
Verification
- Locked dependency, format, lint, and static type gates passed.
- 337 tests passed on Ubuntu 24.04.
- The release wheel passed a fresh Python 3.12 hash-locked install, runtime-lock
verification, package verification, restart persistence, and exclusive-process
lock smoke tests.
See docs/provider-resilience-v0.2.5.md and docs/OPERATIONS.md for the complete
runtime contract and rollout guidance.
Thinkroom v0.2.4
Thinkroom v0.2.4
This maintenance release makes Prime Agent output-limit handling more robust without weakening any
transport, event, control, final-text, process-envelope, or validated-response bound.
Fixed
- Prime RPC
message_updatetelemetry now has its own bounded event budget and no longer consumes
the lower semantic-event budget used by research output. Unknown RPC event types remain charged to
the semantic budget and therefore fail closed. - Output-limit failures retain the stable public
OUTPUT_LIMIT_EXCEEDEDcode and a bounded audit
subtype across provider, process-isolation, engine-normalization, and failover audit seams. - Output-limit failures during initial fork generation or its one schema-repair attempt now use the
existing deterministic fork fallback. The run can continue to critique and synthesis without an
extra provider retry; other provider and timeout failures retain their previous behavior. - Managed Skills can migrate directly from the exact six-file v0.2.3 receipt to v0.2.4. Modified
payloads and unknown, malformed, duplicate, or foreign receipt authorities still fail closed
before mutation.
Verification
- All required lock, formatting, lint, type, and repository gates passed; the full suite contains
309 passing tests. - The preserved wheel was installed after 43 hash-locked dependencies with
--no-deps, then passed
locked-runtime, six-payload package, restart-readback, and exclusive-lock process checks.
The deterministic backend and fallback prove orchestration and containment, not research quality.
SQLite release support remains single-instance only.
Full changelog: v0.2.3...v0.2.4
Thinkroom v0.2.3
Thinkroom v0.2.3
Thinkroom v0.2.3 fixes direct upgrades of the receipt-managed Agent Skills bundle.
The installer now recognizes the exact six-file receipts produced by v0.2.1 and v0.2.2. A
managed installation can therefore upgrade in place without an uninstall/reinstall bridge. Only
the recorded historical manifest and payload digests are accepted; unknown receipts and modified
payloads continue to fail closed before any target mutation.
This release also synchronizes the package, API, lockfile, bundled-skill manifest, bilingual
installation examples, and release builder at version 0.2.3.
Verification on the release candidate included the locked dependency sync, Ruff formatting and
linting, mypy, 288 repository tests, a clean external-directory wheel and sdist build, checksum
verification of all downloadable payloads, and fresh Python 3.12 package/process smoke tests.
This maintenance release does not change provider research semantics or claim to resolve the
separate response-output-limit behavior observed on a large three-branch workload.
Thinkroom v0.2.2
Thinkroom v0.2.2
This hotfix restores real Prime Agent 0.8.1 RLM research compatibility without weakening Thinkroom's fail-closed custody checks.
Fixed
- Accept Prime Agent 0.8.1
rlm_child_updatelifecycle snapshots when the RPC aggregate transcript does not repeat a custom child message. - Require an eventual
repliedSinceTask: trueand completed state for the exact admitted child before accepting cleanup or terminal phase output; an early snapshot may omit the optional flag. - Bind the admission handle, streamed snapshot, current registry child, delete receipt, and cleanup marker to one child ID, rejecting same-name replacement and receipt mismatch.
- Preserve the legacy custom child-message path and reject ambiguous aggregate terminals as
MALFORMED_PROVIDER_OUTPUT.
Verification
- Locked dependency synchronization, Ruff format/lint, and mypy passed from a clean Linux checkout.
- 22 release-builder tests, 35 Prime backend/cleanup tests, and the full 285-test suite passed.
- The release wheel was installed after hash-locked dependencies with
--no-deps; package payload, lock manifest, restart readback, and exclusive-process-lock checks passed in a fresh POSIX runtime.
Boundaries
- This release does not claim a provider-side atomic compare-and-delete primitive or semantic access to private child text.
- SQLite remains single-instance, defaults remain loopback-only, and Prime Agent's IPython/RLM execution remains trusted infrastructure rather than a sandbox.
Thinkroom v0.2.1
Thinkroom v0.2.1 combines the source changes that followed v0.2.0 with three reviewed pull requests and review-driven behavioral and documentation fixes.
Highlights:
- Adds Codex App and Hermes Agent installation profiles over one receipt-owned Agent Skills bundle, including Codex metadata and installed
thinkroom verify package|processchecks. - Adds one explicitly configured sequential Prime Agent fallback for availability failures while preserving per-call audit evidence, cancellation and deadline boundaries, attempt policy identity, and fail-closed interrupted-call recovery.
- Deletes the completed named Prime/RLM child only after matching custody evidence, verifies the exact cleanup call and marker, seals the session against later tool or child activity, and requires exactly one matching aggregate child plus exactly one matching post-cleanup aggregate terminal before admitting phase JSON.
- Separates terminal-result byte accounting from high-volume historical transcript projection while retaining the independent 64 MB raw transport cap, per-event cap, and 20,000-record ceiling.
- Limits deterministic fork projection to the bounded repair path after schema-invalid provider output; initial provider overflow remains fatal.
- Publishes exact MCP admission bounds and domain values, improves operation-skill preflight guidance, and recognizes the exact LF or CRLF form of the historical managed-skill receipt.
Release verification:
- Pinned uv 0.12.3 lock and sync checks.
- Ruff format/check and mypy over source and scripts.
- 273 passing tests on the exact release candidate.
- Deterministic external-directory wheel and source build.
- Hash-locked production dependency installation, wheel installation with
--no-deps, 44-distribution lock-manifest readback, six managed-payload verification, exclusive process lock, and restart readback.
Security and claim boundary: Prime Agent IPython/RLM execution is trusted provider infrastructure, not a sandbox. Child deletion cannot erase transcript, artifact, or RPC bytes already produced, and this release does not claim a producer-side transport-volume fix. A scripted backend proves orchestration rather than model quality; provider integration evidence does not prove research correctness. SQLite release support remains single-instance only.
The release assets include the wheel, source distribution, production requirements lock, complete uv lock, flat locked-runtime verifier, and SHA-256 manifest.
Thinkroom v0.2.0
Thinkroom v0.2.0 adds native Prime Agent RLM execution while keeping Thinkroom in charge of research phases, persistence, cancellation, and typed result validation.
Highlights:
- Runs Prime Agent through invocation-local JSONL RPC with the built-in IPython/RLM path.
- Requests one named RLM child per phase and accepts phase JSON only after matching child-message evidence and a later terminal assistant result.
- Keeps Prime Agent OAuth credentials in Prime Agent; Thinkroom receives only executable and routing settings.
- Bounds RPC framing, retained output, time, cancellation, temporary state, and production process-group settlement.
- Documents conservative single-concurrency rollout settings and the trusted-execution boundary in English and Traditional Chinese.
- Updates the bundled operation skill with strict MCP request values, one bounded correction after
INVALID_ARGUMENT, and supervisor-owned waits for asynchronous jobs. - Relicenses the project and bundled Agent Skills under the MIT License.
Security boundary: Prime Agent's IPython/RLM execution is not a sandbox. The Prime Agent executable, installed skills, provider account, and service host remain trusted infrastructure. The native process contract owns same-group descendants; backends that deliberately escape that group require separately owned containment.
The release assets include the wheel, source distribution, production requirements lock, complete uv lock, locked-runtime verifier, and SHA-256 manifest.
Thinkroom v0.1.0
Thinkroom v0.1.0
Thinkroom is a single-node AI research service that frames a question, forks isolated perspectives, performs independent rollouts, delays critique until branches finish, and synthesizes traceable evidence.
Release highlights
- Durable FRAME → FORK → ROLLOUT → delayed CRITIQUE → SYNTHESIZE lifecycle.
- REST API, Web UI, CLI, Python SDK, MCP interface, and bundled Agent Skills.
- Scripted, OpenAI-compatible, and local Prime Agent backends.
- Native POSIX/WSL package and process deployment with restart recovery, cancellation, bounded resources, typed errors, and loopback-only no-auth defaults.
- Deterministic wheel/sdist builder and hash-locked production dependency closure.
Production installation
Download the wheel, requirements-production.txt, uv.lock, and verify_locked_runtime.py from this release. Install hash-locked dependencies first, install the wheel with --no-deps, then run the verifier as documented in the README.
Boundary
Docker files are operator-owned reference material and are not part of the v0.1 native release claim. Thinkroom v0.1 has no authentication, RBAC, multi-tenancy, or public-ingress protection. Bind only to a literal loopback IP; wider access requires a separately secured authenticated reverse proxy.
This repository is source-available, not open source. Official unmodified copies may be used in production under the included license; modification, redistribution/rehosting, sublicensing, sale, or hosted-service use requires prior written permission.