@aperant/framework 0.16.0 → 0.17.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.
Files changed (35) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/dist/cli/commands/spar-resolve-partner.d.mts +9 -0
  3. package/dist/cli/commands/spar-resolve-partner.d.mts.map +1 -0
  4. package/dist/cli/commands/spar-resolve-partner.mjs +82 -0
  5. package/dist/cli/commands/spar-resolve-partner.mjs.map +1 -0
  6. package/dist/cli/config/gitignore-drift.d.mts.map +1 -1
  7. package/dist/cli/config/gitignore-drift.mjs +1 -0
  8. package/dist/cli/config/gitignore-drift.mjs.map +1 -1
  9. package/dist/cli/config/post-merge-sweep.d.mts.map +1 -1
  10. package/dist/cli/config/post-merge-sweep.mjs +1 -0
  11. package/dist/cli/config/post-merge-sweep.mjs.map +1 -1
  12. package/dist/cli/dispatch.d.mts.map +1 -1
  13. package/dist/cli/dispatch.mjs +2 -0
  14. package/dist/cli/dispatch.mjs.map +1 -1
  15. package/dist/cli/help.d.mts.map +1 -1
  16. package/dist/cli/help.mjs +1 -0
  17. package/dist/cli/help.mjs.map +1 -1
  18. package/dist/cli/host/codex-config.d.mts +78 -0
  19. package/dist/cli/host/codex-config.d.mts.map +1 -0
  20. package/dist/cli/host/codex-config.mjs +169 -0
  21. package/dist/cli/host/codex-config.mjs.map +1 -0
  22. package/dist/cli/wfrun/run.d.mts.map +1 -1
  23. package/dist/cli/wfrun/run.mjs +1 -0
  24. package/dist/cli/wfrun/run.mjs.map +1 -1
  25. package/dist/plugin/.claude-plugin/plugin.json +1 -1
  26. package/dist/plugin/skills/apt-spar/SKILL.md +14 -6
  27. package/package.json +1 -1
  28. package/skills/apt-spar/SKILL.md +14 -6
  29. package/src/cli/commands/spar-resolve-partner.mjs +85 -0
  30. package/src/cli/config/gitignore-drift.mjs +1 -0
  31. package/src/cli/config/post-merge-sweep.mjs +1 -0
  32. package/src/cli/dispatch.mjs +2 -0
  33. package/src/cli/help.mjs +1 -0
  34. package/src/cli/host/codex-config.mjs +165 -0
  35. package/src/cli/wfrun/run.mjs +1 -0
package/CHANGELOG.md CHANGED
@@ -3,7 +3,39 @@
3
3
  All notable changes to `@aperant/framework` are documented here. See
4
4
  [`VERSIONING.md`](VERSIONING.md) for the per-tier contract.
5
5
 
6
- ## [Unreleased]
6
+ ## 0.17.0 — 2026-06-26 — Staleness-proof /apt:spar partner-model resolution
7
+
8
+ ### Added
9
+
10
+ - **`apt-tools spar-resolve-partner [--partner codex|claude|gemini]`** — live,
11
+ fail-closed partner-model resolution for `apt:spar`. Aperant holds ZERO model
12
+ names; the codex partner's model is read LIVE from `~/.codex/config.toml` on
13
+ every invocation with no baked default (mirrors the app's resolver-only,
14
+ provider-is-output, LIVE rule). The codex envelope returns
15
+ `{available, model, source, reason}` plus an explicit transport-walk
16
+ preference (`prefer_self_resolving`, `recommended_walk`); `claude`/`gemini`
17
+ return `reason: 'self_resolving'` + `model: null` (their MCP rungs need no
18
+ model arg). When the config is missing / has no top-level `model` key / is
19
+ unparseable, the command returns `available: false` with a machine `reason`
20
+ (`config_missing` / `no_model_key` / `unparseable`) and never invents a
21
+ default. Backed by an anti-staleness guard test that fails CI on any
22
+ `gpt-*`/`claude-*`/`gemini-*`/`grok-*`/`glm-*` literal in the spar SKILL.md or
23
+ spar CLI files (strict, no allowlist).
24
+
25
+ ### Changed
26
+
27
+ - **`apt:spar` SKILL — staleness-proof codex partner-model selection.** The §3
28
+ codex transport walk now prefers the self-resolving plugin → CLI rungs in the
29
+ common case and demotes the MCP rung to LAST, following the
30
+ `recommended_walk` / `prefer_self_resolving` preference returned by
31
+ `spar-resolve-partner` (the `host.partner_transports.codex` ladder array stays
32
+ MCP-first — only the spar codex *walk* changes). §5/§5a replace the inline
33
+ `grep`/`sed` model snippet with a call to `apt-tools spar-resolve-partner
34
+ --partner codex`, passing the returned `model` verbatim into the codex MCP
35
+ tool call (or marking the MCP rung UNAVAILABLE and falling through on
36
+ `available: false`). The single stale `gpt-5.3-codex` literal is removed.
37
+ **Post-merge: re-run `apt-tools init . --<runtime>` (or `/apt:update`) to
38
+ refresh the installed runtime copies** of `apt-spar/SKILL.md`.
7
39
 
8
40
  ## 0.16.0 — 2026-06-25 — Cross-platform PR-review specialist renamed (xplatform → crossplatform)
