@akira-tl/forgerelay 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -94,24 +94,30 @@ npm run release:tag-check -- v0.1.0
94
94
  A release tag must exactly equal `v` followed by the package version, and
95
95
  `Unreleased` must be empty.
96
96
 
97
- ## Tag-triggered publishing
97
+ ## CI and tag-triggered publishing
98
98
 
99
- `.github/workflows/release.yml` runs for tags matching `v*.*.*` in the
100
- `Akira-TL/forgerelay` repository. The release helper performs the strict SemVer
101
- validation; tags that only match the broad GitHub glob but not the package
102
- version are rejected.
99
+ `.github/workflows/ci.yml` is a reusable workflow with only a `workflow_call`
100
+ entry point. It does not run on ordinary branch pushes, pull-request updates, or
101
+ manual dispatches. Day-to-day development therefore does not consume cloud CI.
102
+
103
+ `.github/workflows/release.yml` is the single GitHub Actions entry point. It runs
104
+ only for stable SemVer tags matching `v[0-9]+.[0-9]+.[0-9]+` in the
105
+ `Akira-TL/forgerelay` repository. The release helper then requires the tag to
106
+ exactly equal `v` plus the package version. Ordinary branch pushes never enter
107
+ cloud CI or publication.
103
108
 
104
109
  For a valid tag, the workflow:
105
110
 
106
- 1. checks out the tagged commit with full Git history;
107
- 2. verifies the tagged commit is contained in `origin/main`;
108
- 3. installs dependencies;
109
- 4. checks the tag against `package.json` and `CHANGELOG.md`;
110
- 5. runs `npm run release:verify`;
111
- 6. runs `npm pack --dry-run`;
112
- 7. checks whether the exact npm version is already published;
113
- 8. publishes `@akira-tl/forgerelay` when necessary;
114
- 9. creates the matching GitHub Release after npm publication succeeds.
111
+ 1. invokes `.github/workflows/ci.yml` for the cloud multi-platform verification;
112
+ 2. waits for every CI matrix job to pass;
113
+ 3. checks out the tagged commit with full Git history;
114
+ 4. verifies the tagged commit is contained in `origin/main`;
115
+ 5. installs dependencies and checks the tag against `package.json` and `CHANGELOG.md`;
116
+ 6. rebuilds the publish artifact on the publication runner;
117
+ 7. runs `npm pack --dry-run`;
118
+ 8. checks whether the exact npm version is already published;
119
+ 9. publishes `@akira-tl/forgerelay` when necessary;
120
+ 10. creates the matching GitHub Release after npm publication succeeds.
115
121
 
116
122
  The npm existence check makes the workflow safely restartable when npm
117
123
  publication succeeds but GitHub Release creation fails afterward.
@@ -152,7 +158,8 @@ npm publishing token.
152
158
  3. Run the appropriate `release:patch`, `release:minor`, or `release:major`
153
159
  command.
154
160
  4. Review the generated version and changelog diff.
155
- 5. Run `npm run release:verify`.
161
+ 5. Run `npm run release:verify` locally. This full local gate is a release-time
162
+ operation; ordinary development pushes do not need to run the full release gate.
156
163
  6. Commit the release-ready code and metadata and push `main`.
157
164
  7. Create the exact version tag, for example:
158
165
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akira-tl/forgerelay",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Local development control plane for MCP coding agents.",
5
5
  "type": "module",
6
6
  "homepage": "https://github.com/Akira-TL/forgerelay#readme",
@@ -36,10 +36,12 @@
36
36
  "clean": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"",
37
37
  "build": "npm run clean && npm run build:app && tsc -p tsconfig.build.json",
38
38
  "build:app": "vite build",
39
- "dev": "node scripts/dev-server.mjs",
39
+ "dev": "node scripts/debug/serve.mjs",
40
+ "debug:serve": "node scripts/debug/serve.mjs",
41
+ "debug:accept": "node scripts/debug/accept.mjs",
40
42
  "postinstall": "node scripts/fix-node-pty-permissions.mjs",
41
43
  "start": "node dist/cli.js serve",
42
- "test": "tsx src/config.test.ts && tsx src/mcp/server-instructions.test.ts && tsx src/request-meta.test.ts && tsx src/incoming-artifacts.test.ts && tsx src/artifact-download.test.ts && tsx src/ui/card-types.test.ts && tsx src/ui/patch-display.test.ts && tsx src/ui/tool-display.test.ts && tsx src/apply-patch.test.ts && tsx src/process-platform.test.ts && tsx src/process-sessions.test.ts && tsx src/mcp-sessions.test.ts && tsx src/server-shutdown.test.ts && tsx src/local-agent-runtime.test.ts && tsx src/local-agent-adapters.test.ts && tsx src/local-agent-availability.test.ts && tsx src/local-agent-profiles.test.ts && tsx src/local-agent-targets.test.ts && tsx src/local-agent-store.test.ts && tsx src/roots.test.ts && tsx src/skills.test.ts && tsx src/workspaces.test.ts && tsx src/workspace-conversation.test.ts && tsx src/review-checkpoints.test.ts && tsx src/server.test.ts && tsx src/oauth-store.test.ts && tsx src/cli.test.ts",
44
+ "test": "tsx src/config.test.ts && tsx src/hooks.test.ts && tsx src/mcp/server-instructions.test.ts && tsx src/request-meta.test.ts && tsx src/incoming-artifacts.test.ts && tsx src/artifact-download.test.ts && tsx src/ui/card-types.test.ts && tsx src/ui/patch-display.test.ts && tsx src/ui/tool-display.test.ts && tsx src/apply-patch.test.ts && tsx src/process-platform.test.ts && tsx src/process-sessions.test.ts && tsx src/mcp-sessions.test.ts && tsx src/server-shutdown.test.ts && tsx src/local-agent-runtime.test.ts && tsx src/local-agent-adapters.test.ts && tsx src/local-agent-availability.test.ts && tsx src/local-agent-profiles.test.ts && tsx src/local-agent-targets.test.ts && tsx src/local-agent-store.test.ts && tsx src/roots.test.ts && tsx src/skills.test.ts && tsx src/workspaces.test.ts && tsx src/workspace-conversation.test.ts && tsx src/review-checkpoints.test.ts && tsx src/server.test.ts && tsx src/oauth-store.test.ts && tsx src/cli.test.ts",
43
45
  "typecheck": "tsc -p tsconfig.json --noEmit",
44
46
  "release:check": "node scripts/release-version.mjs check",
45
47
  "release:tag-check": "node scripts/release-version.mjs tag",