# A2CR 0.1.7 Local-Only Release Record

Status: published; release-candidate record retained
Date: 2026-06-25
Repository scope: `public-release/`
Tag: `v0.1.7`

This note fixes the intended scope for the A2CR `0.1.7` local-only release
candidate. It is public-safe and contains no reviewer credentials, API keys,
local database files, local encryption keys, WorkBaton bodies, WorkStash values,
or private operational notes.

Published status: `v0.1.7` was published on 2026-06-25 to PyPI, GitHub
Releases, and the official MCP Registry. This file is retained as the
release-candidate scope and verification record. Current distribution status
lives in `docs/distribution-registration-inventory.md`.

## Candidate Decision

`0.1.7` was the release candidate for the local-only public A2CR line.

The public release should present A2CR as a local MCP workspace:

- no A2CR account required;
- no API key required;
- no hosted base URL required;
- no SaaS dashboard required;
- no remote MCP connector required for normal public setup;
- WorkBaton, WorkStash, WorkThreads, actors, and events stored in the user's
  local A2CR workspace;
- browser dashboard opened through the Python CLI with `a2cr ui`;
- GitHub Release `.mcpb` asset used for the Claude Desktop Extension path until
  Anthropic Directory approval.

The legacy hosted/SaaS path is not part of the `0.1.7` public setup story.

## Included Public Surfaces

| Surface | Included in `0.1.7` RC | Notes |
|---|---:|---|
| Python package `a2cr-mcp` | Yes | Local stdio wrapper for Codex, Claude Code, Cursor, and generic MCP clients. |
| `a2cr` CLI | Yes | Local setup, diagnostics, search, status, and browser UI. |
| `a2cr-local-mcp` | Yes | Preferred local MCP command. |
| `a2cr-mcp` | Yes | Compatibility command for existing MCP configs. |
| Browser UI | Yes | `a2cr ui`, loopback-only by default with a tokenized local URL. |
| WorkBaton | Yes | Save, load, resume, list, search, and delete through the Python local wrapper. |
| WorkStash | Yes | Store, get, list, search, and delete through the Python local wrapper. |
| WorkThreads | Yes | Local Python wrapper and browser dashboard support. |
| Claude Desktop MCPB | Yes | First MCPB exposes local WorkBaton and WorkStash tools only. |
| Hosted/SaaS setup | No | Retired from the public setup path. |
| Remote Claude/OpenAI connector | No | Blocked until a separate remote security boundary is approved. |

## Published Release Artifacts

These artifacts were published for `0.1.7`:

- PyPI: `a2cr-mcp==0.1.7`
- Python wheel: `a2cr_mcp-0.1.7-py3-none-any.whl`
- Python sdist: `a2cr_mcp-0.1.7.tar.gz`
- Git tag: `v0.1.7`
- GitHub Release asset: `a2cr-0.1.7.mcpb`
- GitHub Release checksum asset: `SHA256SUMS.txt`
- MCP Registry metadata: `server.json` with version `0.1.7`

Do not publish the Node MCPB package to npm for this release. The MCPB is a
Claude Desktop Extension artifact, not a separate end-user npm distribution.

## Current Local Verification

Latest local RC verification was run on 2026-06-25 from this `public-release`
checkout.

| Gate | Result |
|---|---|
| `python -m pytest tests/local_workspace tests/test_mcp_stdio.py tests/test_public_repository.py tests/test_spec_documents.py -q` | Passed: 82 tests. |
| `npm test` in `packages/claude-extension` | Passed: 28 tests. |
| `npm run typecheck` in `packages/claude-extension` | Passed. |
| `npm run mcpb:validate` in `packages/claude-extension` | Passed with icon-size recommendation only. |
| `npm run mcpb:pack` in `packages/claude-extension` | Passed and produced `a2cr-0.1.7.mcpb`. |
| `python -m build` | Passed and produced wheel and sdist. Setuptools license deprecation and missing-prune warning messages remain metadata cleanup, not build failures. |
| `a2cr doctor --target local` | Passed with `ready: true`, `storage_mode: local`, and Codex local MCP config ready as `a2cr-local`. |
| Hosted/account-limit wording audit | Passed: no remaining matches for old Hosted A2CR account-limit phrases in public docs, MCP descriptions, package docs, or tests. |
| Clean wheel smoke in a temporary venv | Passed: `a2cr`, `a2cr-local-mcp`, and `a2cr-mcp` installed; `a2cr-cloud-mcp` absent; `a2cr doctor --target local` reported `ready: true`; `a2cr init codex --cloud` exited `2`; local save/load, WorkStash store/get, search, and WorkThread create passed. |

Do not embed final artifact checksums in this source note. Generate
`SHA256SUMS.txt` from the final release job and attach it with the GitHub
Release assets. This avoids stale source documentation when package archives
are regenerated during release verification.

## Release Notes Draft

Title:

```text
A2CR 0.1.7 - Local-Only Workspace
```

Body:

```text
This release moves the public A2CR distribution to a local-only workspace model.

Highlights:
- no A2CR account, API key, hosted URL, SaaS dashboard, or cloud sync required
  for normal public setup;
- `a2cr`, `a2cr-local-mcp`, and compatibility `a2cr-mcp` commands are aligned;
- local WorkBaton, WorkStash, WorkThreads, search, diagnostics, and browser UI
  are included in the Python package;
- `a2cr ui` opens a loopback-only, token-protected browser dashboard and prints
  a copy-pasteable `A2CR_UI_URL` fallback when browser auto-open is unavailable;
- Claude Desktop MCPB packaging is prepared as a GitHub Release asset for the
  local WorkBaton and WorkStash tool surface.

Install:

python -m pip install --upgrade a2cr-mcp
a2cr init codex --local
a2cr doctor --target local

Open the local dashboard:

a2cr ui

If the browser does not appear, copy the printed `A2CR_UI_URL` into a browser on
the same computer. Keep `?token=...` in the URL.

Claude Desktop users can manually install `a2cr-0.1.7.mcpb` from this GitHub
Release until Anthropic Directory approval.
```

## Publish Gates

Before tagging or publishing, rerun these gates from a clean checkout state:

```powershell
python -m pytest tests/local_workspace tests/test_mcp_stdio.py tests/test_public_repository.py tests/test_spec_documents.py -q
python -m build
```

From `packages/claude-extension`:

```powershell
npm test
npm run typecheck
npm run mcpb:validate
npm run mcpb:pack
```

Then smoke install the built wheel in a fresh virtual environment and confirm:

- `a2cr --help` works;
- `a2cr doctor --target local` reports `ready: true`;
- `a2cr init codex --local --dry-run` works;
- `a2cr-local-mcp` starts as a stdio MCP server;
- `a2cr-cloud-mcp` is not installed;
- legacy cloud flags do not re-enable hosted behavior.

## Published Outcome And Follow-Ups

1. `a2cr-mcp==0.1.7` is published to PyPI.
2. Git tag and GitHub Release `v0.1.7` are published.
3. GitHub Release assets include `a2cr-0.1.7.mcpb` and `SHA256SUMS.txt`.
4. Official MCP Registry metadata for `0.1.7` is published and latest.
5. Anthropic Directory approval is not claimed; the GitHub Release asset is the
   manual Claude Desktop install path until a separate approval exists.
6. Downstream MCP directories may still show cached `0.1.6`, hosted-service,
   API-key, or old license text; track those in
   `docs/distribution-registration-inventory.md`.
