@jstn-sdk/ma 0.1.9 → 0.1.11

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.
package/README.md CHANGED
@@ -18,9 +18,9 @@
18
18
  </div>
19
19
 
20
20
  > [!IMPORTANT]
21
- > Meta-Architect `v0.1.9` is a production-grade skills line.
21
+ > Meta-Architect `v0.1.11` is a production-grade skills line.
22
22
  > It is not a lightweight demo branch.
23
- > From `v0.1.9` onward, the package is expected to ship with stable skill contracts, deterministic packaging, explicit release gates, and honest install and publish surfaces.
23
+ > From `v0.1.11` onward, the package is expected to ship with stable skill contracts, deterministic packaging, explicit release gates, and honest install and publish surfaces.
24
24
 
25
25
  ## Overview
26
26
 
@@ -57,7 +57,7 @@ It adds:
57
57
  </tr>
58
58
  <tr>
59
59
  <td><strong>Release line</strong></td>
60
- <td><code>v0.1.9</code></td>
60
+ <td><code>v0.1.11</code></td>
61
61
  </tr>
62
62
  <tr>
63
63
  <td><strong>License</strong></td>
@@ -230,7 +230,7 @@ Required output:
230
230
  5. Data model and storage choices
231
231
  6. Auth/security considerations
232
232
  7. DX/UX considerations
233
- 8. Delivery plan for v0.1.9
233
+ 8. Delivery plan for v0.1.11
234
234
  9. Risks and trade-offs
235
235
  10. Decision log
236
236
  11. Exact next trigger to run after this
@@ -608,7 +608,7 @@ Release automation:
608
608
  | [Plugin README](./plugins/meta-architect/README.md) | plugin distribution surface |
609
609
  | [Collaborative Whiteboard Mission](./missions/collaborative-whiteboard/mission.md) | concrete scenario walkthrough |
610
610
  | [Release Spec](./docs/release-spec.md) | release and gate policy |
611
- | [Release Readiness](./docs/qa/release-readiness-0.1.9.md) | QA evidence for the `v0.1.9` line |
611
+ | [Release Readiness](./docs/qa/release-readiness-0.1.11.md) | QA evidence for the `v0.1.11` line |
612
612
 
613
613
  ## Release Hygiene
614
614
 
package/docs/README.md CHANGED
@@ -17,7 +17,7 @@ Meta-Architect documentation is organized by operator task.
17
17
 
18
18
  ## QA and readiness
19
19
 
20
- - [Release Readiness 0.1.9](./qa/release-readiness-0.1.9.md)
20
+ - [Release Readiness 0.1.11](./qa/release-readiness-0.1.11.md)
21
21
 
22
22
  ## Repo structure references
23
23
 
@@ -74,7 +74,7 @@ Required output:
74
74
  5. Data model and storage choices
75
75
  6. Auth/security considerations
76
76
  7. DX/UX considerations
77
- 8. Delivery plan for v0.1.9
77
+ 8. Delivery plan for v0.1.11
78
78
  9. Risks and trade-offs
79
79
  10. Decision log
80
80
  11. Exact next trigger to run after this
@@ -1,25 +1,25 @@
1
- # Release Readiness 0.1.9
1
+ # Release Readiness 0.1.11
2
2
 
3
3
  ## Production bar
4
4
 
5
- `v0.1.9` is treated as production only when:
5
+ `v0.1.11` is treated as production only when:
6
6
  - the package installs cleanly from the canonical public install command
7
7
  - the Codex-hosted runtime path works end to end
8
8
  - the helper flow remains valid for scripted verification
9
- - release docs, package metadata, and workflows all agree on `0.1.9`
9
+ - release docs, package metadata, and workflows all agree on `0.1.11`
10
10
 
11
11
  Target release state:
12
- - npm package: `@jstn-sdk/ma@0.1.9`
12
+ - npm package: `@jstn-sdk/ma@0.1.11`
13
13
  - npm registry state: pending publish
