Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Changelog

All notable changes are recorded here. Benchwork remains a prerelease and uses
versioned schemas plus explicit migration notes for compatibility.

## 0.3.0rc1 — The Instrumentarium Seal

- Froze the Phase 2 host-native Plugin and MCP architecture.
- Packaged seven Codex Skills, trusted guardrail hooks, and the STDIO MCP
connection.
- Published and registered 38 typed scientific-control-plane tools.
- Added immutable preview/commit scientific Seals and Host Session provenance.
- Added Review Request and Review Artifact provenance with an explicit
external disclosure gate.
- Formalized Kernel, CLI, and IDE Host acceptance tiers and accepted
environment/authorization exception states.
- Added the deterministic Phase 2 golden `REPAIR` scenario.

See [release notes](docs/en/releases/0.3.0rc1.md) and
[migration guide](docs/en/migrations/0.3.0rc1.md).

## 0.2.0rc1 — The Seal

- Completed the Phase 1 deterministic Kernel, Chronicle, Ward, Athanor,
Capability, replay, integrity, and release acceptance baseline.
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@ tools may propose work, but only the deterministic Athanor kernel can accept a
canonical transition. Accepted events are written to a local, append-only
Chronicle with chained SHA-256 Sigils and receipts.

> Project status: `0.3.0a1` prerelease. Phase 2 adds the Codex Plugin-first
> Instrumentarium while preserving host-neutral scientific contracts.
> Project status: `0.3.0rc1` release candidate. Phase 2 freezes the Codex
> Plugin-first Instrumentarium while preserving host-neutral scientific
> contracts.

## Why Benchwork

Expand Down
4 changes: 2 additions & 2 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ Benchwork 将科研活动转化为明确、可审查的状态。智能体和工
提案,但只有确定性的 Athanor 内核能够接受规范状态迁移。获准事件写入本地
追加式 Chronicle,并通过链式 SHA-256 Sigil 与 Receipt 留下记录。

> 项目状态:`0.2.0rc1` 公开候选版本。M10 第一阶段验收已实现;稳定命名仍为
> provisional。
> 项目状态:`0.3.0rc1` 候选版本。Phase 2 已冻结 Codex Plugin-first
> Instrumentarium,同时保留宿主中立的科研契约;稳定命名仍为 provisional。

## 为什么需要 Benchwork

Expand Down
2 changes: 2 additions & 0 deletions docs/en/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ English is the canonical source for all Benchwork documentation.
- [Phase 2 acceptance matrix](PHASE2_ACCEPTANCE.md)
- [Benchwork Codex plugin](plugins/benchwork.md)
- [Acceptance Exception Policy](plugins/acceptance-exception-policy.md)
- [0.3.0rc1 migration guide](migrations/0.3.0rc1.md)
- [0.3.0rc1 release notes](releases/0.3.0rc1.md)
- [0.2.0rc1 release notes](releases/0.2.0rc1.md)

Architecture notes describe implemented boundaries unless a page explicitly
Expand Down
50 changes: 50 additions & 0 deletions docs/en/migrations/0.3.0rc1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
---
language: en
canonical: true
---

# Migrating to 0.3.0rc1

This guide covers `0.3.0a1` to `0.3.0rc1`.

## Canonical state

No Chronicle migration is required. M17 freezes existing Phase 2 behavior and
does not rewrite `.benchwork/`. Always run Deep Doctor before and after an
application upgrade when canonical project state exists.

## Python runtime

Upgrade or reinstall the package, then verify:

```bash
python3 -c "import benchwork; print(benchwork.__version__)"
bwork doctor --deep
bwork mcp --help
```

The Python/PEP 440 version is `0.3.0rc1`.

## Codex plugin

The plugin/SemVer version is `0.3.0-rc.1`. Reinstall it from the same trusted
local marketplace and start a new conversation so Codex loads the updated
Skills, MCP metadata, and hooks. Review hook trust again if the Host asks.

Do not edit a marketplace file by hand during local iteration. Plugin
installation, upgrade, rollback, and removal must leave `.benchwork/`
unchanged.

## Contract changes

- The existing 38 MCP tool names are unchanged and are now frozen in
`mcp-tool-registry/1.0`.
- Each Skill retains its existing `SKILL.md` discovery contract and gains
versioned Benchwork `skill.yaml` metadata.
- `benchwork-plugin-api/1.0` records runtime and registry compatibility outside
the Codex-native manifest.
- Host and Review acceptance exceptions are now normative documented states.

No client should add or depend on universal `execute`, shell, file, Git, web,
or schema meta-tools. Standard MCP `tools/list` remains the discovery
mechanism.
2 changes: 1 addition & 1 deletion docs/en/plugins/benchwork.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Benchwork Codex plugin

Benchwork 0.3.0a1 is designed for an interactive Codex session. Install the
Benchwork 0.3.0rc1 is designed for an interactive Codex session. Install the
Python package first, then install the repository marketplace and enable the
`benchwork` plugin.

