instar 1.0.9 → 1.0.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.
@@ -119,12 +119,12 @@ function buildPersistentRelayAppendix(framework) {
119
119
  `Every Telegram message you receive arrives prefixed \`[telegram:N "topic name" from User]\`. After responding, you MUST run this exact bash command to send the user your reply — without it, the user only sees sentinel messages and thinks you ignored them:`,
120
120
  ``,
121
121
  '```bash',
122
- `cat <<'EOF' | .claude/scripts/telegram-reply.sh N`,
122
+ `cat <<'EOF' | .instar/scripts/telegram-reply.sh N`,
123
123
  `Your conversational response text here.`,
124
124
  `EOF`,
125
125
  '```',
126
126
  ``,
127
- `(Replace \`N\` with the topic id from the prefix.)`,
127
+ `(Replace \`N\` with the topic id from the prefix. If \`.instar/scripts/telegram-reply.sh\` is missing on an older install, fall back to \`.claude/scripts/telegram-reply.sh\`.)`,
128
128
  ``,
129
129
  `Rules:`,
130
130
  `- Strip the \`[telegram:N]\` prefix before interpreting the message.`,
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityRenderer.js","sourceRoot":"","sources":["../../src/core/IdentityRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IdentityRenderer.js","sourceRoot":"","sources":["../../src/core/IdentityRenderer.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,22 @@ export declare class PostUpdateMigrator {
45
45
  */
46
46
  private stepEngine;
47
47
  constructor(config: MigratorConfig);
48
+ /**
49
+ * Resolve the set of frameworks this install actively uses, read from
50
+ * the persisted `.instar/config.json` `enabledFrameworks` field.
51
+ *
52
+ * Default (unset / empty / unreadable): `['claude-code']` — the
53
+ * historical behavior, so existing and dual-framework installs are
54
+ * unaffected. A Codex-only install sets `enabledFrameworks:
55
+ * ['codex-cli']`, which makes framework-specific migration steps that
56
+ * scaffold `.claude/`-only artifacts skip cleanly instead of writing
57
+ * files that runtime will never read.
58
+ *
59
+ * Single source of truth for the migrator's framework gating — both
60
+ * the parity-renderings backfill and the legacy `.claude/`-specific
61
+ * steps consult this.
62
+ */
63
+ private getEnabledFrameworks;
48
64
  /**
49
65
  * F-7 atomic-step primitive: register a step that will run once on
50
66
  * the release boundary where `step.version <= toVersion`. Idempotent
@@ -1 +1 @@
1
- {"version":3,"file":"PostUpdateMigrator.d.ts","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostUpdateMigrator.d.ts","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AA8BH,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC3B,MAAM,yBAAyB,CAAC;AAIjC,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kCAAkC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,2CAA2C;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAiB;IAC/B;;;;;;OAMG;IACH,OAAO,CAAC,UAAU,CAAiC;gBAEvC,MAAM,EAAE,cAAc;IAIlC;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAItC;;;;;;OAMG;IACG,eAAe,CACnB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC;IAIjC,OAAO,CAAC,aAAa;IAOrB;;;OAGG;IACH,OAAO,IAAI,eAAe;IA+C1B,OAAO,CAAC,4CAA4C;IA4CpD;;;;;;;;;;OAUG;IACG,YAAY,IAAI,OAAO,CAAC,eAAe,CAAC;YA4BhC,uBAAuB;IAkGrC,OAAO,CAAC,0BAA0B;IAkGlC,OAAO,CAAC,0BAA0B;IAkElC,OAAO,CAAC,oBAAoB;IAqH5B,OAAO,CAAC,8BAA8B;IA2EtC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;;;;;;OASG;IACH,OAAO,CAAC,kBAAkB;IA2B1B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,yBAAyB;IA4HjC;6EACyE;IACzE,OAAO,CAAC,wBAAwB;IAShC;sDACkD;IAClD,OAAO,CAAC,wBAAwB;IAQhC;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAiKpB;;;;;;;;OAQG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IA6CvE;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA+DzB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAkChC;;;;;;;;;OASG;IACH,OAAO,CAAC,wBAAwB;IAoEhC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAiE5B;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;IA8BnC;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAwGhC;;;;;;OAMG;IACH,OAAO,CAAC,8BAA8B;IAwDtC,OAAO,CAAC,0BAA0B;IA8DlC;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgXvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAwHtB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAqOvB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAqFrB;;;OAGG;IACH;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAqChC,OAAO,CAAC,gBAAgB;IAiBxB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,OAAO,CAAC,qBAAqB;IAkE7B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,0BAA0B;IAgDlC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAkC5B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,kBAAkB;IA2C1B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,oBAAoB;IAgC5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyBrB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAqC9B;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,GAAG,wBAAwB,GAAG,8BAA8B,GAAG,2BAA2B,GAAG,4BAA4B,GAAG,iBAAiB,GAAG,0BAA0B,GAAG,wBAAwB,GAAG,iBAAiB,GAAG,0BAA0B,GAAG,uBAAuB,GAAG,iBAAiB,GAAG,MAAM;IAoB3Z,oFAAoF;IACpF,iCAAiC,IAAI,MAAM;IAI3C,6EAA6E;IAC7E,yBAAyB,IAAI,MAAM;IAInC,OAAO,CAAC,mBAAmB;IA0V3B,OAAO,CAAC,wBAAwB;IAmEhC,OAAO,CAAC,2BAA2B;IA0DnC,OAAO,CAAC,yBAAyB;IAuGjC,OAAO,CAAC,2BAA2B;IAsHnC,OAAO,CAAC,qBAAqB;IAqP7B,OAAO,CAAC,uBAAuB;IA6H/B,OAAO,CAAC,2BAA2B;IA8GnC,OAAO,CAAC,iCAAiC;IA6DzC,OAAO,CAAC,4BAA4B;IA4LpC;;;;;;;;;;OAUG;IACH;;;;;;;;;;;OAWG;IAEH,gBAAuB,iCAAiC,EAAE,WAAW,CAAC,MAAM,CAAC,CA4B1E;IAEH;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,8BAA8B;IAiHtC,OAAO,CAAC,uBAAuB;IA4B/B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,sBAAsB;IAwC9B,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,8BAA8B;IAoHtC,OAAO,CAAC,+BAA+B;IAmJvC,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,qBAAqB;IA4N7B,OAAO,CAAC,qBAAqB;IA4H7B,OAAO,CAAC,6BAA6B;IAyKrC,OAAO,CAAC,0BAA0B;IAgClC,OAAO,CAAC,gBAAgB;IAqFxB,OAAO,CAAC,6BAA6B;CAoCtC"}
@@ -52,6 +52,37 @@ export class PostUpdateMigrator {
52
52
  constructor(config) {
53
53
  this.config = config;
54
54
  }
55
+ /**
56
+ * Resolve the set of frameworks this install actively uses, read from
57
+ * the persisted `.instar/config.json` `enabledFrameworks` field.
58
+ *
59
+ * Default (unset / empty / unreadable): `['claude-code']` — the
60
+ * historical behavior, so existing and dual-framework installs are
61
+ * unaffected. A Codex-only install sets `enabledFrameworks:
62
+ * ['codex-cli']`, which makes framework-specific migration steps that
63
+ * scaffold `.claude/`-only artifacts skip cleanly instead of writing
64
+ * files that runtime will never read.
65
+ *
66
+ * Single source of truth for the migrator's framework gating — both
67
+ * the parity-renderings backfill and the legacy `.claude/`-specific
68
+ * steps consult this.
69
+ */
70
+ getEnabledFrameworks() {
71
+ try {
72
+ const configPath = path.join(this.config.stateDir, 'config.json');
73
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
74
+ const enabled = config.enabledFrameworks;
75
+ if (Array.isArray(enabled) && enabled.length > 0) {
76
+ const filtered = enabled.filter((f) => f === 'claude-code' || f === 'codex-cli');
77
+ if (filtered.length > 0)
78
+ return filtered;
79
+ }
80
+ }
81
+ catch {
82
+ // fall through to default
83
+ }
84
+ return ['claude-code'];
85
+ }
55
86
  /**
56
87
  * F-7 atomic-step primitive: register a step that will run once on
57
88
  * the release boundary where `step.version <= toVersion`. Idempotent
@@ -237,15 +268,8 @@ export class PostUpdateMigrator {
237
268
  // Lazy-import registry so PostUpdateMigrator doesn't pull the entire
238
269
  // parity graph at startup for agents that never invoke migrate().
239
270
  const { listParityRules } = await import('../providers/parity/registry.js');
240
- // Determine enabled frameworks from config — default to claude-code+codex-cli
241
- // for portable agents, claude-code-only as a safe fallback.
242
- const frameworks = (() => {
243
- const enabled = config.enabledFrameworks;
244
- if (Array.isArray(enabled) && enabled.length > 0) {
245
- return enabled.filter(f => f === 'claude-code' || f === 'codex-cli');
246
- }
247
- return ['claude-code'];
248
- })();
271
+ // Single source of truth for framework gating (see getEnabledFrameworks).
272
+ const frameworks = this.getEnabledFrameworks();
249
273
  const rules = listParityRules();
250
274
  let renderedCount = 0;
251
275
  let skippedCount = 0;
@@ -2040,6 +2064,37 @@ The user has been talking to you (possibly for days). A generic greeting like "H
2040
2064
  result,
2041
2065
  });
2042
2066
  }
2067
+ // Framework-neutral mirror (portability audit Gap 4). The SessionStart
2068
+ // hook and the IdentityRenderer relay appendix prefer
2069
+ // `.instar/scripts/telegram-reply.sh` because `.instar/` exists for
2070
+ // every runtime, whereas `.claude/scripts/` only exists for Claude
2071
+ // Code. Before this, the script was installed ONLY under
2072
+ // `.claude/scripts/`, so the neutral preference never resolved and a
2073
+ // Codex/Gemini install was told (via AGENTS.md) to run a script that
2074
+ // did not exist. Mirror the same generated content to the neutral
2075
+ // location, install-if-missing + SHA-migrate, identical semantics to
2076
+ // the `.claude/scripts/` copy above.
2077
+ const neutralScriptsDir = path.join(this.config.stateDir, 'scripts');
2078
+ try {
2079
+ fs.mkdirSync(neutralScriptsDir, { recursive: true });
2080
+ const neutralScriptPath = path.join(neutralScriptsDir, 'telegram-reply.sh');
2081
+ if (!fs.existsSync(neutralScriptPath)) {
2082
+ fs.writeFileSync(neutralScriptPath, newContent, { mode: 0o755 });
2083
+ result.upgraded.push('.instar/scripts/telegram-reply.sh (framework-neutral relay)');
2084
+ }
2085
+ else {
2086
+ this.migrateReplyScriptToPortConfig({
2087
+ scriptPath: neutralScriptPath,
2088
+ newContent,
2089
+ label: '.instar/scripts/telegram-reply.sh',
2090
+ stateDir: this.config.stateDir,
2091
+ result,
2092
+ });
2093
+ }
2094
+ }
2095
+ catch (err) {
2096
+ result.errors.push(`.instar/scripts/telegram-reply.sh: ${err instanceof Error ? err.message : String(err)}`);
2097
+ }
2043
2098
  }
2044
2099
  // Slack reply script — file-presence gated (migrator has no hasSlack
2045
2100
  // signal and init.ts doesn't install this one; scripts get deployed
@@ -2095,6 +2150,17 @@ The user has been talking to you (possibly for days). A generic greeting like "H
2095
2150
  * Migrates legacy PostToolUse/Notification hooks to proper SessionStart type.
2096
2151
  */
2097
2152
  migrateSettings(result) {
2153
+ // Framework gate (portability audit Gap 5). `.claude/settings.json` is
2154
+ // Claude Code's hook/MCP configuration — it has zero meaning for a
2155
+ // Codex-only runtime. Skip the entire step when claude-code is not in
2156
+ // the enabled set so a Codex-only install is not scaffolded with
2157
+ // `.claude/` artifacts it will never read. Default (unset config) is
2158
+ // ['claude-code'], so existing and dual-framework installs are
2159
+ // unaffected.
2160
+ if (!this.getEnabledFrameworks().includes('claude-code')) {
2161
+ result.skipped.push('.claude/settings.json (skipped — claude-code not in enabledFrameworks)');
2162
+ return;
2163
+ }
2098
2164
  const settingsPath = path.join(this.config.projectDir, '.claude', 'settings.json');
2099
2165
  if (!fs.existsSync(settingsPath)) {
2100
2166
  result.skipped.push('.claude/settings.json (not found — will be created on next init)');