14
- - publishability note: `0.1.8` is already published, so `0.1.9` is the next publishable package line
15
- - git tag: `v0.1.9`
16
- - GitHub release: pending publish for `v0.1.9`
14
+ - publishability note: `0.1.10` is already published, so `0.1.11` is the next publishable package line
15
+ - git tag: `v0.1.11`
16
+ - GitHub release: pending publish for `v0.1.11`
17
17
 
18
18
  ## Production checklist
19
19
 
20
20
  - skills-first product identity: PASS
21
21
  - package/plugin identity aligned to `@jstn-sdk/ma`: PASS
22
- - version/tag alignment `0.1.9` / `v0.1.9`: PASS
22
+ - version/tag alignment `0.1.11` / `v0.1.11`: PASS
23
23
  - install/uninstall docs aligned: PASS
24
24
  - onboarding is concise and sequential: PASS
25
25
  - helper command documented as secondary: PASS
@@ -1,13 +1,13 @@
1
- # v0.1.9 Requirements & Rules
1
+ # v0.1.11 Requirements & Rules
2
2
 
3
3
  ## Production definition
4
4
 
5
- Meta-Architect `v0.1.9` is production only when:
5
+ Meta-Architect `v0.1.11` is production only when:
6
6
  1. the package/install surface works
7
7
  2. the in-session skill workflow from `$arch` through `$build` works
8
8
  3. the release evidence matches the actual package and git tag
9
9
 
10
- ## What `v0.1.9` must have
10
+ ## What `v0.1.11` must have
11
11
 
12
12
  ### 1. Canonical package/runtime path
13
13
 
@@ -49,11 +49,11 @@ Canonical state files:
49
49
 
50
50
  ### 4. Required release evidence
51
51
 
52
- - `package.json` version `0.1.9`
53
- - git tag `v0.1.9`
52
+ - `package.json` version `0.1.11`
53
+ - git tag `v0.1.11`
54
54
  - `RELEASE.md`
55
55
  - `CHANGELOG.md`
56
- - `docs/qa/release-readiness-0.1.9.md`
56
+ - `docs/qa/release-readiness-0.1.11.md`
57
57
  - green `npm run release:check`
58
58
 
59
59
  ### 5. Dist-tag discipline
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jstn-sdk/ma",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Codex-native skills system for architecture, evidence, review, and gated build guidance.",
5
5
  "license": "MIT",
6
6
  "author": "JustineDevs",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "meta-architect",
3
3
  "displayName": "Meta-Architect",
4
- "version": "0.1.9",
4
+ "version": "0.1.11",
5
5
  "description": "Programmatic architecture and verified engineering skills for Codex-native workflows.",
6
6
  "entry": "./README.md",
7
7
  "skillsDir": "./skills"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "meta-architect",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Skills-first workflow layer for Codex with architecture, evidence, review, and gated build guidance.",
