Skip to content

open-compute 0.1.6

Latest

Choose a tag to compare

@github-actions github-actions released this 12 Sep 08:10
· 11 commits to main since this release
Immutable release. Only release title and notes can be modified.
041a4af

0.1.6 makes R2-backed AI Search indexing controllable and predictable for operators. Scheduled synchronization can now be paused without disabling queries or explicit indexing, and individual R2 keys can be indexed immediately through the Cloudflare-compatible item API.

This release is intended for single-machine operators using the AI Search functionality introduced in 0.1.5, especially installations that need controlled R2 ingestion or item-level indexing.

What's new

  • AI Search instance configuration now persists paused. A paused instance rejects scheduled reconciliation claims while still allowing initial setup, manual jobs, individual item synchronization, upload processing, and queries.
  • PUT /items can discover and index an exact R2 key that has not appeared in a prior bucket scan. wait_for_completion: true waits for at most 40 seconds; work continues from durable state if that bounded wait expires.
  • R2 keys without filename extensions can be indexed when the stored object has a recognized Content-Type. Admission performs HEAD before format selection and rejects missing, malformed, generic binary, or unsupported MIME metadata.
  • Item listing accepts indexed metadata filters and r2:<bucket> source identities. Status and modification-time sorting now run before pagination with deterministic tie-breaking.
  • Item deletion returns the Cloudflare-compatible { key } payload while the Worker binding continues to expose a void deletion method.

Fixed

  • Pausing an R2-backed instance no longer allows an already queued scheduled reconciliation to bypass the pause boundary after restart or maintenance.
  • Explicit item and manual jobs no longer depend on scheduled synchronization being enabled.
  • R2 source IDs, metadata filtering, list ordering, completion waits, and delete responses now use one authoritative implementation across the v4 API and Worker binding.
  • GitHub Release notes no longer repeat the release name as a second level-one heading. The workflow now rejects release bodies containing any level-one heading.
  • The hosted conformance runner is split by resource ownership, provisioning, cleanup, run context, and fixture execution without adding a second entry point or changing its fail-closed cleanup contract.

Before you upgrade

  • AI Search instance configuration created by 0.1.5 is intentionally incompatible with the 0.1.6 Day1 model because it does not contain the required persisted paused field. Delete and recreate those AI Search instances after upgrading. The platform fails closed instead of guessing a value or retaining a compatibility reader.
  • Recreating an R2-backed AI Search instance does not delete or copy its source bucket objects. Derived AI Search indexes and instance-owned state are rebuilt from the selected source.
  • Existing Workers, KV, R2, D1, Durable Objects, Queues, Workflows, Artifacts repositories, secrets, routes, and platform database migrations are unchanged by this release.
  • No configuration rewrite or manual database migration is required outside the explicit AI Search instance recreation above.

After replacement and AI Search recreation, verify the installation with:

ocd --version
ocd config check
ocd doctor
ocd target list

Install or upgrade

An existing receipt-managed installation can upgrade directly:

ocd upgrade 0.1.6

For a new system-wide installation, download and review the installer before elevating it:

curl -fsSL -o install.sh https://raw.githubusercontent.com/elliothux/open-compute/v0.1.6/scripts/install.sh
less install.sh
sudo env OPEN_COMPUTE_RELEASE_TAG=v0.1.6 sh install.sh
sudo /usr/local/bin/ocd setup --yes

For a user-owned project installation without a system service, use OPEN_COMPUTE_INSTALL_PREFIX="$HOME/.local" sh install.sh instead. The binary and receipt remain under that one prefix.

Downloads

Host Asset
macOS on Apple silicon ocd-v0.1.6-darwin-arm64
Linux on ARM64 ocd-v0.1.6-linux-arm64
Linux on x86-64 ocd-v0.1.6-linux-x64

The release also contains release.json and SHA256SUMS. Every executable embeds the formally pinned v1.20260905.0-open-compute-p1.b3e1a278 runtime (workerd 2026-09-05) and the Pyodide 314.0.6_2026-08-17_2 bundle selected by compatibility date 2026-09-08. Production startup remains offline. Windows and Intel macOS do not have qualified binaries.

Security

There are no published security advisories specific to 0.1.6. Pause state and explicit job admission are enforced by persisted authority rather than process memory. R2 indexing validates object identity and MIME metadata before parsing, keeps source bytes in their existing object authority, and returns sanitized errors without exposing credentials, signed requests, document contents, internal paths, or runtime topology.

Known limitations

  • AI Search remains a bounded single-machine implementation and does not claim Cloudflare's hosted placement, fleet coordination, global indexing throughput, billing, connectors, or AutoRAG.
  • The dedicated Cloudflare-hosted differential for a previously undiscovered extensionless R2 key on a paused instance is checked in but has not run because it requires an explicitly authorized temporary Cloudflare namespace and bucket.
  • macOS Developer ID signing and Apple notarization are planned but are not enabled for this release. Windows and Intel macOS remain source-build-only targets.

Verification

The frozen 0.1.6 candidate is qualified with the repository build, formatting and static checks, Rust 1.98 checks, dependency-boundary and source-policy checks, at least 90% Rust line coverage, and one complete workspace Gate against the formally pinned workerd. The real-runtime AI Search matrix covers persisted pause state, scheduled fencing, explicit jobs, extensionless R2 MIME admission, item filtering and sorting, immediate retrieval, deletion, restart behavior, and preservation of source objects. The tag-triggered release workflow independently runs macOS and Linux qualification, packages all three supported targets, verifies checksums and isolated offline startup, and publishes only after every required job succeeds.

Full changelog · R2 AI Search source