9
41
 
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @param {string[]} [args]
3
+ * @returns {{ envelope: object, exitCode: number }}
4
+ */
5
+ export function cmdSparResolvePartner(args?: string[]): {
6
+ envelope: object;
7
+ exitCode: number;
8
+ };
9
+ //# sourceMappingURL=spar-resolve-partner.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spar-resolve-partner.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/spar-resolve-partner.mjs"],"names":[],"mappings":"AAuCA;;;GAGG;AACH,6CAHW,MAAM,EAAE,GACN;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CA2ClD"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * commands/spar-resolve-partner.mjs — live partner-model resolver for `apt:spar`.
3
+ *
4
+ * Layer 1 cmd (returns { envelope, exitCode } via ok()/err() — never calls
5
+ * process.exit / output() / fail() directly; the Layer 2 wrapper in dispatch.mjs
6
+ * writes stdout and exits).
7
+ *
8
+ * `apt-tools spar-resolve-partner --partner <codex|claude|gemini>` returns the
9
+ * model the codex MCP rung must pass, read LIVE from `~/.codex/config.toml` with
10
+ * no baked default (Decision B + C). For claude / gemini the MCP rung needs no
11
+ * model arg, so the command returns `reason: 'self_resolving'` + `model: null`.
12
+ *
13
+ * Each envelope carries an EXPLICIT transport preference (plan-gate spar
14
+ * refinement #2): codex returns `prefer_self_resolving: true` +
15
+ * `recommended_walk: ['plugin','cli','mcp']` so the SKILL agent walks the
16
+ * self-resolving rungs first and only tries the model-naming MCP rung last. The
17
+ * `detect.mjs` `partner_transports` array stays MCP-first (ID-02); the agent
18
+ * follows THIS returned preference rather than inferring rung order from prose.
19
+ */
20
+ import { existsSync, readFileSync } from 'node:fs';
21
+ import { homedir } from 'node:os';
22
+ import { resolveCodexSparModel } from '../host/codex-config.mjs';
23
+ import { err, ok } from '../util/result.mjs';
24
+ /**
25
+ * Parse `--partner <id>` from the positional args. Defaults to `codex`
26
+ * (the only partner whose MCP rung requires a model arg).
27
+ *
28
+ * @param {string[]} args
29
+ * @returns {string}
30
+ */
31
+ function parsePartner(args) {
32
+ if (!Array.isArray(args))
33
+ return 'codex';
34
+ const idx = args.indexOf('--partner');
35
+ if (idx === -1 || idx === args.length - 1)
36
+ return 'codex';
37
+ return String(args[idx + 1]).toLowerCase();
38
+ }
39
+ /**
40
+ * @param {string[]} [args]
41
+ * @returns {{ envelope: object, exitCode: number }}
42
+ */
43
+ export function cmdSparResolvePartner(args = []) {
44
+ const partner = parsePartner(args);
45
+ if (partner === 'codex') {
46
+ const { available, model, source, reason } = resolveCodexSparModel({
47
+ home: homedir(),
48
+ existsSync,
49
+ readFileSync,
50
+ });
51
+ return ok({
52
+ status: 'ok',
53
+ command: 'spar-resolve-partner',
54
+ partner: 'codex',
55
+ available,
56
+ model,
57
+ source,
58
+ reason,
59
+ // Refinement #2 — explicit transport preference the SKILL FOLLOWS.
60
+ prefer_self_resolving: true,
61
+ recommended_walk: ['plugin', 'cli', 'mcp'],
62
+ });
63
+ }
64
+ if (partner === 'claude' || partner === 'gemini') {
65
+ return ok({
66
+ status: 'ok',
67
+ command: 'spar-resolve-partner',
68
+ partner,
69
+ available: true,
70
+ model: null,
71
+ source: null,
72
+ reason: 'self_resolving',
73
+ prefer_self_resolving: false,
74
+ recommended_walk: ['mcp', 'plugin', 'cli'],
75
+ });
76
+ }
77
+ return err(`Unknown partner: ${partner}. Expected codex, claude, or gemini.`, 1, {
78
+ command: 'spar-resolve-partner',
79
+ partner,
80
+ });
81
+ }
82
+ //# sourceMappingURL=spar-resolve-partner.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spar-resolve-partner.mjs","sourceRoot":"","sources":["../../../src/cli/commands/spar-resolve-partner.mjs"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAA;AAE5C;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,IAAI;IACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAA;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACrC,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,OAAO,CAAA;IACzD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAI,GAAG,EAAE;IAC9C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IAElC,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAAC;YAClE,IAAI,EAAE,OAAO,EAAE;YACf,UAAU;YACV,YAAY;SACZ,CAAC,CAAA;QACF,OAAO,EAAE,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,sBAAsB;YAC/B,OAAO,EAAE,OAAO;YAChB,SAAS;YACT,KAAK;YACL,MAAM;YACN,MAAM;YACN,mEAAmE;YACnE,qBAAqB,EAAE,IAAI;YAC3B,gBAAgB,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC;SAC1C,CAAC,CAAA;IACH,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,EAAE,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,sBAAsB;YAC/B,OAAO;YACP,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,gBAAgB;YACxB,qBAAqB,EAAE,KAAK;YAC5B,gBAAgB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC;SAC1C,CAAC,CAAA;IACH,CAAC;IAED,OAAO,GAAG,CAAC,oBAAoB,OAAO,sCAAsC,EAAE,CAAC,EAAE;QAChF,OAAO,EAAE,sBAAsB;QAC/B,OAAO;KACP,CAAC,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"gitignore-drift.d.mts","sourceRoot":"","sources":["../../../src/cli/config/gitignore-drift.mjs"],"names":[],"mappings":"AAyDA;;;;;GAKG;AACH,iGAwBC;AAED;;;;;;;;;;GAUG;AACH;;;;;;;;;;;;EAiCC;AAED;;;;;;;;;;;;;;GAcG;AACH,oEAcC"}
1
+ {"version":3,"file":"gitignore-drift.d.mts","sourceRoot":"","sources":["../../../src/cli/config/gitignore-drift.mjs"],"names":[],"mappings":"AA0DA;;;;;GAKG;AACH,iGAwBC;AAED;;;;;;;;;;GAUG;AACH;;;;;;;;;;;;EAiCC;AAED;;;;;;;;;;;;;;GAcG;AACH,oEAcC"}
@@ -28,6 +28,7 @@ const SKIP_COMMANDS = new Set([
28
28
  'health-check',
29
29
  'toolchain-detect',
30
30
  'host-detect',
31
+ 'spar-resolve-partner', // read-only; spar parses its JSON stdout
31
32
  '--version',
32
33
  '--help',
33
34
  '-v',
@@ -1 +1 @@
1
- {"version":3,"file":"gitignore-drift.mjs","sourceRoot":"","sources":["../../../src/cli/config/gitignore-drift.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitignore-drift.mjs","sourceRoot":"","sources":["../../../src/cli/config/gitignore-drift.mjs"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"post-merge-sweep.d.mts","sourceRoot":"","sources":["../../../src/cli/config/post-merge-sweep.mjs"],"names":[],"mappings":"AA6EA;;;;;;GAMG;AACH;;;;WAmBC;AAED;;;;;;GAMG;AACH,oEAUC;AAED;;;;;GAKG;AACH,8EAQC;AAED;;;;;;;GAOG;AACH,wDAYC;AAED;;;;;;GAMG;AACH;;;EAWC;AAcD;;;;;;;GAOG;AACH,kFAiBC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwFC"}
1
+ {"version":3,"file":"post-merge-sweep.d.mts","sourceRoot":"","sources":["../../../src/cli/config/post-merge-sweep.mjs"],"names":[],"mappings":"AA8EA;;;;;;GAMG;AACH;;;;WAmBC;AAED;;;;;;GAMG;AACH,oEAUC;AAED;;;;;GAKG;AACH,8EAQC;AAED;;;;;;;GAOG;AACH,wDAYC;AAED;;;;;;GAMG;AACH;;;EAWC;AAcD;;;;;;;GAOG;AACH,kFAiBC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwFC"}
@@ -51,6 +51,7 @@ const SKIP_COMMANDS = new Set([
51
51
  'health-check',
52
52
  'toolchain-detect',
53
53
  'host-detect',
54
+ 'spar-resolve-partner', // read-only; spar parses its JSON stdout
54
55
  'task', // recursion guard #1 — close-merged is a `task` subcommand
55
56
  '--version',
56
57
  '--help',
@@ -1 +1 @@
1
- {"version":3,"file":"post-merge-sweep.mjs","sourceRoot":"","sources":["../../../src/cli/config/post-merge-sweep.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post-merge-sweep.mjs","sourceRoot":"","sources":["../../../src/cli/config/post-merge-sweep.mjs"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.d.mts","sourceRoot":"","sources":["../../src/cli/dispatch.mjs"],"names":[],"mappings":"AAsHA;;;;;;GAMG;AACH,uCAFa,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CA+DjD;AAMD,gEAAgE;AAChE,uBADW,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CA4K3D"}
1
+ {"version":3,"file":"dispatch.d.mts","sourceRoot":"","sources":["../../src/cli/dispatch.mjs"],"names":[],"mappings":"AAuHA;;;;;;GAMG;AACH,uCAFa,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CA+DjD;AAMD,gEAAgE;AAChE,uBADW,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CA6K3D"}
@@ -85,6 +85,7 @@ import { cmdRiskCheck } from './commands/risk-check.mjs';
85
85
  import { cmdRoadmap } from './commands/roadmap.mjs';
86
86
  import { cmdRoute } from './commands/route.mjs';
87
87
  import { cmdSeed } from './commands/seed.mjs';
88
+ import { cmdSparResolvePartner } from './commands/spar-resolve-partner.mjs';
88
89
  import { cmdStandards } from './commands/standards.mjs';
89
90
  import { cmdConfig, cmdState, cmdStateArtifacts, cmdStateUpdate } from './commands/state.mjs';
90
91
  import { cmdStatusline } from './commands/statusline.mjs';
@@ -275,6 +276,7 @@ export const DISPATCH = {
275
276
  'author-skill': (args) => wrap(cmdAuthorSkill)(args[1], args.slice(2)),
276
277
  'toolchain-detect': (args) => wrap(cmdToolchainDetect)(args[1], args.slice(2)),
277
278
  'host-detect': () => wrap(cmdHostDetect)(),
279
+ 'spar-resolve-partner': (args) => wrap(cmdSparResolvePartner)(args.slice(1)),
278
280
  reconcile: (args) => wrap(cmdReconcile)(args[1], args.slice(2)),
279
281
  standards: (args) => wrap(cmdStandards)(args[1], args.slice(2)),
280
282
  'precompact-hook': (args) => wrap(cmdPrecompactHook)(args[1]),
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.mjs","sourceRoot":"","sources":["../../src/cli/dispatch.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.mjs","sourceRoot":"","sources":["../../src/cli/dispatch.mjs"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.mts","sourceRoot":"","sources":["../../src/cli/help.mjs"],"names":[],"mappings":"AAMA,kCA8IC"}
1
+ {"version":3,"file":"help.d.mts","sourceRoot":"","sources":["../../src/cli/help.mjs"],"names":[],"mappings":"AAMA,kCA+IC"}
package/dist/cli/help.mjs CHANGED
@@ -108,6 +108,7 @@ Commands:
108
108
  toolchain-detect <project-dir> Detect project toolchain (linter, formatter, typecheck, test, build)
109
109
  health-check <project-dir> Detect dirty state, stale locks, orphaned events, version drift
110
110
  host-detect Detect which AI CLI is running and its capability matrix
111
+ spar-resolve-partner [--partner codex|claude|gemini] apt:spar live partner-model resolution — reads ~/.codex/config.toml LIVE (fail-closed, no baked default); codex returns {available,model,source,reason} + a transport-walk preference, claude/gemini return self_resolving
111
112
  reconcile <project-dir> Resolve orchestration preferences against host capabilities
112
113
 
113
114
  migrate-pr-reviews <project-dir> Migrate legacy .aperant/reviews/ → .aperant/pr-reviews/pr-{N}/rounds/{R}/ (idempotent)
@@ -1 +1 @@
1
- {"version":3,"file":"help.mjs","sourceRoot":"","sources":["../../src/cli/help.mjs"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,UAAU,SAAS;IACxB,MAAM,IAAI,GAAG,GAAG,UAAU,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA0IT,CAAA;IAEnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAA;AAClC,CAAC"}
1
+ {"version":3,"file":"help.mjs","sourceRoot":"","sources":["../../src/cli/help.mjs"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,UAAU,SAAS;IACxB,MAAM,IAAI,GAAG,GAAG,UAAU,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA2IT,CAAA;IAEnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAA;AAClC,CAAC"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * @typedef {Object} ParsedCodexModel
3
+ * @property {string|null} model — the resolved top-level model, or null.
4
+ * @property {null|'no_model_key'|'unparseable'} reason — null when a model
5
+ * resolved; a machine reason otherwise.
6
+ */
7
+ /**
8
+ * Parse the FIRST top-level `model = "<value>"` assignment from codex
9
+ * `config.toml` text. Scans line-by-line, stops at the first `[section]`
10
+ * header (top-level scope ends there), skips comment lines, and resolves the
11
+ * first top-level `model` key.
12
+ *
13
+ * Handles (refinement #1): a leading UTF-8 BOM, an inline `# comment` after the
14
+ * value, a no-space `model="x"` assignment, single-quoted TOML literal strings,
15
+ * and commented-out `#model = "x"` keys (skipped). A malformed / unterminated /
16
+ * escaped-quote value returns `reason: 'unparseable'` — never a truncated
17
+ * string. The first top-level `model` line is decisive: if it is malformed the
18
+ * parser returns `unparseable` rather than scanning for a later valid line
19
+ * (TOML forbids duplicate keys, and a later-line search would be too loose).
20
+ *
21
+ * @param {string} tomlText
22
+ * @returns {ParsedCodexModel}
23
+ */
24
+ export function parseTopLevelCodexModel(tomlText: string): ParsedCodexModel;
25
+ /**
26
+ * @typedef {Object} CodexSparModelResolution
27
+ * @property {boolean} available — true iff a live top-level model resolved.
28
+ * @property {string|null} model — the resolved model, or null when unavailable.
29
+ * @property {string} source — the config source label (`~/.codex/config.toml`).
30
+ * @property {null|'config_missing'|'no_model_key'|'unparseable'} reason
31
+ */
32
+ /**
33
+ * Read `<home>/.codex/config.toml` LIVE and resolve the top-level model.
34
+ * Fail-closed (Decision C / ID-03): a missing file, a missing top-level `model`
35
+ * key, or an unparseable value returns `available: false` with a machine reason
36
+ * and `model: null`. It NEVER substitutes a default. There is no module-level
37
+ * cached value — the file is re-read on every call.
38
+ *
39
+ * `existsSync` / `readFileSync` are injected so tests stay hermetic (no real
40
+ * `$HOME` read).
41
+ *
42
+ * @param {{ home: string, existsSync: (p: string) => boolean, readFileSync: (p: string, enc: string) => string }} deps
43
+ * @returns {CodexSparModelResolution}
44
+ */
45
+ export function resolveCodexSparModel({ home, existsSync, readFileSync }: {
46
+ home: string;
47
+ existsSync: (p: string) => boolean;
48
+ readFileSync: (p: string, enc: string) => string;
49
+ }): CodexSparModelResolution;
50
+ /** Human-facing source label the SKILL + envelope reference. */
51
+ export const CODEX_CONFIG_SOURCE: "~/.codex/config.toml";
52
+ export type ParsedCodexModel = {
53
+ /**
54
+ * — the resolved top-level model, or null.
55
+ */
56
+ model: string | null;
57
+ /**
58
+ * — null when a model
59
+ * resolved; a machine reason otherwise.
60
+ */
61
+ reason: null | "no_model_key" | "unparseable";
62
+ };
63
+ export type CodexSparModelResolution = {
64
+ /**
65
+ * — true iff a live top-level model resolved.
66
+ */
67
+ available: boolean;
68
+ /**
69
+ * — the resolved model, or null when unavailable.
70
+ */
71
+ model: string | null;
72
+ /**
73
+ * — the config source label (`~/.codex/config.toml`).
74
+ */
75
+ source: string;
76
+ reason: null | "config_missing" | "no_model_key" | "unparseable";
77
+ };
78
+ //# sourceMappingURL=codex-config.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-config.d.mts","sourceRoot":"","sources":["../../../src/cli/host/codex-config.mjs"],"names":[],"mappings":"AA4BA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,kDAHW,MAAM,GACJ,gBAAgB,CAyB5B;AAmDD;;;;;;GAMG;AAEH;;;;;;;;;;;;GAYG;AACH,0EAHW;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAAC,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;CAAE,GACpG,wBAAwB,CAmBpC;AA3ID,gEAAgE;AAChE,kCAAmC,sBAAsB,CAAA;;;;;WAI3C,MAAM,GAAC,IAAI;;;;;YACX,IAAI,GAAC,cAAc,GAAC,aAAa;;;;;;eAiGjC,OAAO;;;;WACP,MAAM,GAAC,IAAI;;;;YACX,MAAM;YACN,IAAI,GAAC,gBAAgB,GAAC,cAAc,GAAC,aAAa"}
@@ -0,0 +1,169 @@
1
+ /**
2
+ * host/codex-config.mjs — live codex model resolution for `apt:spar` (Decision B + C).
3
+ *
4
+ * Aperant holds ZERO model names. The only source of truth for the codex
5
+ * partner's model is the user's live `~/.codex/config.toml`, read at invocation
6
+ * time with NO fallback default — mirroring the app's "Model selection —
7
+ * resolver-only, provider-is-output, LIVE" rule.
8
+ *
9
+ * Two exports:
10
+ * - `parseTopLevelCodexModel(tomlText)` — a deterministic top-level TOML
11
+ * `model = "<value>"` line parser (ID-04: top-level only; `[profiles.*]`
12
+ * sections are inactive without `--profile`, which spar never passes).
13
+ * - `resolveCodexSparModel({ home, existsSync, readFileSync })` — reads
14
+ * `<home>/.codex/config.toml` LIVE each call and returns a fail-closed
15
+ * `{ available, model, source, reason }` envelope. NEVER a baked constant.
16
+ *
17
+ * Parser hardening (plan-gate spar refinement #1). The bias rule is
18
+ * fail-closed: when a value is ambiguous, return `reason: 'unparseable'` rather
19
+ * than a wrong or truncated model. A too-strict parse that loses the MCP rung
20
+ * (falling through to the self-resolving plugin/CLI rungs) is acceptable; a
21
+ * too-loose parse that passes a wrong model is a bug.
22
+ */
23
+ import { join } from 'node:path';
24
+ /** Human-facing source label the SKILL + envelope reference. */
25
+ export const CODEX_CONFIG_SOURCE = '~/.codex/config.toml';
26
+ /**
27
+ * @typedef {Object} ParsedCodexModel
28
+ * @property {string|null} model — the resolved top-level model, or null.
29
+ * @property {null|'no_model_key'|'unparseable'} reason — null when a model
30
+ * resolved; a machine reason otherwise.
31
+ */
32
+ /**
33
+ * Parse the FIRST top-level `model = "<value>"` assignment from codex
34
+ * `config.toml` text. Scans line-by-line, stops at the first `[section]`
35
+ * header (top-level scope ends there), skips comment lines, and resolves the
36
+ * first top-level `model` key.
37
+ *
38
+ * Handles (refinement #1): a leading UTF-8 BOM, an inline `# comment` after the
39
+ * value, a no-space `model="x"` assignment, single-quoted TOML literal strings,
40
+ * and commented-out `#model = "x"` keys (skipped). A malformed / unterminated /
41
+ * escaped-quote value returns `reason: 'unparseable'` — never a truncated
42
+ * string. The first top-level `model` line is decisive: if it is malformed the
43
+ * parser returns `unparseable` rather than scanning for a later valid line
44
+ * (TOML forbids duplicate keys, and a later-line search would be too loose).
45
+ *
46
+ * @param {string} tomlText
47
+ * @returns {ParsedCodexModel}
48
+ */
49
+ export function parseTopLevelCodexModel(tomlText) {
50
+ if (typeof tomlText !== 'string')
51
+ return { model: null, reason: 'unparseable' };
52
+ // Strip a leading UTF-8 BOM so `model = "x"` still resolves.
53
+ let text = tomlText;
54
+ if (text.charCodeAt(0) === 0xfeff)
55
+ text = text.slice(1);
56
+ const lines = text.split(/\r?\n/);
57
+ for (const rawLine of lines) {
58
+ const line = rawLine.trimStart();
59
+ // A `[section]` (or `[[array.of.tables]]`) header ends the top-level
60
+ // scope — stop scanning; a model below this point is profile-scoped.
61
+ if (line.startsWith('['))
62
+ break;
63
+ // Comment lines (incl. a commented-out `#model = "x"`) are skipped.
64
+ if (line.startsWith('#'))
65
+ continue;
66
+ // Top-level `model` assignment? The key must be EXACTLY `model` —
67
+ // `\s*=` rejects `model_provider`, `models`, `mcp_model`, etc.
68
+ const assign = line.match(/^model\s*=\s*(.*)$/);
69
+ if (!assign)
70
+ continue;
71
+ // First top-level model line is decisive (fail-closed on malformed).
72
+ return parseQuotedValue(assign[1]);
73
+ }
74
+ return { model: null, reason: 'no_model_key' };
75
+ }
76
+ /**
77
+ * Parse a quoted TOML string value (the RHS of `model =`). Accepts a
78
+ * double-quoted basic string or a single-quoted literal string, each optionally
79
+ * followed by whitespace and/or an inline `# comment`. Any other shape
80
+ * (unquoted, unterminated, escaped, empty, or trailing non-comment junk) is
81
+ * fail-closed `unparseable`.
82
+ *
83
+ * @param {string} value — the text after `model\s*=\s*`.
84
+ * @returns {ParsedCodexModel}
85
+ */
86
+ function parseQuotedValue(value) {
87
+ const first = value[0];
88
+ if (first === '"') {
89
+ const m = value.match(/^"([^"\n]*)"(.*)$/);
90
+ if (!m)
91
+ return { model: null, reason: 'unparseable' }; // unterminated
92
+ const inner = m[1];
93
+ // A backslash means TOML escapes are in play — do NOT attempt to
94
+ // unescape; fail closed rather than risk a wrong/truncated model.
95
+ if (inner.includes('\\'))
96
+ return { model: null, reason: 'unparseable' };
97
+ if (!isOnlyTrailingComment(m[2]))
98
+ return { model: null, reason: 'unparseable' };
99
+ if (inner.length === 0)
100
+ return { model: null, reason: 'unparseable' };
101
+ return { model: inner, reason: null };
102
+ }
103
+ if (first === "'") {
104
+ // TOML literal strings carry no escapes.
105
+ const m = value.match(/^'([^'\n]*)'(.*)$/);
106
+ if (!m)
107
+ return { model: null, reason: 'unparseable' };
108
+ const inner = m[1];
109
+ if (!isOnlyTrailingComment(m[2]))
110
+ return { model: null, reason: 'unparseable' };
111
+ if (inner.length === 0)
112
+ return { model: null, reason: 'unparseable' };
113
+ return { model: inner, reason: null };
114
+ }
115
+ // Unquoted / bare value — codex `model` is always a quoted string; bias
116
+ // fail-closed so a malformed line never yields a wrong model.
117
+ return { model: null, reason: 'unparseable' };
118
+ }
119
+ /**
120
+ * The text after a closing quote must be empty, whitespace, or an inline
121
+ * `# comment`. Anything else is malformed → fail closed.
122
+ *
123
+ * @param {string} rest
124
+ * @returns {boolean}
125
+ */
126
+ function isOnlyTrailingComment(rest) {
127
+ const t = rest.trimStart();
128
+ return t === '' || t.startsWith('#');
129
+ }
130
+ /**
131
+ * @typedef {Object} CodexSparModelResolution
132
+ * @property {boolean} available — true iff a live top-level model resolved.
133
+ * @property {string|null} model — the resolved model, or null when unavailable.
134
+ * @property {string} source — the config source label (`~/.codex/config.toml`).
135
+ * @property {null|'config_missing'|'no_model_key'|'unparseable'} reason
136
+ */
137
+ /**
138
+ * Read `<home>/.codex/config.toml` LIVE and resolve the top-level model.
139
+ * Fail-closed (Decision C / ID-03): a missing file, a missing top-level `model`
140
+ * key, or an unparseable value returns `available: false` with a machine reason
141
+ * and `model: null`. It NEVER substitutes a default. There is no module-level
142
+ * cached value — the file is re-read on every call.
143
+ *
144
+ * `existsSync` / `readFileSync` are injected so tests stay hermetic (no real
145
+ * `$HOME` read).
146
+ *
147
+ * @param {{ home: string, existsSync: (p: string) => boolean, readFileSync: (p: string, enc: string) => string }} deps
148
+ * @returns {CodexSparModelResolution}
149
+ */
150
+ export function resolveCodexSparModel({ home, existsSync, readFileSync }) {
151
+ const source = CODEX_CONFIG_SOURCE;
152
+ const configPath = join(home, '.codex', 'config.toml');
153
+ if (!existsSync(configPath)) {
154
+ return { available: false, model: null, source, reason: 'config_missing' };
155
+ }
156
+ let text;
157
+ try {
158
+ text = readFileSync(configPath, 'utf-8');
159
+ }
160
+ catch {
161
+ return { available: false, model: null, source, reason: 'config_missing' };
162
+ }
163
+ const { model, reason } = parseTopLevelCodexModel(text);
164
+ if (model) {
165
+ return { available: true, model, source, reason: null };
166
+ }
167
+ return { available: false, model: null, source, reason: reason ?? 'unparseable' };
168
+ }
169
+ //# sourceMappingURL=codex-config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-config.mjs","sourceRoot":"","sources":["../../../src/cli/host/codex-config.mjs"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.mts","sourceRoot":"","sources":["../../../src/cli/wfrun/run.mjs"],"names":[],"mappings":"AAmFA;;;;;;;GAOG;AACH,2CAHW,MAAM,EAAE,GACN;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAC,GAAG;IAAC,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAC,CAuBtF;AA8GD;;GAEG;AACH,kDAMC;AA0CD;;;;GAIG;AACH,2EAHW;IAAC,UAAU,EAAE,UAAU,GAAC,MAAM,GAAC,KAAK,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAC,GAAG,CAAC,CAAA;CAAC,GACrI;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,GAAG;IAAC,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,GAAG,EAAE,CAAA;CAAC,CA0NnE;;4BA5cM,mBAAmB"}
1
+ {"version":3,"file":"run.d.mts","sourceRoot":"","sources":["../../../src/cli/wfrun/run.mjs"],"names":[],"mappings":"AAoFA;;;;;;;GAOG;AACH,2CAHW,MAAM,EAAE,GACN;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAC,GAAG;IAAC,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAC,CAuBtF;AA8GD;;GAEG;AACH,kDAMC;AA0CD;;;;GAIG;AACH,2EAHW;IAAC,UAAU,EAAE,UAAU,GAAC,MAAM,GAAC,KAAK,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAC,GAAG,CAAC,CAAA;CAAC,GACrI;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,GAAG;IAAC,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,GAAG,EAAE,CAAA;CAAC,CA0NnE;;4BA7cM,mBAAmB"}
@@ -58,6 +58,7 @@ const TOOL_COMMAND_ALLOWLIST = new Set([
58
58
  'audit',
59
59
  'toolchain-detect',
60
60
  'host-detect',
61
+ 'spar-resolve-partner',
61
62
  'reconcile',
62
63
  'team',
63
64
  'active',
@@ -1 +1 @@
1
- {"version":3,"file":"run.mjs","sourceRoot":"","sources":["../../../src/cli/wfrun/run.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.mjs","sourceRoot":"","sources":["../../../src/cli/wfrun/run.mjs"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aperant",
3
- "version": "0.16.0",
3
+ "version": "0.17.0",
4
4
  "description": "AI coding framework — composable skills for planning, executing, verifying, and reviewing code with any LLM provider. Works as Claude Code commands, Codex tasks, or programmatically.",
5
5
  "author": {
6
6
  "name": "Mikalsen AI",
@@ -137,6 +137,8 @@ Do NOT proceed; self-sparring is sycophancy by construction (the host cannot obj
137
137
 
138
138
  Walk the ladder in order; pick the first rung with `detected: true` (or `"runtime-host-only"` for MCP). **MCP rung has a hard timeout** — default 900000ms (15 min), configurable via `apt-spar.mcp_timeout_ms` in `.aperant/config.json`. The MCP rung is a structured tool call, NOT a Bash invocation, so the Bash tool's 600000ms ceiling does NOT apply — the MCP rung can carry heavy-research partner runs (e.g. Claude Code partner doing multiple minutes of Read/Grep/Bash) where the Bash rungs would hit the host ceiling. On MCP timeout, **automatically fall through to rung 2 or rung 3** — do NOT fail the whole spar. Treat MCP timeout as "rung unavailable for this invocation."
139
139
 
140
+ **Codex walk order (anti-staleness — do NOT infer it from prose).** The codex MCP rung is the ONLY codex transport that forces the agent to NAME a model, and a named model is a staleness vector (the upstream MCP server has no access to the user's config and silently substitutes a stale default; the agent could also substitute one from training memory). The self-resolving rungs (plugin shim → raw CLI) pass NO `--model` and let `codex exec` inherit `~/.codex/config.toml`, so they are staleness-proof by construction. Therefore, for the **codex** partner specifically, prefer the self-resolving plugin → CLI rungs in the common case and demote the MCP rung to **LAST**. Do NOT hand-order the rungs from this prose — run `apt-tools spar-resolve-partner --partner codex` and FOLLOW the preference it returns: walk in the order of its `recommended_walk` array (`["plugin","cli","mcp"]`) and treat `prefer_self_resolving: true` as authoritative. The generic `host.partner_transports.codex` array stays MCP-first (it is data shared with other consumers, not a spar walk order); the resolver's preference overrides it for codex only. **claude / gemini stay MCP-first** — their MCP rungs take only `{prompt}` and need no model, so there is no staleness vector and no walk change.
141
+
140
142
  If all three rungs are unavailable (every rung `detected: false`, or MCP `runtime-host-only` timed out AND rungs 2+3 are `detected: false`), print:
141
143
 
142
144
  ```
@@ -183,7 +185,7 @@ The table below shows the canonical command shape per (partner × rung); the act
183
185
 
184
186
  | Partner | Rung | Command | Notes |
185
187
  |---|---|---|---|
186
- | codex | mcp | tool call: `mcp__codex-mcp__codex({prompt, model})` where `model` is parsed from `~/.codex/config.toml`'s `model = "<value>"` line (see §5a below). | Preferred. 900000ms (15 min) timeout (configurable `apt-spar.mcp_timeout_ms`); on timeout fall through to plugin then CLI. If `~/.codex/config.toml` is missing OR the `model =` line is absent/unparseable, treat MCP rung as UNAVAILABLE and fall through to plugin/CLI — never invent a default model (the MCP server's built-in fallback is stale `gpt-5.3-codex`, which is exactly the bug we are fixing). |
188
+ | codex | mcp | tool call: `mcp__codex-mcp__codex({prompt, model})` where `model` is the `model` field returned by `apt-tools spar-resolve-partner --partner codex` (see §5a below). | **Demoted to LAST for codex** (see the codex walk-order note in §3) — attempt this rung only when the resolver returns `available: true`. 900000ms (15 min) timeout (configurable `apt-spar.mcp_timeout_ms`); on timeout fall through to plugin then CLI. When the resolver returns `available: false`, treat the MCP rung as UNAVAILABLE and fall through to plugin/CLI — never invent a default model (the MCP server silently substitutes a stale hardcoded default model id, which is exactly the bug we are fixing). |
187
189
  | codex | plugin | `node "${CLAUDE_PLUGIN_ROOT}/scripts/codex-companion.mjs" task "$(cat <<'APT_SPAR_PROMPT_EOF' ... APT_SPAR_PROMPT_EOF\n)"` | No `--model` flag — `codex-companion.mjs` invokes `codex exec` which inherits `~/.codex/config.toml` automatically. **NO `--write`. NO `--effort` override.** Per SPAR-04 — spar is conversation, not patching. |
188
190
  | codex | cli | `codex exec "$(cat <<'APT_SPAR_PROMPT_EOF' ... APT_SPAR_PROMPT_EOF\n)"` | Precedent: `apt-pr-review/SKILL.md:1084`. No `--model` flag — `codex exec` inherits `~/.codex/config.toml` automatically. Verify with `codex --help`. |
189
191
  | claude | mcp | tool call: `mcp__claude-code-mcp__claude_code({prompt})` | Preferred. Same 900000ms (15 min) timeout + fallthrough rule. |
@@ -199,15 +201,21 @@ Set the Bash tool's `timeout` parameter to `--timeout-ms` (default 300000).
199
201
 
200
202
  ## 5a. Codex MCP model resolution
201
203
 
202
- The codex MCP rung (table row above) requires an explicit `model` arg sourced from the user's `~/.codex/config.toml`. The MCP server (`codex-mcp-server`) does NOT read `~/.codex/config.toml` itself — when no `model` is passed it falls back to a hardcoded stale `gpt-5.3-codex`, silently overriding the user's actual configured model. Resolve the model exactly once per spar invocation, before the rung-table walk:
204
+ The codex MCP rung (table row above) requires an explicit `model` arg sourced from the user's `~/.codex/config.toml`. The MCP server (`codex-mcp-server`) does NOT read `~/.codex/config.toml` itself — when no `model` is passed it silently substitutes a stale hardcoded default model id, overriding the user's actual configured model. **Aperant holds zero model names** — resolve the model LIVE via the deterministic resolver exactly once per spar invocation, before the rung-table walk:
203
205
 
204
206
  ```bash
205
- # Resolve the codex MCP model exactly once per spar invocation, before the rung table walk
206
- CODEX_MCP_MODEL="$(grep -E '^model = "[^"]+"' "$HOME/.codex/config.toml" 2>/dev/null | head -1 | sed -E 's/^model = "([^"]+)".*/\1/')"
207
- # If empty codex MCP rung is UNAVAILABLE; fall through to plugin/CLI.
207
+ # Resolve the codex partner model + transport preference LIVE, once per spar
208
+ # invocation, before the rung-table walk. apt-tools reads ~/.codex/config.toml
209
+ # fresh and never bakes a default.
210
+ apt-tools spar-resolve-partner --partner codex
208
211
  ```
209
212
 
210
- If `$CODEX_MCP_MODEL` is empty (file missing, `model =` line absent, or value not double-quoted), treat the MCP rung as UNAVAILABLE and fall through to plugin → CLI. **Never invent a default** — the upstream MCP server's built-in `gpt-5.3-codex` fallback is exactly the bug this resolution path exists to fix.
213
+ The command emits a JSON envelope `{available, model, source, reason, prefer_self_resolving, recommended_walk}`:
214
+
215
+ - When `available: true`, pass the returned `model` field **VERBATIM** into the codex MCP tool call's `model` arg — do NOT transform it, and do NOT substitute a model from your own training memory.
216
+ - When `available: false` (the envelope carries a machine `reason` of `config_missing` / `no_model_key` / `unparseable`), treat the codex MCP rung as **UNAVAILABLE** and fall through to plugin → CLI. **Never invent a default** — substituting any model name is exactly the staleness bug this resolution path exists to fix. The plugin and raw-CLI rungs pass no `--model` and let `codex exec` self-resolve from the user's live config, so the fall-through is always staleness-proof.
217
+
218
+ Follow the envelope's `recommended_walk` / `prefer_self_resolving` for the rung order (see the codex walk-order note in §3) rather than ordering the rungs by hand.
211
219
 
212
220
  **Prompt-quoting safety.** The prompt is user-controlled (it comes from `[topic]` and/or conversation context) and may legitimately contain double quotes, dollar signs, backticks, or `$(...)` substitution that bash would otherwise expand or break on. NEVER interpolate `<prompt>` directly inside a double-quoted shell argument. Instead, pipe via a here-document so the shell treats the body as opaque text:
213
221
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aperant/framework",
3
- "version": "0.16.0",
3
+ "version": "0.17.0",
4
4
  "description": "AI coding framework — composable skills for planning, executing, verifying, and reviewing code with any LLM provider. Works as Claude Code commands, Codex tasks, or programmatically.",
5
5
  "author": "Mikalsen AI <hello@mikalsen.ai>",
6
6
  "type": "module",
@@ -137,6 +137,8 @@ Do NOT proceed; self-sparring is sycophancy by construction (the host cannot obj
137
137
 
138
138
  Walk the ladder in order; pick the first rung with `detected: true` (or `"runtime-host-only"` for MCP). **MCP rung has a hard timeout** — default 900000ms (15 min), configurable via `apt-spar.mcp_timeout_ms` in `.aperant/config.json`. The MCP rung is a structured tool call, NOT a Bash invocation, so the Bash tool's 600000ms ceiling does NOT apply — the MCP rung can carry heavy-research partner runs (e.g. Claude Code partner doing multiple minutes of Read/Grep/Bash) where the Bash rungs would hit the host ceiling. On MCP timeout, **automatically fall through to rung 2 or rung 3** — do NOT fail the whole spar. Treat MCP timeout as "rung unavailable for this invocation."
139
139
 
140
+ **Codex walk order (anti-staleness — do NOT infer it from prose).** The codex MCP rung is the ONLY codex transport that forces the agent to NAME a model, and a named model is a staleness vector (the upstream MCP server has no access to the user's config and silently substitutes a stale default; the agent could also substitute one from training memory). The self-resolving rungs (plugin shim → raw CLI) pass NO `--model` and let `codex exec` inherit `~/.codex/config.toml`, so they are staleness-proof by construction. Therefore, for the **codex** partner specifically, prefer the self-resolving plugin → CLI rungs in the common case and demote the MCP rung to **LAST**. Do NOT hand-order the rungs from this prose — run `apt-tools spar-resolve-partner --partner codex` and FOLLOW the preference it returns: walk in the order of its `recommended_walk` array (`["plugin","cli","mcp"]`) and treat `prefer_self_resolving: true` as authoritative. The generic `host.partner_transports.codex` array stays MCP-first (it is data shared with other consumers, not a spar walk order); the resolver's preference overrides it for codex only. **claude / gemini stay MCP-first** — their MCP rungs take only `{prompt}` and need no model, so there is no staleness vector and no walk change.
141
+
140
142
  If all three rungs are unavailable (every rung `detected: false`, or MCP `runtime-host-only` timed out AND rungs 2+3 are `detected: false`), print:
141
143
 
142
144
  ```
@@ -183,7 +185,7 @@ The table below shows the canonical command shape per (partner × rung); the act
183
185
 
184
186
  | Partner | Rung | Command | Notes |
185
187
  |---|---|---|---|
186
- | codex | mcp | tool call: `mcp__codex-mcp__codex({prompt, model})` where `model` is parsed from `~/.codex/config.toml`'s `model = "<value>"` line (see §5a below). | Preferred. 900000ms (15 min) timeout (configurable `apt-spar.mcp_timeout_ms`); on timeout fall through to plugin then CLI. If `~/.codex/config.toml` is missing OR the `model =` line is absent/unparseable, treat MCP rung as UNAVAILABLE and fall through to plugin/CLI — never invent a default model (the MCP server's built-in fallback is stale `gpt-5.3-codex`, which is exactly the bug we are fixing). |
188
+ | codex | mcp | tool call: `mcp__codex-mcp__codex({prompt, model})` where `model` is the `model` field returned by `apt-tools spar-resolve-partner --partner codex` (see §5a below). | **Demoted to LAST for codex** (see the codex walk-order note in §3) — attempt this rung only when the resolver returns `available: true`. 900000ms (15 min) timeout (configurable `apt-spar.mcp_timeout_ms`); on timeout fall through to plugin then CLI. When the resolver returns `available: false`, treat the MCP rung as UNAVAILABLE and fall through to plugin/CLI — never invent a default model (the MCP server silently substitutes a stale hardcoded default model id, which is exactly the bug we are fixing). |
187
189
  | codex | plugin | `node "${CLAUDE_PLUGIN_ROOT}/scripts/codex-companion.mjs" task "$(cat <<'APT_SPAR_PROMPT_EOF' ... APT_SPAR_PROMPT_EOF\n)"` | No `--model` flag — `codex-companion.mjs` invokes `codex exec` which inherits `~/.codex/config.toml` automatically. **NO `--write`. NO `--effort` override.** Per SPAR-04 — spar is conversation, not patching. |
188
190
  | codex | cli | `codex exec "$(cat <<'APT_SPAR_PROMPT_EOF' ... APT_SPAR_PROMPT_EOF\n)"` | Precedent: `apt-pr-review/SKILL.md:1084`. No `--model` flag — `codex exec` inherits `~/.codex/config.toml` automatically. Verify with `codex --help`. |
189
191
  | claude | mcp | tool call: `mcp__claude-code-mcp__claude_code({prompt})` | Preferred. Same 900000ms (15 min) timeout + fallthrough rule. |
@@ -199,15 +201,21 @@ Set the Bash tool's `timeout` parameter to `--timeout-ms` (default 300000).
199
201
 
200
202
  ## 5a. Codex MCP model resolution
201
203
 
202
- The codex MCP rung (table row above) requires an explicit `model` arg sourced from the user's `~/.codex/config.toml`. The MCP server (`codex-mcp-server`) does NOT read `~/.codex/config.toml` itself — when no `model` is passed it falls back to a hardcoded stale `gpt-5.3-codex`, silently overriding the user's actual configured model. Resolve the model exactly once per spar invocation, before the rung-table walk:
204
+ The codex MCP rung (table row above) requires an explicit `model` arg sourced from the user's `~/.codex/config.toml`. The MCP server (`codex-mcp-server`) does NOT read `~/.codex/config.toml` itself — when no `model` is passed it silently substitutes a stale hardcoded default model id, overriding the user's actual configured model. **Aperant holds zero model names** — resolve the model LIVE via the deterministic resolver exactly once per spar invocation, before the rung-table walk:
203
205
 
204
206
  ```bash
205
- # Resolve the codex MCP model exactly once per spar invocation, before the rung table walk
206
- CODEX_MCP_MODEL="$(grep -E '^model = "[^"]+"' "$HOME/.codex/config.toml" 2>/dev/null | head -1 | sed -E 's/^model = "([^"]+)".*/\1/')"
207
- # If empty codex MCP rung is UNAVAILABLE; fall through to plugin/CLI.
207
+ # Resolve the codex partner model + transport preference LIVE, once per spar
208
+ # invocation, before the rung-table walk. apt-tools reads ~/.codex/config.toml
209
+ # fresh and never bakes a default.
210
+ apt-tools spar-resolve-partner --partner codex
208
211
  ```
209
212
 
210
- If `$CODEX_MCP_MODEL` is empty (file missing, `model =` line absent, or value not double-quoted), treat the MCP rung as UNAVAILABLE and fall through to plugin → CLI. **Never invent a default** — the upstream MCP server's built-in `gpt-5.3-codex` fallback is exactly the bug this resolution path exists to fix.
213
+ The command emits a JSON envelope `{available, model, source, reason, prefer_self_resolving, recommended_walk}`:
214
+
215
+ - When `available: true`, pass the returned `model` field **VERBATIM** into the codex MCP tool call's `model` arg — do NOT transform it, and do NOT substitute a model from your own training memory.
216
+ - When `available: false` (the envelope carries a machine `reason` of `config_missing` / `no_model_key` / `unparseable`), treat the codex MCP rung as **UNAVAILABLE** and fall through to plugin → CLI. **Never invent a default** — substituting any model name is exactly the staleness bug this resolution path exists to fix. The plugin and raw-CLI rungs pass no `--model` and let `codex exec` self-resolve from the user's live config, so the fall-through is always staleness-proof.
217
+
218
+ Follow the envelope's `recommended_walk` / `prefer_self_resolving` for the rung order (see the codex walk-order note in §3) rather than ordering the rungs by hand.
211
219
 
212
220
  **Prompt-quoting safety.** The prompt is user-controlled (it comes from `[topic]` and/or conversation context) and may legitimately contain double quotes, dollar signs, backticks, or `$(...)` substitution that bash would otherwise expand or break on. NEVER interpolate `<prompt>` directly inside a double-quoted shell argument. Instead, pipe via a here-document so the shell treats the body as opaque text:
213
221
 
@@ -0,0 +1,85 @@
1
+ /**
2
+ * commands/spar-resolve-partner.mjs — live partner-model resolver for `apt:spar`.
3
+ *
4
+ * Layer 1 cmd (returns { envelope, exitCode } via ok()/err() — never calls
5
+ * process.exit / output() / fail() directly; the Layer 2 wrapper in dispatch.mjs
6
+ * writes stdout and exits).
7
+ *
8
+ * `apt-tools spar-resolve-partner --partner <codex|claude|gemini>` returns the
9
+ * model the codex MCP rung must pass, read LIVE from `~/.codex/config.toml` with
10
+ * no baked default (Decision B + C). For claude / gemini the MCP rung needs no
11
+ * model arg, so the command returns `reason: 'self_resolving'` + `model: null`.
12
+ *
13
+ * Each envelope carries an EXPLICIT transport preference (plan-gate spar
14
+ * refinement #2): codex returns `prefer_self_resolving: true` +
15
+ * `recommended_walk: ['plugin','cli','mcp']` so the SKILL agent walks the
16
+ * self-resolving rungs first and only tries the model-naming MCP rung last. The
17
+ * `detect.mjs` `partner_transports` array stays MCP-first (ID-02); the agent
18
+ * follows THIS returned preference rather than inferring rung order from prose.
19
+ */
20
+
21
+ import { existsSync, readFileSync } from 'node:fs'
22
+ import { homedir } from 'node:os'
23
+ import { resolveCodexSparModel } from '../host/codex-config.mjs'
24
+ import { err, ok } from '../util/result.mjs'
25
+
26
+ /**
27
+ * Parse `--partner <id>` from the positional args. Defaults to `codex`
28
+ * (the only partner whose MCP rung requires a model arg).
29
+ *
30
+ * @param {string[]} args
31
+ * @returns {string}
32
+ */
33
+ function parsePartner(args) {
34
+ if (!Array.isArray(args)) return 'codex'
35
+ const idx = args.indexOf('--partner')
36
+ if (idx === -1 || idx === args.length - 1) return 'codex'
37
+ return String(args[idx + 1]).toLowerCase()
38
+ }
39
+
40
+ /**
41
+ * @param {string[]} [args]
42
+ * @returns {{ envelope: object, exitCode: number }}
43
+ */
44
+ export function cmdSparResolvePartner(args = []) {
45
+ const partner = parsePartner(args)
46
+
47
+ if (partner === 'codex') {
48
+ const { available, model, source, reason } = resolveCodexSparModel({
49
+ home: homedir(),
50
+ existsSync,
51
+ readFileSync,
52
+ })
53
+ return ok({
54
+ status: 'ok',
55
+ command: 'spar-resolve-partner',
56
+ partner: 'codex',
57
+ available,
58
+ model,
59
+ source,
60
+ reason,
61
+ // Refinement #2 — explicit transport preference the SKILL FOLLOWS.
62
+ prefer_self_resolving: true,
63
+ recommended_walk: ['plugin', 'cli', 'mcp'],
64
+ })
65
+ }
66
+
67
+ if (partner === 'claude' || partner === 'gemini') {
68
+ return ok({
69
+ status: 'ok',
70
+ command: 'spar-resolve-partner',
71
+ partner,
72
+ available: true,
73
+ model: null,
74
+ source: null,
75
+ reason: 'self_resolving',
76
+ prefer_self_resolving: false,
77
+ recommended_walk: ['mcp', 'plugin', 'cli'],
78
+ })
79
+ }
80
+
81
+ return err(`Unknown partner: ${partner}. Expected codex, claude, or gemini.`, 1, {
82
+ command: 'spar-resolve-partner',
83
+ partner,
84
+ })
85
+ }
@@ -30,6 +30,7 @@ const SKIP_COMMANDS = new Set([
30
30
  'health-check',
31
31
  'toolchain-detect',
32
32
  'host-detect',
33
+ 'spar-resolve-partner', // read-only; spar parses its JSON stdout
33
34
  '--version',
34
35
  '--help',
35
36
  '-v',
@@ -53,6 +53,7 @@ const SKIP_COMMANDS = new Set([
53
53
  'health-check',
54
54
  'toolchain-detect',
55
55
  'host-detect',
56
+ 'spar-resolve-partner', // read-only; spar parses its JSON stdout
56
57
  'task', // recursion guard #1 — close-merged is a `task` subcommand
57
58
  '--version',
58
59
  '--help',
@@ -86,6 +86,7 @@ import { cmdRiskCheck } from './commands/risk-check.mjs'
86
86
  import { cmdRoadmap } from './commands/roadmap.mjs'
87
87
  import { cmdRoute } from './commands/route.mjs'
88
88
  import { cmdSeed } from './commands/seed.mjs'
89
+ import { cmdSparResolvePartner } from './commands/spar-resolve-partner.mjs'
89
90
  import { cmdStandards } from './commands/standards.mjs'
90
91
  import { cmdConfig, cmdState, cmdStateArtifacts, cmdStateUpdate } from './commands/state.mjs'
91
92
  import { cmdStatusline } from './commands/statusline.mjs'
@@ -285,6 +286,7 @@ export const DISPATCH = {
285
286
  'author-skill': (args) => wrap(cmdAuthorSkill)(args[1], args.slice(2)),
286
287
  'toolchain-detect': (args) => wrap(cmdToolchainDetect)(args[1], args.slice(2)),
287
288
  'host-detect': () => wrap(cmdHostDetect)(),
289
+ 'spar-resolve-partner': (args) => wrap(cmdSparResolvePartner)(args.slice(1)),
288
290
  reconcile: (args) => wrap(cmdReconcile)(args[1], args.slice(2)),
289
291
  standards: (args) => wrap(cmdStandards)(args[1], args.slice(2)),
290
292
  'precompact-hook': (args) => wrap(cmdPrecompactHook)(args[1]),
package/src/cli/help.mjs CHANGED
@@ -110,6 +110,7 @@ Commands:
110
110
  toolchain-detect <project-dir> Detect project toolchain (linter, formatter, typecheck, test, build)
111
111
  health-check <project-dir> Detect dirty state, stale locks, orphaned events, version drift
112
112
  host-detect Detect which AI CLI is running and its capability matrix
113
+ spar-resolve-partner [--partner codex|claude|gemini] apt:spar live partner-model resolution — reads ~/.codex/config.toml LIVE (fail-closed, no baked default); codex returns {available,model,source,reason} + a transport-walk preference, claude/gemini return self_resolving
113
114
  reconcile <project-dir> Resolve orchestration preferences against host capabilities
114
115
 
115
116
  migrate-pr-reviews <project-dir> Migrate legacy .aperant/reviews/ → .aperant/pr-reviews/pr-{N}/rounds/{R}/ (idempotent)
@@ -0,0 +1,165 @@
1
+ /**
2
+ * host/codex-config.mjs — live codex model resolution for `apt:spar` (Decision B + C).
3
+ *
4
+ * Aperant holds ZERO model names. The only source of truth for the codex
5
+ * partner's model is the user's live `~/.codex/config.toml`, read at invocation
6
+ * time with NO fallback default — mirroring the app's "Model selection —
7
+ * resolver-only, provider-is-output, LIVE" rule.
8
+ *
9
+ * Two exports:
10
+ * - `parseTopLevelCodexModel(tomlText)` — a deterministic top-level TOML
11
+ * `model = "<value>"` line parser (ID-04: top-level only; `[profiles.*]`
12
+ * sections are inactive without `--profile`, which spar never passes).
13
+ * - `resolveCodexSparModel({ home, existsSync, readFileSync })` — reads
14
+ * `<home>/.codex/config.toml` LIVE each call and returns a fail-closed
15
+ * `{ available, model, source, reason }` envelope. NEVER a baked constant.
16
+ *
17
+ * Parser hardening (plan-gate spar refinement #1). The bias rule is
18
+ * fail-closed: when a value is ambiguous, return `reason: 'unparseable'` rather
19
+ * than a wrong or truncated model. A too-strict parse that loses the MCP rung
20
+ * (falling through to the self-resolving plugin/CLI rungs) is acceptable; a
21
+ * too-loose parse that passes a wrong model is a bug.
22
+ */
23
+
24
+ import { join } from 'node:path'
25
+
26
+ /** Human-facing source label the SKILL + envelope reference. */
27
+ export const CODEX_CONFIG_SOURCE = '~/.codex/config.toml'
28
+
29
+ /**
30
+ * @typedef {Object} ParsedCodexModel
31
+ * @property {string|null} model — the resolved top-level model, or null.
32
+ * @property {null|'no_model_key'|'unparseable'} reason — null when a model
33
+ * resolved; a machine reason otherwise.
34
+ */
35
+
36
+ /**
37
+ * Parse the FIRST top-level `model = "<value>"` assignment from codex
38
+ * `config.toml` text. Scans line-by-line, stops at the first `[section]`
39
+ * header (top-level scope ends there), skips comment lines, and resolves the
40
+ * first top-level `model` key.
41
+ *
42
+ * Handles (refinement #1): a leading UTF-8 BOM, an inline `# comment` after the
43
+ * value, a no-space `model="x"` assignment, single-quoted TOML literal strings,
44
+ * and commented-out `#model = "x"` keys (skipped). A malformed / unterminated /
45
+ * escaped-quote value returns `reason: 'unparseable'` — never a truncated
46
+ * string. The first top-level `model` line is decisive: if it is malformed the
47
+ * parser returns `unparseable` rather than scanning for a later valid line
48
+ * (TOML forbids duplicate keys, and a later-line search would be too loose).
49
+ *
50
+ * @param {string} tomlText
51
+ * @returns {ParsedCodexModel}
52
+ */
53
+ export function parseTopLevelCodexModel(tomlText) {
54
+ if (typeof tomlText !== 'string') return { model: null, reason: 'unparseable' }
55
+
56
+ // Strip a leading UTF-8 BOM so `model = "x"` still resolves.
57
+ let text = tomlText
58
+ if (text.charCodeAt(0) === 0xfeff) text = text.slice(1)
59
+
60
+ const lines = text.split(/\r?\n/)
61
+ for (const rawLine of lines) {
62
+ const line = rawLine.trimStart()
63
+ // A `[section]` (or `[[array.of.tables]]`) header ends the top-level
64
+ // scope — stop scanning; a model below this point is profile-scoped.
65
+ if (line.startsWith('[')) break
66
+ // Comment lines (incl. a commented-out `#model = "x"`) are skipped.
67
+ if (line.startsWith('#')) continue
68
+ // Top-level `model` assignment? The key must be EXACTLY `model` —
69
+ // `\s*=` rejects `model_provider`, `models`, `mcp_model`, etc.
70
+ const assign = line.match(/^model\s*=\s*(.*)$/)
71
+ if (!assign) continue
72
+ // First top-level model line is decisive (fail-closed on malformed).
73
+ return parseQuotedValue(assign[1])
74
+ }
75
+ return { model: null, reason: 'no_model_key' }
76
+ }
77
+
78
+ /**
79
+ * Parse a quoted TOML string value (the RHS of `model =`). Accepts a
80
+ * double-quoted basic string or a single-quoted literal string, each optionally
81
+ * followed by whitespace and/or an inline `# comment`. Any other shape
82
+ * (unquoted, unterminated, escaped, empty, or trailing non-comment junk) is
83
+ * fail-closed `unparseable`.
84
+ *
85
+ * @param {string} value — the text after `model\s*=\s*`.
86
+ * @returns {ParsedCodexModel}
87
+ */
88
+ function parseQuotedValue(value) {
89
+ const first = value[0]
90
+ if (first === '"') {
91
+ const m = value.match(/^"([^"\n]*)"(.*)$/)
92
+ if (!m) return { model: null, reason: 'unparseable' } // unterminated
93
+ const inner = m[1]
94
+ // A backslash means TOML escapes are in play — do NOT attempt to
95
+ // unescape; fail closed rather than risk a wrong/truncated model.
96
+ if (inner.includes('\\')) return { model: null, reason: 'unparseable' }
97
+ if (!isOnlyTrailingComment(m[2])) return { model: null, reason: 'unparseable' }
98
+ if (inner.length === 0) return { model: null, reason: 'unparseable' }
99
+ return { model: inner, reason: null }
100
+ }
101
+ if (first === "'") {
102
+ // TOML literal strings carry no escapes.
103
+ const m = value.match(/^'([^'\n]*)'(.*)$/)
104
+ if (!m) return { model: null, reason: 'unparseable' }
105
+ const inner = m[1]
106
+ if (!isOnlyTrailingComment(m[2])) return { model: null, reason: 'unparseable' }
107
+ if (inner.length === 0) return { model: null, reason: 'unparseable' }
108
+ return { model: inner, reason: null }
109
+ }
110
+ // Unquoted / bare value — codex `model` is always a quoted string; bias
111
+ // fail-closed so a malformed line never yields a wrong model.
112
+ return { model: null, reason: 'unparseable' }
113
+ }
114
+
115
+ /**
116
+ * The text after a closing quote must be empty, whitespace, or an inline
117
+ * `# comment`. Anything else is malformed → fail closed.
118
+ *
119
+ * @param {string} rest
120
+ * @returns {boolean}
121
+ */
122
+ function isOnlyTrailingComment(rest) {
123
+ const t = rest.trimStart()
124
+ return t === '' || t.startsWith('#')
125
+ }
126
+
127
+ /**
128
+ * @typedef {Object} CodexSparModelResolution
129
+ * @property {boolean} available — true iff a live top-level model resolved.
130
+ * @property {string|null} model — the resolved model, or null when unavailable.
131
+ * @property {string} source — the config source label (`~/.codex/config.toml`).
132
+ * @property {null|'config_missing'|'no_model_key'|'unparseable'} reason
133
+ */
134
+
135
+ /**
136
+ * Read `<home>/.codex/config.toml` LIVE and resolve the top-level model.
137
+ * Fail-closed (Decision C / ID-03): a missing file, a missing top-level `model`
138
+ * key, or an unparseable value returns `available: false` with a machine reason
139
+ * and `model: null`. It NEVER substitutes a default. There is no module-level
140
+ * cached value — the file is re-read on every call.
141
+ *
142
+ * `existsSync` / `readFileSync` are injected so tests stay hermetic (no real
143
+ * `$HOME` read).
144
+ *
145
+ * @param {{ home: string, existsSync: (p: string) => boolean, readFileSync: (p: string, enc: string) => string }} deps
146
+ * @returns {CodexSparModelResolution}
147
+ */
148
+ export function resolveCodexSparModel({ home, existsSync, readFileSync }) {
149
+ const source = CODEX_CONFIG_SOURCE
150
+ const configPath = join(home, '.codex', 'config.toml')
151
+ if (!existsSync(configPath)) {
152
+ return { available: false, model: null, source, reason: 'config_missing' }
153
+ }
154
+ let text
155
+ try {
156
+ text = readFileSync(configPath, 'utf-8')
157
+ } catch {
158
+ return { available: false, model: null, source, reason: 'config_missing' }
159
+ }
160
+ const { model, reason } = parseTopLevelCodexModel(text)
161
+ if (model) {
162
+ return { available: true, model, source, reason: null }
163
+ }
164
+ return { available: false, model: null, source, reason: reason ?? 'unparseable' }
165
+ }
@@ -66,6 +66,7 @@ const TOOL_COMMAND_ALLOWLIST = new Set([
66
66
  'audit',
67
67
  'toolchain-detect',
68
68
  'host-detect',
69
+ 'spar-resolve-partner',
69
70
  'reconcile',
70
71
  'team',
71
72
  'active',