5
5
  "author": {
6
6
  "name": "JustineDevs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "meta-architect",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "collections": [
5
5
  "sindresorhus/awesome",
6
6
  "dzharii/awesome-typescript",
@@ -105,7 +105,7 @@ When consuming the plugin:
105
105
  The plugin version should track the release scope of the core repo.
106
106
 
107
107
  For this repository:
108
- - plugin scope is aligned to Meta-Architect `v0.1.9`
108
+ - plugin scope is aligned to Meta-Architect `v0.1.11`
109
109
  - any breaking contract change should be versioned intentionally
110
110
 
111
111
  The plugin is one distribution surface of the same product, not a separate product line.
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { spawnSync } from "node:child_process";
4
+ import fs from "node:fs";
5
+ import path from "node:path";
6
+
7
+ const supportedExtensions = new Set([
8
+ ".js",
9
+ ".mjs",
10
+ ".cjs",
11
+ ".jsx",
12
+ ".ts",
13
+ ".tsx",
14
+ ".json",
15
+ ".jsonc",
16
+ ".css",
17
+ ]);
18
+
19
+ function run(command, args) {
20
+ const result = spawnSync(command, args, {
21
+ stdio: "inherit",
22
+ encoding: "utf8",
23
+ });
24
+
25
+ if (result.error) {
26
+ throw result.error;
27
+ }
28
+
29
+ if (typeof result.status === "number" && result.status !== 0) {
30
+ process.exit(result.status);
31
+ }
32
+ }
33
+
34
+ function getStagedFiles() {
35
+ const result = spawnSync("git", ["diff", "--cached", "--name-only", "--diff-filter=ACMR"], {
36
+ encoding: "utf8",
37
+ });
38
+
39
+ if (result.error) {
40
+ throw result.error;
41
+ }
42
+
43
+ if (typeof result.status === "number" && result.status !== 0) {
44
+ process.exit(result.status);
45
+ }
46
+
47
+ return result.stdout
48
+ .split("\n")
49
+ .map((line) => line.trim())
50
+ .filter(Boolean)
51
+ .filter((file) => supportedExtensions.has(path.extname(file)))
52
+ .filter((file) => fs.existsSync(file));
53
+ }
54
+
55
+ function main() {
56
+ const files = getStagedFiles();
57
+ if (files.length === 0) {
58
+ return;
59
+ }
60
+
61
+ run("npx", ["@biomejs/biome", "format", "--write", ...files]);
62
+ run("git", ["update-index", "--again"]);
63
+ run("npx", ["@biomejs/biome", "lint", ...files]);
64
+ }
65
+
66
+ main();
@@ -75,6 +75,15 @@ function writeJson(file, value) {
75
75
  fs.writeFileSync(file, `${JSON.stringify(value, null, 2)}\n`);
76
76
  }
77
77
 
78
+ function writePluginManifestJson(file, value) {
79
+ let content = `${JSON.stringify(value, null, 2)}\n`;
80
+ if (Array.isArray(value.keywords)) {
81
+ const inlineKeywords = `[${value.keywords.map((entry) => JSON.stringify(entry)).join(", ")}]`;
82
+ content = content.replace(/"keywords": \[[\s\S]*?\],/, `"keywords": ${inlineKeywords},`);
83
+ }
84
+ fs.writeFileSync(file, content);
85
+ }
86
+
78
87
  function readText(file) {
79
88
  return fs.readFileSync(file, "utf8");
80
89
  }
@@ -191,12 +200,16 @@ function syncPluginVersions(nextVersion) {
191
200
  for (const file of [
192
201
  path.join("plugins", "meta-architect", ".app.json"),
193
202
  path.join("plugins", "meta-architect", ".mcp.json"),
194
- path.join("plugins", "meta-architect", ".codex-plugin", "plugin.json"),
195
203
  ]) {
196
204
  const value = readJson(file);
197
205
  value.version = nextVersion;
198
206
  writeJson(file, value);
199
207
  }
208
+
209
+ const pluginManifestFile = path.join("plugins", "meta-architect", ".codex-plugin", "plugin.json");
210
+ const pluginManifest = readJson(pluginManifestFile);
211
+ pluginManifest.version = nextVersion;
212
+ writePluginManifestJson(pluginManifestFile, pluginManifest);
200
213
  }
201
214
 
202
215
  function syncCurrentReleaseFiles(oldVersion, nextVersion) {
@@ -38,7 +38,7 @@ export class McpSseClient {
38
38
  capabilities: {},
39
39
  clientInfo: {
40
40
  name: "meta-architect",
41
- version: "0.1.9",
41
+ version: "0.1.11",
42
42
  },
43
43
  });
44
44
 
package/src/skills.js CHANGED
@@ -508,8 +508,8 @@ export async function runInit() {
508
508
  path.join(getRepoRoot(), "docs", "release-spec.md"),
509
509
  ],
510
510
  [
511
- path.join(packageRoot, "docs", "qa", "release-readiness-0.1.9.md"),
512
- path.join(getRepoRoot(), "docs", "qa", "release-readiness-0.1.9.md"),
511
+ path.join(packageRoot, "docs", "qa", "release-readiness-0.1.11.md"),
512
+ path.join(getRepoRoot(), "docs", "qa", "release-readiness-0.1.11.md"),
513
513
  ],
514
514
  ];
515
515