Skip to content

Commit b512fdb

Browse files
Release 0.1.3: eleven closed defects, and the version everywhere it is stated
pyproject and __version__ move together (0.1.0 shipped with them apart, and PyPI is immutable), the healthz and --version transcripts re-record, and the CHANGELOG's Unreleased section becomes 0.1.3. The release closes, in order of how much they could cost someone: a policy whose node rules were compiled by nobody, a Slack gate walked past by typing a flag twice, a deny rule that failed open when the tool name was also a glob, fan-out payloads that shared one live object between parallel workers, an unauthenticated 500 on the /live token check, an index that advertised traces the reader refuses, unknown input keys dropped at the front door, a Ctrl-C'd node that left no trace event, four unreadable-input tracebacks, and a --json document that would not parse. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent f35b722 commit b512fdb

8 files changed

Lines changed: 10 additions & 10 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ and "used to be true" — the two things a reader most needs kept apart.
77

88
Entries are newest-last within a release, matching the order they were written.
99

10-
## Unreleased
10+
## 0.1.3
1111

1212
- `grapharc plan` drives the governed loop; `PolicyEngine.edge_policy()` compiles the TOML document into the gate `AdmissionChecker` consults, and `grapharc plan --policy` is the caller; `grapharc demo --memory PATH` hands the shipped graphs the durable SQLite store.
1313
- the shipped registry withheld the trace recorder from its `PlannerNode` and `Materializer`, so `grapharc plan` wrote a file with no `plan` event and **no `start`/`end` pair for any node it executed** — the paragraph above claiming otherwise was true of a hand-wired loop and false of the one the command drives. Both now get the recorder, and a test asserts the phase counts.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
Build production-grade multi-agent systems with built-in safety, auditability, and control. GraphARC adds a governance layer on top of LangGraph: a planner *proposes* a subgraph, a deterministic checker *admits* it, and only then does anything execute. Every transition is permitted, every loop is bounded, and afterwards you can prove what happened and why it stopped.
1919

20-
**Status:** early days (`0.1.2`) — the API is not stable yet. Known limits are listed in [Status and limits](#status-and-limits); closed ones are in [CHANGELOG.md](CHANGELOG.md).
20+
**Status:** early days (`0.1.3`) — the API is not stable yet. Known limits are listed in [Status and limits](#status-and-limits); closed ones are in [CHANGELOG.md](CHANGELOG.md).
2121

2222
![One English question is decomposed by a local model into a nine-node graph — four parallel evidence pulls fanning out of START, a correlate join, a hypothesis fork, and a final report — shown live in the browser: the proposed graph waits grey for human approval, then each node turns amber while it runs and green when it is done.](docs/media/grapharc-decompose.gif)
2323

docs/cookbook/01-basics.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ projection instead and says which fields it dropped.
1414
`tests/test_cookbook_basics.py` reproduces every recipe here and asserts these
1515
exact strings, so the page cannot rot quietly.
1616

17-
Verified against `grapharc 0.1.2`, Python 3.14.6, `langgraph 1.2.9`,
17+
Verified against `grapharc 0.1.3`, Python 3.14.6, `langgraph 1.2.9`,
1818
`langchain-core 1.5.1`, `pydantic 2.13.4`.
1919

2020
Each snippet is a complete file. Save it and run it; nothing carries over between
@@ -41,7 +41,7 @@ uv run grapharc --version
4141
Output:
4242

4343
```
44-
grapharc 0.1.2
44+
grapharc 0.1.3
4545
```
4646

4747
Everything below uses only the base install — no API key, no network, no optional

docs/cookbook/06-serving-and-ops.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1062,7 +1062,7 @@ with TestClient(app) as client:
10621062
```
10631063

10641064
```
1065-
health : {'status': 'ok', 'version': '0.1.2', 'graphs': ['qa']}
1065+
health : {'status': 'ok', 'version': '0.1.3', 'graphs': ['qa']}
10661066
created: 201 queued
10671067
status : succeeded
10681068
answer : Budgets cap iterations, tokens and time.
@@ -1259,7 +1259,7 @@ graphs : qa
12591259
ctrl-c to stop
12601260

12611261
$ curl -s localhost:8124/healthz
1262-
{"status":"ok","version":"0.1.2","graphs":["qa"]}
1262+
{"status":"ok","version":"0.1.3","graphs":["qa"]}
12631263

12641264
$ curl -s -X POST localhost:8124/sessions -H 'content-type: application/json' \
12651265
-d '{"graph":"qa","input":{"question":"how do budgets work?"}}'

grapharc/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from grapharc.runtime.graph import GraphARC, WritePermissionError
1010
from grapharc.runtime.state import GraphARCState
1111

12-
__version__ = "0.1.2"
12+
__version__ = "0.1.3"
1313

1414
__all__ = [
1515
"GraphARC",

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "grapharc"
3-
version = "0.1.2"
3+
version = "0.1.3"
44
description = "A graph engineering toolkit on LangGraph: typed state contracts, per-node write permissions, enforced budgets, and JSONL traces that double as replay points."
55
readme = "README.md"
66
license = "MIT"

tests/test_cookbook_basics.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555

5656

5757
def test_version_matches_the_page():
58-
assert __version__ == "0.1.2"
58+
assert __version__ == "0.1.3"
5959

6060

6161
# -- "How do I build and run my first graph?" ------------------------------

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)