Skip to content

Commit e5466f3

Browse files
committed
chore(release): v3.3.0
- Auth config can now come from COREZOID_* environment variables, with API-URL discovery on the first authenticated operation — for CI, containers and the Streamable HTTP transport. - push-process safety gates split: `force` is the lint override only, `overwrite_server_change` authorises dropping a concurrent server change, and every waived gate is named in the push result.
1 parent 0fc390d commit e5466f3

7 files changed

Lines changed: 10 additions & 7 deletions

File tree

.agents/plugins/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"plugins": [
77
{
88
"name": "corezoid",
9-
"version": "3.2.1",
9+
"version": "3.3.0",
1010
"license": "MIT",
1111
"source": {
1212
"source": "local",

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"name": "corezoid",
1313
"source": "./plugins/corezoid",
1414
"description": "Corezoid BPM platform skills, MCP server, docs, and samples for Claude Code.",
15-
"version": "3.2.1",
15+
"version": "3.3.0",
1616
"author": {
1717
"name": "Corezoid",
1818
"email": "support@corezoid.com"

CHANGELOG.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog
22

3-
## [Unreleased]
3+
## [3.3.0]
44

55
- Feat(mcp-server): auth values can come from `COREZOID_*` environment variables when `~/.corezoid/config.json` has nothing for the current working directory — for CI jobs, containers and the Streamable HTTP transport, none of which can run the interactive browser login. The config file still wins field by field; the environment only fills gaps, and nothing read from it is ever written back. Two credential pairs are the exception to field-by-field merging: `COREZOID_API_LOGIN`/`COREZOID_API_SECRET` and `COREZOID_ACCESS_TOKEN`/`COREZOID_TOKEN_EXPIRES_AT` come from one source or neither, because a login and a secret from different sources can only produce an opaque `401`. A variable that was set and rejected — a malformed ID, half a pair — is named in the auth error the tool returns, not only on stderr, so "not authenticated" cannot be mistaken for "never configured".
66
- Fix(mcp-server): the API base URL is derived when nothing supplied it, instead of only inside the `login` tool. A headless setup passing the documented minimal set (`COREZOID_ACCOUNT_URL` + `COREZOID_STAGE_ID` + a token) had no way to run login, so `api_url` stayed empty: authentication reported success and the first API call went out with no host. Discovery now happens on the first authenticated operation — from the account's clients endpoint with a token, from `account_url` with API-key credentials, which that endpoint does not accept — and is cached per account for the session without being persisted. A failed lookup returns an actionable error naming `COREZOID_API_URL` rather than guessing a host to send credentials to, and is not remembered, so a flaky network on one tool call does not disable the session.
@@ -13,6 +13,9 @@
1313
- Fix(mcp-server): `push-process` refuses the one combination it cannot undo — overwriting live server state that was never compared (`overwrite_server_change`, or `adopt_existing` with no baseline) while no pre-push snapshot exists. Each waiver alone is a judgement call; together the previous version is neither reported nor recoverable, so reaching that state now takes `allow_no_snapshot=true` as well — and when it is reached deliberately, the result says the push cannot be undone. A waived equal-timestamp content check counts as unreconciled too: the comparison did not run, so it is paired with a rollback point like any other overwrite. This also bounds the damage a misread snapshot capability can do: the check keys on whether a snapshot was actually taken, not on why it was not. A never-deployed process is exempt, as it already is for the snapshot gate itself: its `change_time` moves on its own and `CreateSnapshot` refuses a process with no committed version, so both halves of "unreconciled and unrecoverable" hold vacuously — there is no previous version to protect, and demanding a second waiver there would only tax the create-then-push flow.
1414
- Fix(mcp-server): a snapshot refusal that names the snapshot object is believed only after it is shown not to depend on the target. Naming the object was treated as conclusive on its own, but an API answers about whatever you asked for, so "snapshot object is not available here" read identically from a build with no snapshots and from a per-target refusal on a build that has them — and the latter would be cached as an installation-wide absence, dropping the rollback point for the whole project+stage. Two read-only controls now decide: ordinary ops about the same target must work, and the same op with the target dropped must be refused in exactly the same words.
1515
- Fix(mcp-server): a pre-v3.1.3 sidecar with no recorded merge ancestor no longer keeps its same-second blind spot forever. The ancestor is recorded from the live server scheme on first push, so the unchecked window is one push per process instead of permanent, and it is reported in the result rather than logged. The branch is not blocked on purpose: it is entered whenever the server's `change_time` merely equals the baseline's, which is the ordinary in-sync case for every list-sourced or legacy sidecar, so blocking would stop all of those pushes rather than the rare collision.
16+
- Docs: the README environment-variable table lists six variables the server has always read but never documented — `COREZOID_HTTP_TOKEN`, `COREZOID_HTTP_ALLOWED_ORIGINS`, `COREZOID_WS_URL`, `COREZOID_INSECURE_TLS`, `COREZOID_DEBUG` and `COREZOID_DEBUG_LOG`.
17+
- Docs: `SECURITY.md` covers the environment fallback — which fields it can supply, that such values are read-only and are never written back to `~/.corezoid/config.json`, and that they do not get the `0600` protection the config file has.
18+
- Docs: `corezoid-init` documents the environment fallback and its precedence rules; `corezoid-edit` documents the split push waivers and the never-deployed exemption.
1619

1720
## [3.2.1]
1821

POWER.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: corezoid
33
displayName: Corezoid
4-
version: 3.2.1
4+
version: 3.3.0
55
description: Corezoid BPM platform assistant. Exposes the Corezoid REST API as MCP tools (`convctl`) plus 24 skills covering process creation, editing, lifecycle operations, review, validation, dashboards, state diagrams, variables, access, layout, docs, and custom-code git_call. Ships JSON schemas and per-node-type documentation for all 24 Corezoid node types.
66
author:
77
name: Corezoid

plugins/corezoid/.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "corezoid",
3-
"version": "3.2.1",
3+
"version": "3.3.0",
44
"description": "Corezoid AI Documentation and Templates — skills and MCP server for working with Corezoid BPM processes.",
55
"author": {
66
"name": "Corezoid",

plugins/corezoid/.codex-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "corezoid",
3-
"version": "3.2.1",
3+
"version": "3.3.0",
44
"description": "Corezoid BPM platform assistant. Exposes Corezoid operations as an MCP server and provides skills for creating, editing, reviewing, and deploying business processes.",
55
"author": {
66
"name": "Corezoid",

plugins/corezoid/.kiro-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "corezoid",
3-
"version": "3.2.1",
3+
"version": "3.3.0",
44
"description": "Corezoid AI Documentation and Templates — skills and MCP server for working with Corezoid BPM processes.",
55
"author": {
66
"name": "Corezoid",

0 commit comments

Comments
 (0)