Expand Down
65 changes: 65 additions & 0 deletions docs/en/releases/0.3.0rc1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
---
language: en
canonical: true
---

# Benchwork 0.3.0rc1

`0.3.0rc1` is M17 “The Instrumentarium Seal,” the Phase 2 release candidate.
It freezes the Agent-native research control plane before Phase 3 adds
execution-environment capabilities.

## Frozen contracts

- 38 typed MCP tools in `mcp-tool-registry/1.0`
- `mcp-tool-result/1.0` response envelopes
- seven versioned Benchwork Skills
- Codex plugin and STDIO MCP packaging
- Host Session provenance
- immutable RQ, Protocol, and Decision preview/commit Seals
- Review Request/Artifact provenance and disclosure authorization
- tiered Host acceptance and exception policy

All Phase 2 Plugin and MCP contracts remain Alpha. A breaking change requires
an accepted RFC, migration guidance, and contract/replay coverage.

## Acceptance

| Boundary | Result |
| --- | --- |
| Kernel | PASS |
| MCP | PASS |
| Codex Plugin | PASS |
| Codex CLI | PASS |
| Codex IDE | `BLOCKED_BY_ENVIRONMENT` (`HOST-IDE-001`, accepted) |
| External Review | `WAITING_FOR_DISCLOSURE_AUTHORIZATION` |
| Claude Code CLI | `PENDING_HOST_VALIDATION` |

The IDE and external Review states do not weaken Kernel, MCP, Plugin, or Codex
CLI acceptance. Claude Code uses the host-neutral contract but does not have a
claimed interactive PASS in this release.

## Golden path

The [`phase2-final`](../../../examples/phase2-final/README.md) scenario runs:

```text
Host workflow
-> audit Task
-> Athanor Receipt
-> repaired Protocol preview/commit
-> implementation and registered Runs
-> Alembic
-> Assessment
-> REPAIR Decision preview/commit
-> Chronicle replay and Deep Doctor
```

Failed and excluded Runs remain canonical. No background Codex process or
external Review disclosure is required.

## Scope boundary

This release does not add HTTP MCP transport, remote execution, OAuth,
filesystem isolation, GPU scheduling, remote jobs, Artifact storage, or
automatic external review. Those belong to Phase 3 and require new RFCs.
2 changes: 1 addition & 1 deletion plugins/benchwork/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "benchwork",
"version": "0.3.0-alpha.1",
"version": "0.3.0-rc.1",
"description": "Auditable research workflows and scientific control-plane tools for Codex",
"author": {
"name": "Endofthestars",
Expand Down
4 changes: 2 additions & 2 deletions plugins/benchwork/benchwork-plugin-api.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"schema_version": "benchwork-plugin-api/1.0",
"plugin": "benchwork",
"plugin_version": "0.3.0-alpha.1",
"plugin_version": "0.3.0-rc.1",
"benchwork_api": "0.3",
"minimum_runtime": "0.3.0a1",
"minimum_runtime": "0.3.0rc1",
"skills_api": "1",
"mcp_tool_registry": "mcp-tool-registry/1.0",
"mcp_tool_count": 38
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "benchwork-arcana"
version = "0.3.0a1"
version = "0.3.0rc1"
description = "An auditable workbench for agent-assisted computational research."
readme = "README.md"
requires-python = ">=3.11"
Expand Down
2 changes: 1 addition & 1 deletion src/benchwork/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""Benchwork's deterministic Athanor foundation."""

__version__ = "0.3.0a1"
__version__ = "0.3.0rc1"
2 changes: 1 addition & 1 deletion tests/plugin/test_plugin_package.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ def test_manifest_marketplace_and_components_agree(self) -> None:
entry = next(item for item in marketplace["plugins"] if item["name"] == "benchwork")
self.assertEqual(marketplace["name"], "benchwork-local")
self.assertEqual(manifest["name"], "benchwork")
self.assertEqual(manifest["version"], "0.3.0-alpha.1")
self.assertEqual(manifest["version"], "0.3.0-rc.1")
self.assertEqual(entry["source"]["path"], "./plugins/benchwork")
self.assertEqual(entry["policy"]["installation"], "AVAILABLE")
self.assertEqual(entry["policy"]["authentication"], "ON_INSTALL")
Expand Down
2 changes: 1 addition & 1 deletion tests/test_distribution.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ class DistributionTest(unittest.TestCase):
def test_package_and_project_versions_match(self) -> None:
project = loads((Path(__file__).parents[1] / "pyproject.toml").read_text(encoding="utf-8"))
self.assertEqual(benchwork.__version__, project["project"]["version"])
self.assertEqual(benchwork.__version__, "0.3.0a1")
self.assertEqual(benchwork.__version__, "0.3.0rc1")

def test_init_creates_both_versioned_registries(self) -> None:
with tempfile.TemporaryDirectory() as directory:
Expand Down
Loading