From 32f5d4cf924f0a376a1efe8334952ce7aac951e6 Mon Sep 17 00:00:00 2001 From: MeekPhills <117056626+MeekPhills@users.noreply.github.com> Date: Sun, 23 Aug 2026 11:52:52 -0400 Subject: [PATCH] release: prepare Project Status and RunGlance 1.2.1 --- .claude-plugin/marketplace.json | 6 +++--- CHANGELOG.md | 8 +++++++- COMPLIANCE-PACKET.md | 2 +- PROVENANCE.md | 2 +- README.md | 2 +- VERSION | 2 +- mcp-registry/project-status/server.json | 4 ++-- mcp-registry/runglance/server.json | 4 ++-- package-lock.json | 4 ++-- package.json | 2 +- packages/mcp/package-lock.json | 4 ++-- packages/mcp/package.json | 2 +- packages/mcp/src/runglance-server.ts | 2 +- packages/mcp/src/server.ts | 2 +- packages/mcp/tests/identity.test.mjs | 2 +- packages/monitor/package.json | 2 +- packages/monitor/probe.mjs | 2 +- packages/runglance-mcp/dist/index.js | 2 +- packages/runglance-mcp/package.json | 2 +- packages/runglance-mcp/tests/identity.test.mjs | 2 +- plugins/claude/project-status/.claude-plugin/plugin.json | 2 +- plugins/claude/project-status/mcp/dist/index.js | 2 +- .../skills/project-status/assets/package-metadata.json | 2 +- plugins/claude/runglance/.claude-plugin/plugin.json | 2 +- plugins/claude/runglance/mcp/dist/index.js | 2 +- .../skills/runglance/assets/package-metadata.json | 2 +- plugins/openai/project-status/.codex-plugin/plugin.json | 2 +- plugins/openai/project-status/mcp/dist/index.js | 2 +- .../skills/project-status/assets/package-metadata.json | 2 +- plugins/openai/runglance/.codex-plugin/plugin.json | 2 +- plugins/openai/runglance/mcp/dist/index.js | 2 +- .../skills/runglance/assets/package-metadata.json | 2 +- skill/project-status/assets/package-metadata.json | 2 +- skill/runglance/assets/package-metadata.json | 2 +- 34 files changed, 46 insertions(+), 40 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index e1fbecf..126036d 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -19,7 +19,7 @@ "name": "project-status", "source": "./plugins/claude/project-status", "strict": true, - "version": "1.2.0" + "version": "1.2.1" }, { "author": { @@ -32,8 +32,8 @@ "name": "runglance", "source": "./plugins/claude/runglance", "strict": true, - "version": "1.2.0" + "version": "1.2.1" } ], - "version": "1.2.0" + "version": "1.2.1" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f3811b..f4e7b91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,15 +2,21 @@ All notable distribution changes are documented here. This project follows semantic versioning for skill and plugin artifacts. -## Unreleased +## 1.2.1 - 2026-08-23 ### Changed +- Advanced Project Status, RunGlance, both npm package contracts, both MCP Registry records, and both provider marketplaces to `1.2.1` so every future npm/MCP publication can resolve to the same released source commit. - Aligned the repository publisher mirror with the live founder-operated Openly Useful authority while Openly Useful LLC remains formation-pending. - Made npm package readiness depend on direct founder-owner authorization, exact package/MCP namespaces, public-policy files, and deterministic release validation instead of LLC formation or provider marketplace review. - Normalized both npm CLI `bin` maps and made the combined MCP build mark its bundled commands executable so npm preserves every published command without manifest correction. - Kept npm account authentication at the actual registry boundary and retained marketplace, MCP Registry, deployment, and future LLC operation as separate workflows. +### Release gates + +- The `v1.2.1` GitHub tag and all six deterministic release archives must resolve to the same reviewed merge commit. +- npm package publication and MCP Registry submission remain separate actions and are not performed by this GitHub patch release. + ## 1.2.0 - 2026-08-16 ### Added diff --git a/COMPLIANCE-PACKET.md b/COMPLIANCE-PACKET.md index 1a1b880..2d85c86 100644 --- a/COMPLIANCE-PACKET.md +++ b/COMPLIANCE-PACKET.md @@ -1,7 +1,7 @@ # Local compliance packet Status: identity, licensing, policy, runtime-notice, package, namespace, and -founder-authorization inputs are implemented for release `1.2.0`. npm package +founder-authorization inputs are implemented for release `1.2.1`. npm package publication is authorized but has not been performed. Marketplace submission, MCP Registry submission, hosted operation, and provider review remain separate external actions. This packet is not legal advice. diff --git a/PROVENANCE.md b/PROVENANCE.md index 874d6e9..eb01565 100644 --- a/PROVENANCE.md +++ b/PROVENANCE.md @@ -22,7 +22,7 @@ formation-pending and must not be described as formed, active, as the current operator, or as the owner. A future LLC may later publish, operate, and license the project under separately documented founder authorization. -The canonical public repository target for both products in release 1.2.0 is +The canonical public repository target for both products in release 1.2.1 is . Product packages, MCP Registry records, and host-specific plugin metadata derive their repository and publisher fields from the governed release sources in this repository. diff --git a/README.md b/README.md index 2449ac5..b336298 100644 --- a/README.md +++ b/README.md @@ -183,7 +183,7 @@ Review the generated manifests and skill contents before installing. Marketplace ## Versioning and release gates -The distribution version is recorded in `VERSION`, both canonical component metadata files, generated plugin manifests, the Claude marketplace entry, MCP and monitor companion packages, and archive checksums. `node scripts/release-check.mjs` requires them to agree. Release `1.2.0` supersedes the unpublished `1.1.0` source identifier because that identifier collides with a materially different cached Project Status distribution. +The distribution version is recorded in `VERSION`, both canonical component metadata files, generated plugin manifests, the Claude marketplace entry, MCP and monitor companion packages, and archive checksums. `node scripts/release-check.mjs` requires them to agree. Release `1.2.1` is the provenance-aligned patch release for the founder-operated publication gate and normalized npm CLI manifests merged after `v1.2.0`; the `1.2.0` line had already superseded the unpublished `1.1.0` source identifier because that identifier collided with a materially different cached Project Status distribution. `publisher/publisher.json` is the repository mirror/consumer of . Openly Useful is the publisher/developer brand. Openly Useful LLC is the planned publisher, operator, and licensee, but remains formation-pending and must not be described as already formed. The `.org` identity is the canonical open-source, publisher, policy, security, and support surface; `.com` is the studio/commercial identity. Component metadata points to the canonical public repository and . diff --git a/VERSION b/VERSION index 26aaba0..6085e94 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.2.0 +1.2.1 diff --git a/mcp-registry/project-status/server.json b/mcp-registry/project-status/server.json index 18b4808..a034d37 100644 --- a/mcp-registry/project-status/server.json +++ b/mcp-registry/project-status/server.json @@ -7,12 +7,12 @@ "url": "https://github.com/Openly-Useful/project-status", "source": "github" }, - "version": "1.2.0", + "version": "1.2.1", "packages": [ { "registryType": "npm", "identifier": "@openly-useful/project-status-mcp", - "version": "1.2.0", + "version": "1.2.1", "transport": { "type": "stdio" } diff --git a/mcp-registry/runglance/server.json b/mcp-registry/runglance/server.json index 6df4f81..e684ba6 100644 --- a/mcp-registry/runglance/server.json +++ b/mcp-registry/runglance/server.json @@ -7,12 +7,12 @@ "url": "https://github.com/Openly-Useful/project-status", "source": "github" }, - "version": "1.2.0", + "version": "1.2.1", "packages": [ { "registryType": "npm", "identifier": "@openly-useful/runglance-mcp", - "version": "1.2.0", + "version": "1.2.1", "transport": { "type": "stdio" } diff --git a/package-lock.json b/package-lock.json index 2775910..89d6493 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "project-status-initiative", - "version": "1.2.0", + "version": "1.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "project-status-initiative", - "version": "1.2.0", + "version": "1.2.1", "dependencies": { "@fontsource/ibm-plex-mono": "^5.3.0", "@fontsource/inter": "^5.3.0", diff --git a/package.json b/package.json index 4544d65..4e18434 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "project-status-initiative", - "version": "1.2.0", + "version": "1.2.1", "private": true, "type": "module", "scripts": { diff --git a/packages/mcp/package-lock.json b/packages/mcp/package-lock.json index f808564..b17ec90 100644 --- a/packages/mcp/package-lock.json +++ b/packages/mcp/package-lock.json @@ -1,12 +1,12 @@ { "name": "@openly-useful/project-status-mcp", - "version": "1.2.0", + "version": "1.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@openly-useful/project-status-mcp", - "version": "1.2.0", + "version": "1.2.1", "dependencies": { "@modelcontextprotocol/server": "2.0.0", "zod": "^4.2.0" diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 52eb7a2..d3a5a24 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@openly-useful/project-status-mcp", - "version": "1.2.0", + "version": "1.2.1", "mcpName": "org.openlyuseful/project-status", "private": false, "description": "Read-only MCP companions for Project Status and standalone RunGlance activity", diff --git a/packages/mcp/src/runglance-server.ts b/packages/mcp/src/runglance-server.ts index 02fe80c..b54bc16 100644 --- a/packages/mcp/src/runglance-server.ts +++ b/packages/mcp/src/runglance-server.ts @@ -375,7 +375,7 @@ export function createRunGlanceServer(options: RunGlanceServerOptions = {}): Mcp const server = new McpServer( { name: "runglance-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to local RunGlance progress, work, usage, locks, and verification receipts.", }, { diff --git a/packages/mcp/src/server.ts b/packages/mcp/src/server.ts index 2bc614a..785a3d5 100644 --- a/packages/mcp/src/server.ts +++ b/packages/mcp/src/server.ts @@ -829,7 +829,7 @@ export function createProjectStatusServer(options: ProjectStatusServerOptions = const server = new McpServer( { name: "project-status-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to validated Project Status readiness and optional local activity.", }, { diff --git a/packages/mcp/tests/identity.test.mjs b/packages/mcp/tests/identity.test.mjs index 853cc96..e1230ea 100644 --- a/packages/mcp/tests/identity.test.mjs +++ b/packages/mcp/tests/identity.test.mjs @@ -15,7 +15,7 @@ test("Project Status npm and MCP Registry identities agree", () => { const packageJson = json(join(packageRoot, "package.json")); const serverJson = json(join(projectRoot, "mcp-registry", "project-status", "server.json")); assert.equal(packageJson.name, "@openly-useful/project-status-mcp"); - assert.equal(packageJson.version, "1.2.0"); + assert.equal(packageJson.version, "1.2.1"); assert.equal(packageJson.mcpName, "org.openlyuseful/project-status"); assert.equal(serverJson.name, packageJson.mcpName); assert.equal(serverJson.version, packageJson.version); diff --git a/packages/monitor/package.json b/packages/monitor/package.json index eba6974..99ccee9 100644 --- a/packages/monitor/package.json +++ b/packages/monitor/package.json @@ -1,6 +1,6 @@ { "name": "@project-status/monitor", - "version": "1.2.0", + "version": "1.2.1", "private": true, "type": "module", "engines": { diff --git a/packages/monitor/probe.mjs b/packages/monitor/probe.mjs index 47ed255..21d7a04 100644 --- a/packages/monitor/probe.mjs +++ b/packages/monitor/probe.mjs @@ -188,7 +188,7 @@ export async function probeHttpTarget(rawTarget, dependencies = {}) { method: target.method, headers: { accept: "*/*", - "user-agent": "project-status-monitor/1.2.0", + "user-agent": "project-status-monitor/1.2.1", }, redirect: "manual", signal: controller.signal, diff --git a/packages/runglance-mcp/dist/index.js b/packages/runglance-mcp/dist/index.js index bdd9df8..3b1a951 100755 --- a/packages/runglance-mcp/dist/index.js +++ b/packages/runglance-mcp/dist/index.js @@ -21009,7 +21009,7 @@ function createRunGlanceServer(options = {}) { const server = new McpServer( { name: "runglance-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to local RunGlance progress, work, usage, locks, and verification receipts." }, { diff --git a/packages/runglance-mcp/package.json b/packages/runglance-mcp/package.json index 4d53b17..15c57ca 100644 --- a/packages/runglance-mcp/package.json +++ b/packages/runglance-mcp/package.json @@ -1,6 +1,6 @@ { "name": "@openly-useful/runglance-mcp", - "version": "1.2.0", + "version": "1.2.1", "mcpName": "org.openlyuseful/runglance", "description": "Read-only MCP access to local RunGlance progress, work, usage, locks, and run receipts.", "license": "Apache-2.0", diff --git a/packages/runglance-mcp/tests/identity.test.mjs b/packages/runglance-mcp/tests/identity.test.mjs index 539d66c..436d77f 100644 --- a/packages/runglance-mcp/tests/identity.test.mjs +++ b/packages/runglance-mcp/tests/identity.test.mjs @@ -15,7 +15,7 @@ test("RunGlance npm and MCP Registry identities agree", () => { const packageJson = json(join(packageRoot, "package.json")); const serverJson = json(join(projectRoot, "mcp-registry", "runglance", "server.json")); assert.equal(packageJson.name, "@openly-useful/runglance-mcp"); - assert.equal(packageJson.version, "1.2.0"); + assert.equal(packageJson.version, "1.2.1"); assert.equal(packageJson.mcpName, "org.openlyuseful/runglance"); assert.equal(serverJson.name, packageJson.mcpName); assert.equal(serverJson.version, packageJson.version); diff --git a/plugins/claude/project-status/.claude-plugin/plugin.json b/plugins/claude/project-status/.claude-plugin/plugin.json index b48b627..4188041 100644 --- a/plugins/claude/project-status/.claude-plugin/plugin.json +++ b/plugins/claude/project-status/.claude-plugin/plugin.json @@ -11,5 +11,5 @@ "name": "project-status", "repository": "https://github.com/Openly-Useful/project-status", "skills": "./skills/", - "version": "1.2.0" + "version": "1.2.1" } diff --git a/plugins/claude/project-status/mcp/dist/index.js b/plugins/claude/project-status/mcp/dist/index.js index 4861d7b..3552289 100644 --- a/plugins/claude/project-status/mcp/dist/index.js +++ b/plugins/claude/project-status/mcp/dist/index.js @@ -21584,7 +21584,7 @@ function createProjectStatusServer(options = {}) { const server = new McpServer( { name: "project-status-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to validated Project Status readiness and optional local activity." }, { diff --git a/plugins/claude/project-status/skills/project-status/assets/package-metadata.json b/plugins/claude/project-status/skills/project-status/assets/package-metadata.json index 1f27bd9..ae6af34 100644 --- a/plugins/claude/project-status/skills/project-status/assets/package-metadata.json +++ b/plugins/claude/project-status/skills/project-status/assets/package-metadata.json @@ -1,6 +1,6 @@ { "name": "project-status", - "version": "1.2.0", + "version": "1.2.1", "description": "Evidence-backed project readiness, provenance, monitoring, dashboards, and repository attachment.", "author": { "name": "Openly Useful", diff --git a/plugins/claude/runglance/.claude-plugin/plugin.json b/plugins/claude/runglance/.claude-plugin/plugin.json index 4b3eb65..af9c5cd 100644 --- a/plugins/claude/runglance/.claude-plugin/plugin.json +++ b/plugins/claude/runglance/.claude-plugin/plugin.json @@ -11,5 +11,5 @@ "name": "runglance", "repository": "https://github.com/Openly-Useful/project-status", "skills": "./skills/", - "version": "1.2.0" + "version": "1.2.1" } diff --git a/plugins/claude/runglance/mcp/dist/index.js b/plugins/claude/runglance/mcp/dist/index.js index bdd9df8..3b1a951 100644 --- a/plugins/claude/runglance/mcp/dist/index.js +++ b/plugins/claude/runglance/mcp/dist/index.js @@ -21009,7 +21009,7 @@ function createRunGlanceServer(options = {}) { const server = new McpServer( { name: "runglance-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to local RunGlance progress, work, usage, locks, and verification receipts." }, { diff --git a/plugins/claude/runglance/skills/runglance/assets/package-metadata.json b/plugins/claude/runglance/skills/runglance/assets/package-metadata.json index ef6f44d..c8ac9d2 100644 --- a/plugins/claude/runglance/skills/runglance/assets/package-metadata.json +++ b/plugins/claude/runglance/skills/runglance/assets/package-metadata.json @@ -1,6 +1,6 @@ { "name": "runglance", - "version": "1.2.0", + "version": "1.2.1", "description": "Live progress for any agent, skill, test, workflow, or automation run, with the optional read-only RunGlance MCP companion.", "author": { "name": "Openly Useful", diff --git a/plugins/openai/project-status/.codex-plugin/plugin.json b/plugins/openai/project-status/.codex-plugin/plugin.json index f94e1ed..db9d4ab 100644 --- a/plugins/openai/project-status/.codex-plugin/plugin.json +++ b/plugins/openai/project-status/.codex-plugin/plugin.json @@ -31,5 +31,5 @@ "name": "project-status", "repository": "https://github.com/Openly-Useful/project-status", "skills": "./skills/", - "version": "1.2.0" + "version": "1.2.1" } diff --git a/plugins/openai/project-status/mcp/dist/index.js b/plugins/openai/project-status/mcp/dist/index.js index 4861d7b..3552289 100644 --- a/plugins/openai/project-status/mcp/dist/index.js +++ b/plugins/openai/project-status/mcp/dist/index.js @@ -21584,7 +21584,7 @@ function createProjectStatusServer(options = {}) { const server = new McpServer( { name: "project-status-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to validated Project Status readiness and optional local activity." }, { diff --git a/plugins/openai/project-status/skills/project-status/assets/package-metadata.json b/plugins/openai/project-status/skills/project-status/assets/package-metadata.json index 1f27bd9..ae6af34 100644 --- a/plugins/openai/project-status/skills/project-status/assets/package-metadata.json +++ b/plugins/openai/project-status/skills/project-status/assets/package-metadata.json @@ -1,6 +1,6 @@ { "name": "project-status", - "version": "1.2.0", + "version": "1.2.1", "description": "Evidence-backed project readiness, provenance, monitoring, dashboards, and repository attachment.", "author": { "name": "Openly Useful", diff --git a/plugins/openai/runglance/.codex-plugin/plugin.json b/plugins/openai/runglance/.codex-plugin/plugin.json index d9a63ad..079dfff 100644 --- a/plugins/openai/runglance/.codex-plugin/plugin.json +++ b/plugins/openai/runglance/.codex-plugin/plugin.json @@ -31,5 +31,5 @@ "name": "runglance", "repository": "https://github.com/Openly-Useful/project-status", "skills": "./skills/", - "version": "1.2.0" + "version": "1.2.1" } diff --git a/plugins/openai/runglance/mcp/dist/index.js b/plugins/openai/runglance/mcp/dist/index.js index bdd9df8..3b1a951 100644 --- a/plugins/openai/runglance/mcp/dist/index.js +++ b/plugins/openai/runglance/mcp/dist/index.js @@ -21009,7 +21009,7 @@ function createRunGlanceServer(options = {}) { const server = new McpServer( { name: "runglance-mcp-server", - version: "1.2.0", + version: "1.2.1", description: "Read-only access to local RunGlance progress, work, usage, locks, and verification receipts." }, { diff --git a/plugins/openai/runglance/skills/runglance/assets/package-metadata.json b/plugins/openai/runglance/skills/runglance/assets/package-metadata.json index ef6f44d..c8ac9d2 100644 --- a/plugins/openai/runglance/skills/runglance/assets/package-metadata.json +++ b/plugins/openai/runglance/skills/runglance/assets/package-metadata.json @@ -1,6 +1,6 @@ { "name": "runglance", - "version": "1.2.0", + "version": "1.2.1", "description": "Live progress for any agent, skill, test, workflow, or automation run, with the optional read-only RunGlance MCP companion.", "author": { "name": "Openly Useful", diff --git a/skill/project-status/assets/package-metadata.json b/skill/project-status/assets/package-metadata.json index 1f27bd9..ae6af34 100644 --- a/skill/project-status/assets/package-metadata.json +++ b/skill/project-status/assets/package-metadata.json @@ -1,6 +1,6 @@ { "name": "project-status", - "version": "1.2.0", + "version": "1.2.1", "description": "Evidence-backed project readiness, provenance, monitoring, dashboards, and repository attachment.", "author": { "name": "Openly Useful", diff --git a/skill/runglance/assets/package-metadata.json b/skill/runglance/assets/package-metadata.json index ef6f44d..c8ac9d2 100644 --- a/skill/runglance/assets/package-metadata.json +++ b/skill/runglance/assets/package-metadata.json @@ -1,6 +1,6 @@ { "name": "runglance", - "version": "1.2.0", + "version": "1.2.1", "description": "Live progress for any agent, skill, test, workflow, or automation run, with the optional read-only RunGlance MCP companion.", "author": { "name": "Openly Useful",