@jmanuelcorral/openteam 0.13.0 → 0.13.1

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.es.md CHANGED
@@ -822,7 +822,7 @@ Consulta [docs/compatibility.md](docs/compatibility.md). Resumen verificado el `
822
822
 
823
823
  | Superficie | Versión / contrato |
824
824
  | --- | --- |
825
- | openteam | `0.13.0`; versión actual del paquete |
825
+ | openteam | `0.13.1`; versión actual del paquete |
826
826
  | `@opencode-ai/plugin` | `1.18.19` |
827
827
  | `@opencode-ai/sdk` | `1.18.19` |
828
828
  | Hook de routing | `chat.message`; no `chat.params` para cambiar modelo |
package/README.md CHANGED
@@ -711,7 +711,7 @@ See [docs/compatibility.md](docs/compatibility.md). Verified summary as of `2026
711
711
 
712
712
  | Surface | Version / contract |
713
713
  | --- | --- |
714
- | openteam | `0.13.0`; current package version |
714
+ | openteam | `0.13.1`; current package version |
715
715
  | `@opencode-ai/plugin` | `1.18.19` |
716
716
  | `@opencode-ai/sdk` | `1.18.19` |
717
717
  | Routing hook | `chat.message`; not `chat.params` for model changes |
package/dist/cli.js CHANGED
@@ -10870,6 +10870,20 @@ function rosterHealthSection(audit, loadError, rosterRoleCount) {
10870
10870
  }
10871
10871
  return lines;
10872
10872
  }
10873
+ function gitignoreSection(gitignore) {
10874
+ if (gitignore.missingRules.length === 0) {
10875
+ return [
10876
+ " gitignore:",
10877
+ ` ✓ ${gitignore.path} ignores openteam's generated runtime state.`
10878
+ ];
10879
+ }
10880
+ const quoted = gitignore.missingRules.map((rule) => `\`${rule}\``).join(", ");
10881
+ const lines = [" gitignore:"];
10882
+ lines.push(gitignore.exists ? ` ✗ ${gitignore.path} is missing openteam ignore rule(s): ${gitignore.missingRules.join(", ")}` : ` ✗ ${gitignore.path} does not exist, so no openteam ignore rule(s) are in place: ${gitignore.missingRules.join(", ")}`);
10883
+ lines.push(" problem: openteam writes machine-local runtime output (telemetry, graph state, soak recordings) that must not be committed.");
10884
+ lines.push(` remedy: add ${quoted} to ${gitignore.path} (or re-run \`openteam setup\`), then re-run \`openteam doctor\`.`);
10885
+ return lines;
10886
+ }
10873
10887
  function agentModelsSection(diagnostics, searchedPaths) {
10874
10888
  const lines = [" agent models:"];
10875
10889
  if (diagnostics.length === 0) {
@@ -10917,6 +10931,9 @@ function renderDoctor(input) {
10917
10931
  lines.push(...diagnosticsSection(input.diagnostics));
10918
10932
  }
10919
10933
  lines.push(...rosterHealthSection(input.rosterAudit, input.rosterLoadError, input.rosterRoleCount));
10934
+ if (input.gitignore !== undefined) {
10935
+ lines.push(...gitignoreSection(input.gitignore));
10936
+ }
10920
10937
  if (input.otelBackend !== undefined) {
10921
10938
  const otel = input.otelBackend;
10922
10939
  lines.push(" opentelemetry:");
@@ -11240,6 +11257,12 @@ function mergeOpencodeConfigs(base, override) {
11240
11257
  return result;
11241
11258
  }
11242
11259
 
11260
+ // src/storage/graph/soakRecorder.ts
11261
+ var SOAK_EVIDENCE_DIR = ".opencode/soak";
11262
+ var SOAK_RECORDER_BASE_DIR = ".opencode";
11263
+ var SOAK_RECORDER_ID_FILENAME = "soak-recorder-id";
11264
+ var SOAK_RECORDER_ID_PATH = `${SOAK_RECORDER_BASE_DIR}/${SOAK_RECORDER_ID_FILENAME}`;
11265
+
11243
11266
  // src/commands/frontierCatalog.ts
11244
11267
  function weightedCost(inputUSD, outputUSD) {
11245
11268
  return 0.75 * inputUSD + 0.25 * outputUSD;
@@ -11277,6 +11300,11 @@ var GENERATED_OPENTEAM_STATE_PATHS = [
11277
11300
  DEFAULT_STORAGE_SQLITE_INDEX_PATH,
11278
11301
  DEFAULT_MEMORY_INDEX_PATH
11279
11302
  ];
11303
+ var GENERATED_OPENTEAM_STATE_GROUPS = [
11304
+ { kind: "dir", paths: GENERATED_OPENTEAM_STATE_PATHS },
11305
+ { kind: "dir", paths: [SOAK_EVIDENCE_DIR] },
11306
+ { kind: "file", paths: [SOAK_RECORDER_ID_PATH] }
11307
+ ];
11280
11308
  var OPENCODE_DIR = ".opencode";
11281
11309
  var AGENT_DIR = `${OPENCODE_DIR}/agent`;
11282
11310
  var ROLE_AGENT_DESCRIPTIONS = {
@@ -11347,17 +11375,16 @@ function commonGeneratedStateRoot(paths) {
11347
11375
  }
11348
11376
  return common.join("/");
11349
11377
  }
11350
- function generatedStateIgnoreRule() {
11351
- const root = commonGeneratedStateRoot(GENERATED_OPENTEAM_STATE_PATHS);
11378
+ function generatedStateIgnoreRule(group) {
11379
+ const root = commonGeneratedStateRoot(group.paths);
11352
11380
  const opencodePrefix = `${OPENCODE_DIR}/`;
11353
11381
  if (!root.startsWith(opencodePrefix)) {
11354
11382
  throw new Error(`generated openteam state path is outside ${OPENCODE_DIR}`);
11355
11383
  }
11356
- return `${root.slice(opencodePrefix.length)}/`;
11384
+ const rule = root.slice(opencodePrefix.length);
11385
+ return group.kind === "dir" ? `${rule}/` : rule;
11357
11386
  }
11358
- var OPENCODE_GITIGNORE_GENERATED_STATE_RULES = [
11359
- generatedStateIgnoreRule()
11360
- ];
11387
+ var OPENCODE_GITIGNORE_GENERATED_STATE_RULES = GENERATED_OPENTEAM_STATE_GROUPS.map(generatedStateIgnoreRule);
11361
11388
  var LEGACY_OPENCODE_GITIGNORE_STATE_RULES = ["openteam/"];
11362
11389
  var LEGACY_LOCAL_OPENCODE_GITIGNORE_RULES = [
11363
11390
  "openteam/sessions/",
@@ -11393,6 +11420,13 @@ function buildOpencodeGitignore(existing = "") {
11393
11420
  `)}
11394
11421
  `;
11395
11422
  }
11423
+ function activeGitignoreRules(gitignore) {
11424
+ return gitignore.split(/\r?\n/).map(normalizeGitignoreRule).filter((line) => line.length > 0 && !line.startsWith("#"));
11425
+ }
11426
+ function missingGeneratedStateRules(gitignore) {
11427
+ const present = new Set(activeGitignoreRules(gitignore));
11428
+ return OPENCODE_GITIGNORE_GENERATED_STATE_RULES.filter((rule) => !present.has(rule));
11429
+ }
11396
11430
  var KNOWN_RUNTIMES = [
11397
11431
  {
11398
11432
  id: "ollama",
@@ -11956,7 +11990,7 @@ function resolveStaticPurgeItems(config, paths) {
11956
11990
  ...paths.opencodeConfigPaths.map((p) => ({ kind: "opencode-config", path: p })),
11957
11991
  { kind: "gitignore", path: paths.gitignorePath }
11958
11992
  ],
11959
- roster: [],
11993
+ roster: [{ kind: "file", path: OPENTEAM_ROSTER_PATH }],
11960
11994
  decisions: [
11961
11995
  { kind: "file", path: paths.decisionsPath },
11962
11996
  { kind: "file", path: paths.telemetryPath }
@@ -12248,8 +12282,12 @@ function categoryPrompt(id, items) {
12248
12282
  return "Remove openteam configuration and wiring?";
12249
12283
  case "roster": {
12250
12284
  const names = items.filter((item) => item.kind === "agent").map((item) => item.name);
12251
- const listed = names.join(", ");
12252
- return `Remove the agent roster? (${names.length} user agent${names.length === 1 ? "" : "s"}: ${listed})`;
12285
+ const hasRegistry = items.some((item) => item.kind === "file" && item.path === OPENTEAM_ROSTER_PATH);
12286
+ const plural = names.length === 1 ? "" : "s";
12287
+ const agentNames = names.length > 0 ? `: ${names.join(", ")}` : "";
12288
+ const agentClause = `${names.length} user agent${plural}${agentNames}`;
12289
+ const parts = hasRegistry ? [`roster registry (${OPENTEAM_ROSTER_PATH})`, agentClause] : [agentClause];
12290
+ return `Remove the agent roster? (${parts.join("; ")})`;
12253
12291
  }
12254
12292
  case "decisions":
12255
12293
  return "Remove decisions and telemetry?";
@@ -12311,7 +12349,9 @@ async function collectCategories(input) {
12311
12349
  const { runtime, config, paths } = input;
12312
12350
  const staticItems = resolveStaticPurgeItems(config, paths);
12313
12351
  const agents = await runtime.port.listAgents();
12314
- const rosterItems = agents.filter((agent) => path2.resolve(agent.path) !== path2.resolve(paths.orchestratorAgentPath)).map((agent) => ({ kind: "agent", path: agent.path, name: agent.name }));
12352
+ const discoveredAgents = agents.filter((agent) => path2.resolve(agent.path) !== path2.resolve(paths.orchestratorAgentPath)).map((agent) => ({ kind: "agent", path: agent.path, name: agent.name }));
12353
+ const rosterRegistry = await presentItemsFor(runtime.port, staticItems.roster);
12354
+ const rosterItems = [...rosterRegistry, ...discoveredAgents];
12315
12355
  const worktrees = await runtime.port.listWorktrees();
12316
12356
  const worktreeItems = worktrees.map((worktree) => ({
12317
12357
  kind: "worktree",
@@ -13389,6 +13429,15 @@ async function runCli(argv, deps) {
13389
13429
  ...defaultModel !== undefined ? { defaultModel } : {}
13390
13430
  });
13391
13431
  const legacyLayout = deps.detectLegacyLayout !== undefined ? await deps.detectLegacyLayout() : undefined;
13432
+ let gitignoreCoverage;
13433
+ if (deps.readGitignore !== undefined) {
13434
+ const raw = await deps.readGitignore();
13435
+ gitignoreCoverage = {
13436
+ path: OPENCODE_GITIGNORE_PATH,
13437
+ exists: raw !== undefined,
13438
+ missingRules: missingGeneratedStateRules(raw ?? "")
13439
+ };
13440
+ }
13392
13441
  const otelBackend = describeOtelBackendForDoctor({
13393
13442
  backend: "opentelemetry",
13394
13443
  connectionEnv: "APPLICATIONINSIGHTS_CONNECTION_STRING"
@@ -13421,7 +13470,8 @@ async function runCli(argv, deps) {
13421
13470
  ...opencodeConfigError !== undefined ? { opencodeConfigError } : {},
13422
13471
  ...cacheEntries !== undefined ? { cacheEntries, cliVersion: deps.version } : {},
13423
13472
  ...legacyLayout !== undefined && legacyLayout.length > 0 ? { legacyLayout } : {},
13424
- ...otelBackend !== undefined ? { otelBackend } : {}
13473
+ ...otelBackend !== undefined ? { otelBackend } : {},
13474
+ ...gitignoreCoverage !== undefined ? { gitignore: gitignoreCoverage } : {}
13425
13475
  })
13426
13476
  };
13427
13477
  }
@@ -15456,7 +15506,7 @@ async function buildMemoryRuntimeFromConfig(config, deps, options = {}) {
15456
15506
  // package.json
15457
15507
  var package_default = {
15458
15508
  name: "@jmanuelcorral/openteam",
15459
- version: "0.13.0",
15509
+ version: "0.13.1",
15460
15510
  packageManager: "bun@1.3.14",
15461
15511
  description: "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
15462
15512
  license: "MIT",
@@ -15773,6 +15823,7 @@ var deps = {
15773
15823
  loopRuntime: createCliLoopRuntime(),
15774
15824
  loadRosterForDoctor: readStoredRosterForDoctor,
15775
15825
  auditRoster: auditStoredRosterForDoctor,
15826
+ readGitignore: () => storage.read(OPENCODE_GITIGNORE_PATH),
15776
15827
  version: PACKAGE_VERSION
15777
15828
  };
15778
15829
  function createCliPurgeRuntime() {
@@ -61,6 +61,13 @@ export type CliDeps = {
61
61
  * migration section. Absent in composition roots that do not probe the disk.
62
62
  */
63
63
  detectLegacyLayout?: () => Promise<readonly LegacyLayoutFinding[]>;
64
+ /**
65
+ * Reads `.opencode/.gitignore` for the `openteam doctor` coverage check
66
+ * (returns `undefined` when the file is absent). Optional so composition roots
67
+ * that do not touch the disk can omit it; when absent, doctor omits the
68
+ * `gitignore:` section rather than guessing.
69
+ */
70
+ readGitignore?: () => Promise<string | undefined>;
64
71
  /**
65
72
  * Executes the P15b legacy-layout migration (`openteam migrate`): physically
66
73
  * relocates pre-split artifacts to their current homes and returns a report.
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/commands/dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/commands/dispatch.ts"],"names":[],"mappings":"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"}
@@ -67,6 +67,19 @@ export type DoctorInput = {
67
67
  * it without aborting the rest of the health report.
68
68
  */
69
69
  rosterLoadError?: string;
70
+ /**
71
+ * Coverage of openteam's runtime-generated state by `.opencode/.gitignore`,
72
+ * computed at the command boundary (`missingGeneratedStateRules`). When
73
+ * `missingRules` is non-empty, doctor prints a ✗ check with a remedy naming
74
+ * the exact rules to add — the repair `openteam setup` never performs on an
75
+ * already-configured project. Absent in composition roots that do not read
76
+ * the file.
77
+ */
78
+ gitignore?: {
79
+ readonly path: string;
80
+ readonly exists: boolean;
81
+ readonly missingRules: readonly string[];
82
+ };
70
83
  };
71
84
  export type DoctorDiagnostic = {
72
85
  readonly ts: number;
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"purge.d.ts","sourceRoot":"","sources":["../../src/commands/purge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"purge.d.ts","sourceRoot":"","sources":["../../src/commands/purge.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,11 @@ export declare const OPENCODE_GITIGNORE_PATH = ".opencode/.gitignore";
13
13
  * `.gitignore` rule collapses to one line covering the whole directory. The
14
14
  * **portable** memory records (`.opencode/openteam/memory/records.jsonl`) are
15
15
  * deliberately absent: they are committed team-state, not ignored output.
16
+ *
17
+ * This is only ONE group of generated state. Runtime output written OUTSIDE
18
+ * `.opencode/openteam-local/` (the shadow soak pipeline) lives in
19
+ * {@link GENERATED_OPENTEAM_STATE_GROUPS}; a single common-prefix collapse over
20
+ * everything would drop to `.opencode` and emit no usable rule.
16
21
  */
17
22
  export declare const GENERATED_OPENTEAM_STATE_PATHS: readonly [".opencode/openteam-local/telemetry.jsonl", ".opencode/openteam-local/sessions", ".opencode/openteam-local/graph/runs", ".opencode/openteam-local/graph/worktrees", ".opencode/openteam-local/index.sqlite", ".opencode/openteam-local/memory/index.sqlite"];
18
23
  /** One standard subagent file `setup` writes into `.opencode/agent/`. */
@@ -34,7 +39,7 @@ export type RoleAgentFile = {
34
39
  * order.
35
40
  */
36
41
  export declare function buildRoleAgentFiles(): RoleAgentFile[];
37
- export declare const OPENCODE_GITIGNORE_GENERATED_STATE_RULES: readonly [string];
42
+ export declare const OPENCODE_GITIGNORE_GENERATED_STATE_RULES: readonly string[];
38
43
  /**
39
44
  * Pre-P15b generated ignore rule. Before the portable/local split, all openteam
40
45
  * runtime state lived under `.opencode/openteam/`, so setup wrote a single
@@ -54,6 +59,19 @@ export declare const LEGACY_OPENCODE_GITIGNORE_STATE_RULES: readonly ["openteam/
54
59
  */
55
60
  export declare const LEGACY_LOCAL_OPENCODE_GITIGNORE_RULES: readonly ["openteam/sessions/", "openteam/graph/", "openteam/index.sqlite", "openteam/memory/index.sqlite"];
56
61
  export declare function buildOpencodeGitignore(existing?: string): string;
62
+ /**
63
+ * The openteam runtime-generated-state rules
64
+ * ({@link OPENCODE_GITIGNORE_GENERATED_STATE_RULES}) NOT present in `gitignore`,
65
+ * in canonical order. Empty when every rule is already covered. Pure.
66
+ *
67
+ * `openteam doctor` uses it to flag an already-configured install whose
68
+ * `.opencode/.gitignore` predates a rule (e.g. the soak recordings added in
69
+ * v0.13.0), which `openteam setup` alone never repairs because it does not
70
+ * re-run on existing projects. Matching is exact-normalised, mirroring
71
+ * {@link buildOpencodeGitignore}, so what doctor reports missing is exactly what
72
+ * setup would add.
73
+ */
74
+ export declare function missingGeneratedStateRules(gitignore: string): string[];
57
75
  export type KnownRuntime = {
58
76
  id: LocalRuntimeId;
59
77
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8141,6 +8141,20 @@ function rosterHealthSection(audit, loadError, rosterRoleCount) {
8141
8141
  }
8142
8142
  return lines;
8143
8143
  }
8144
+ function gitignoreSection(gitignore) {
8145
+ if (gitignore.missingRules.length === 0) {
8146
+ return [
8147
+ " gitignore:",
8148
+ ` ✓ ${gitignore.path} ignores openteam's generated runtime state.`
8149
+ ];
8150
+ }
8151
+ const quoted = gitignore.missingRules.map((rule) => `\`${rule}\``).join(", ");
8152
+ const lines = [" gitignore:"];
8153
+ lines.push(gitignore.exists ? ` ✗ ${gitignore.path} is missing openteam ignore rule(s): ${gitignore.missingRules.join(", ")}` : ` ✗ ${gitignore.path} does not exist, so no openteam ignore rule(s) are in place: ${gitignore.missingRules.join(", ")}`);
8154
+ lines.push(" problem: openteam writes machine-local runtime output (telemetry, graph state, soak recordings) that must not be committed.");
8155
+ lines.push(` remedy: add ${quoted} to ${gitignore.path} (or re-run \`openteam setup\`), then re-run \`openteam doctor\`.`);
8156
+ return lines;
8157
+ }
8144
8158
  function agentModelsSection(diagnostics, searchedPaths) {
8145
8159
  const lines = [" agent models:"];
8146
8160
  if (diagnostics.length === 0) {
@@ -8188,6 +8202,9 @@ function renderDoctor(input) {
8188
8202
  lines.push(...diagnosticsSection(input.diagnostics));
8189
8203
  }
8190
8204
  lines.push(...rosterHealthSection(input.rosterAudit, input.rosterLoadError, input.rosterRoleCount));
8205
+ if (input.gitignore !== undefined) {
8206
+ lines.push(...gitignoreSection(input.gitignore));
8207
+ }
8191
8208
  if (input.otelBackend !== undefined) {
8192
8209
  const otel = input.otelBackend;
8193
8210
  lines.push(" opentelemetry:");
@@ -8453,6 +8470,143 @@ function renderMigration(report) {
8453
8470
  // src/commands/purge.ts
8454
8471
  import * as path3 from "node:path";
8455
8472
 
8473
+ // src/storage/graph/soakRecorder.ts
8474
+ var SOAK_EVIDENCE_DIR = ".opencode/soak";
8475
+ var SOAK_RECORDER_BASE_DIR = ".opencode";
8476
+ var SOAK_RECORDER_ID_FILENAME = "soak-recorder-id";
8477
+ var SOAK_RECORDER_ID_PATH = `${SOAK_RECORDER_BASE_DIR}/${SOAK_RECORDER_ID_FILENAME}`;
8478
+ async function ensureRecorderId(ports, basePath) {
8479
+ const idPath = `${basePath}/${SOAK_RECORDER_ID_FILENAME}`;
8480
+ if (await ports.fs.exists(idPath)) {
8481
+ const id = (await ports.fs.readFile(idPath)).trim();
8482
+ if (/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/.test(id)) {
8483
+ return id;
8484
+ }
8485
+ }
8486
+ const newId = ports.id.randomUUID();
8487
+ await ports.fs.writeFile(idPath, newId);
8488
+ return newId;
8489
+ }
8490
+ async function readAllChains(ports, evidenceDir) {
8491
+ if (!await ports.fs.exists(evidenceDir)) {
8492
+ return { chains: [], rejectedLines: 0, rejections: [] };
8493
+ }
8494
+ const files = await ports.fs.readDir(evidenceDir);
8495
+ const chains = [];
8496
+ const rejections = [];
8497
+ for (const file of files) {
8498
+ if (!file.endsWith(".jsonl")) {
8499
+ continue;
8500
+ }
8501
+ const content = await ports.fs.readFile(`${evidenceDir}/${file}`);
8502
+ const lines = content.split(`
8503
+ `);
8504
+ const observations = [];
8505
+ for (const [index, line] of lines.entries()) {
8506
+ if (line.trim().length === 0) {
8507
+ continue;
8508
+ }
8509
+ const lineNumber = index + 1;
8510
+ let rawParsed;
8511
+ try {
8512
+ rawParsed = JSON.parse(line);
8513
+ } catch {
8514
+ rejections.push({ file, lineNumber, detail: "invalid JSON" });
8515
+ continue;
8516
+ }
8517
+ const parsed = SoakObservationSchema.safeParse(rawParsed);
8518
+ if (parsed.success) {
8519
+ observations.push(parsed.data);
8520
+ } else {
8521
+ rejections.push({
8522
+ file,
8523
+ lineNumber,
8524
+ detail: formatSoakObservationIssues(parsed.error.issues)
8525
+ });
8526
+ }
8527
+ }
8528
+ if (observations.length > 0) {
8529
+ chains.push(observations);
8530
+ }
8531
+ }
8532
+ return { chains, rejectedLines: rejections.length, rejections };
8533
+ }
8534
+ function formatSoakObservationIssues(issues) {
8535
+ return issues.map((i) => `${i.path.join(".")}: ${i.code}`).join("; ");
8536
+ }
8537
+ function canonicalObservationPreimage2(obs) {
8538
+ return JSON.stringify({
8539
+ version: obs.version,
8540
+ seq: obs.seq,
8541
+ timestamp: obs.timestamp,
8542
+ platform: obs.platform,
8543
+ opencodeVersion: obs.opencodeVersion,
8544
+ provenance: obs.provenance,
8545
+ traceDigest: obs.traceDigest,
8546
+ criticalDivergences: obs.criticalDivergences,
8547
+ privacy: obs.privacy,
8548
+ duplicateEffects: obs.duplicateEffects,
8549
+ modelVerification: obs.modelVerification
8550
+ });
8551
+ }
8552
+ async function appendObservation(ports, evidenceDir, recorderId, input) {
8553
+ if (input.opencodeVersion === "unknown") {
8554
+ throw new Error("opencode-version-unreadable");
8555
+ }
8556
+ await ports.fs.mkdir(evidenceDir);
8557
+ const chainPath = `${evidenceDir}/${recorderId}.jsonl`;
8558
+ let seq = 0;
8559
+ let prevChainDigest = "0".repeat(64);
8560
+ if (await ports.fs.exists(chainPath)) {
8561
+ const content = await ports.fs.readFile(chainPath);
8562
+ const lines = content.split(`
8563
+ `).filter((l) => l.trim().length > 0);
8564
+ if (lines.length > 0) {
8565
+ const lastLine = lines[lines.length - 1];
8566
+ let rawParsed;
8567
+ try {
8568
+ rawParsed = JSON.parse(lastLine);
8569
+ } catch {
8570
+ throw new Error("corrupt chain tail: invalid JSON");
8571
+ }
8572
+ const parsed = SoakObservationSchema.safeParse(rawParsed);
8573
+ if (!parsed.success) {
8574
+ const detail = parsed.error.issues.map((i) => `${i.path.join(".")}: ${i.code}`).join("; ");
8575
+ throw new Error(`corrupt chain tail: ${detail}`);
8576
+ }
8577
+ seq = parsed.data.seq + 1;
8578
+ prevChainDigest = parsed.data.chainDigest;
8579
+ }
8580
+ }
8581
+ const timestamp = ports.clock.now();
8582
+ const base = {
8583
+ version: 1,
8584
+ seq,
8585
+ timestamp,
8586
+ platform: input.platform,
8587
+ opencodeVersion: input.opencodeVersion,
8588
+ provenance: input.provenance,
8589
+ traceDigest: input.traceDigest,
8590
+ criticalDivergences: input.criticalDivergences,
8591
+ privacy: input.privacy,
8592
+ duplicateEffects: input.duplicateEffects,
8593
+ modelVerification: input.modelVerification
8594
+ };
8595
+ const preimage = canonicalObservationPreimage2(base);
8596
+ const chainDigest = sha256Hex(prevChainDigest + preimage);
8597
+ const observation = { ...base, chainDigest };
8598
+ assertReferenceOnly(observation);
8599
+ const line = JSON.stringify(observation);
8600
+ if (await ports.fs.exists(chainPath)) {
8601
+ const existing = await ports.fs.readFile(chainPath);
8602
+ await ports.fs.writeFile(chainPath, `${existing}
8603
+ ${line}`);
8604
+ } else {
8605
+ await ports.fs.writeFile(chainPath, line);
8606
+ }
8607
+ return observation;
8608
+ }
8609
+
8456
8610
  // src/commands/setup.ts
8457
8611
  var OPENTEAM_PLUGIN_SPEC = "@jmanuelcorral/openteam";
8458
8612
  var OPENCODE_GITIGNORE_PATH = ".opencode/.gitignore";
@@ -8464,6 +8618,11 @@ var GENERATED_OPENTEAM_STATE_PATHS = [
8464
8618
  DEFAULT_STORAGE_SQLITE_INDEX_PATH,
8465
8619
  DEFAULT_MEMORY_INDEX_PATH
8466
8620
  ];
8621
+ var GENERATED_OPENTEAM_STATE_GROUPS = [
8622
+ { kind: "dir", paths: GENERATED_OPENTEAM_STATE_PATHS },
8623
+ { kind: "dir", paths: [SOAK_EVIDENCE_DIR] },
8624
+ { kind: "file", paths: [SOAK_RECORDER_ID_PATH] }
8625
+ ];
8467
8626
  var OPENCODE_DIR = ".opencode";
8468
8627
  var AGENT_DIR = `${OPENCODE_DIR}/agent`;
8469
8628
  function splitSetupPath(path3) {
@@ -8484,18 +8643,27 @@ function commonGeneratedStateRoot(paths) {
8484
8643
  }
8485
8644
  return common.join("/");
8486
8645
  }
8487
- function generatedStateIgnoreRule() {
8488
- const root = commonGeneratedStateRoot(GENERATED_OPENTEAM_STATE_PATHS);
8646
+ function generatedStateIgnoreRule(group) {
8647
+ const root = commonGeneratedStateRoot(group.paths);
8489
8648
  const opencodePrefix = `${OPENCODE_DIR}/`;
8490
8649
  if (!root.startsWith(opencodePrefix)) {
8491
8650
  throw new Error(`generated openteam state path is outside ${OPENCODE_DIR}`);
8492
8651
  }
8493
- return `${root.slice(opencodePrefix.length)}/`;
8652
+ const rule = root.slice(opencodePrefix.length);
8653
+ return group.kind === "dir" ? `${rule}/` : rule;
8494
8654
  }
8495
- var OPENCODE_GITIGNORE_GENERATED_STATE_RULES = [
8496
- generatedStateIgnoreRule()
8497
- ];
8655
+ var OPENCODE_GITIGNORE_GENERATED_STATE_RULES = GENERATED_OPENTEAM_STATE_GROUPS.map(generatedStateIgnoreRule);
8498
8656
  var LEGACY_OPENCODE_GITIGNORE_STATE_RULES = ["openteam/"];
8657
+ function normalizeGitignoreRule(line) {
8658
+ return line.trim().replace(/^\/+/, "");
8659
+ }
8660
+ function activeGitignoreRules(gitignore) {
8661
+ return gitignore.split(/\r?\n/).map(normalizeGitignoreRule).filter((line) => line.length > 0 && !line.startsWith("#"));
8662
+ }
8663
+ function missingGeneratedStateRules(gitignore) {
8664
+ const present = new Set(activeGitignoreRules(gitignore));
8665
+ return OPENCODE_GITIGNORE_GENERATED_STATE_RULES.filter((rule) => !present.has(rule));
8666
+ }
8499
8667
 
8500
8668
  // src/commands/purge.ts
8501
8669
  var PURGE_CATEGORY_IDS = [
@@ -8543,7 +8711,7 @@ function resolveStaticPurgeItems(config, paths) {
8543
8711
  ...paths.opencodeConfigPaths.map((p) => ({ kind: "opencode-config", path: p })),
8544
8712
  { kind: "gitignore", path: paths.gitignorePath }
8545
8713
  ],
8546
- roster: [],
8714
+ roster: [{ kind: "file", path: OPENTEAM_ROSTER_PATH }],
8547
8715
  decisions: [
8548
8716
  { kind: "file", path: paths.decisionsPath },
8549
8717
  { kind: "file", path: paths.telemetryPath }
@@ -8835,8 +9003,12 @@ function categoryPrompt(id, items) {
8835
9003
  return "Remove openteam configuration and wiring?";
8836
9004
  case "roster": {
8837
9005
  const names = items.filter((item) => item.kind === "agent").map((item) => item.name);
8838
- const listed = names.join(", ");
8839
- return `Remove the agent roster? (${names.length} user agent${names.length === 1 ? "" : "s"}: ${listed})`;
9006
+ const hasRegistry = items.some((item) => item.kind === "file" && item.path === OPENTEAM_ROSTER_PATH);
9007
+ const plural = names.length === 1 ? "" : "s";
9008
+ const agentNames = names.length > 0 ? `: ${names.join(", ")}` : "";
9009
+ const agentClause = `${names.length} user agent${plural}${agentNames}`;
9010
+ const parts = hasRegistry ? [`roster registry (${OPENTEAM_ROSTER_PATH})`, agentClause] : [agentClause];
9011
+ return `Remove the agent roster? (${parts.join("; ")})`;
8840
9012
  }
8841
9013
  case "decisions":
8842
9014
  return "Remove decisions and telemetry?";
@@ -8898,7 +9070,9 @@ async function collectCategories(input) {
8898
9070
  const { runtime, config, paths } = input;
8899
9071
  const staticItems = resolveStaticPurgeItems(config, paths);
8900
9072
  const agents = await runtime.port.listAgents();
8901
- const rosterItems = agents.filter((agent) => path3.resolve(agent.path) !== path3.resolve(paths.orchestratorAgentPath)).map((agent) => ({ kind: "agent", path: agent.path, name: agent.name }));
9073
+ const discoveredAgents = agents.filter((agent) => path3.resolve(agent.path) !== path3.resolve(paths.orchestratorAgentPath)).map((agent) => ({ kind: "agent", path: agent.path, name: agent.name }));
9074
+ const rosterRegistry = await presentItemsFor(runtime.port, staticItems.roster);
9075
+ const rosterItems = [...rosterRegistry, ...discoveredAgents];
8902
9076
  const worktrees = await runtime.port.listWorktrees();
8903
9077
  const worktreeItems = worktrees.map((worktree) => ({
8904
9078
  kind: "worktree",
@@ -10051,6 +10225,15 @@ async function runCli(argv, deps) {
10051
10225
  ...defaultModel !== undefined ? { defaultModel } : {}
10052
10226
  });
10053
10227
  const legacyLayout = deps.detectLegacyLayout !== undefined ? await deps.detectLegacyLayout() : undefined;
10228
+ let gitignoreCoverage;
10229
+ if (deps.readGitignore !== undefined) {
10230
+ const raw = await deps.readGitignore();
10231
+ gitignoreCoverage = {
10232
+ path: OPENCODE_GITIGNORE_PATH,
10233
+ exists: raw !== undefined,
10234
+ missingRules: missingGeneratedStateRules(raw ?? "")
10235
+ };
10236
+ }
10054
10237
  const otelBackend = describeOtelBackendForDoctor({
10055
10238
  backend: "opentelemetry",
10056
10239
  connectionEnv: "APPLICATIONINSIGHTS_CONNECTION_STRING"
@@ -10083,7 +10266,8 @@ async function runCli(argv, deps) {
10083
10266
  ...opencodeConfigError !== undefined ? { opencodeConfigError } : {},
10084
10267
  ...cacheEntries !== undefined ? { cacheEntries, cliVersion: deps.version } : {},
10085
10268
  ...legacyLayout !== undefined && legacyLayout.length > 0 ? { legacyLayout } : {},
10086
- ...otelBackend !== undefined ? { otelBackend } : {}
10269
+ ...otelBackend !== undefined ? { otelBackend } : {},
10270
+ ...gitignoreCoverage !== undefined ? { gitignore: gitignoreCoverage } : {}
10087
10271
  })
10088
10272
  };
10089
10273
  }
@@ -10759,139 +10943,6 @@ function compareShadowRun(legacy, shadow) {
10759
10943
  };
10760
10944
  }
10761
10945
 
10762
- // src/storage/graph/soakRecorder.ts
10763
- async function ensureRecorderId(ports, basePath) {
10764
- const idPath = `${basePath}/soak-recorder-id`;
10765
- if (await ports.fs.exists(idPath)) {
10766
- const id = (await ports.fs.readFile(idPath)).trim();
10767
- if (/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/.test(id)) {
10768
- return id;
10769
- }
10770
- }
10771
- const newId = ports.id.randomUUID();
10772
- await ports.fs.writeFile(idPath, newId);
10773
- return newId;
10774
- }
10775
- async function readAllChains(ports, evidenceDir) {
10776
- if (!await ports.fs.exists(evidenceDir)) {
10777
- return { chains: [], rejectedLines: 0, rejections: [] };
10778
- }
10779
- const files = await ports.fs.readDir(evidenceDir);
10780
- const chains = [];
10781
- const rejections = [];
10782
- for (const file of files) {
10783
- if (!file.endsWith(".jsonl")) {
10784
- continue;
10785
- }
10786
- const content = await ports.fs.readFile(`${evidenceDir}/${file}`);
10787
- const lines = content.split(`
10788
- `);
10789
- const observations = [];
10790
- for (const [index, line] of lines.entries()) {
10791
- if (line.trim().length === 0) {
10792
- continue;
10793
- }
10794
- const lineNumber = index + 1;
10795
- let rawParsed;
10796
- try {
10797
- rawParsed = JSON.parse(line);
10798
- } catch {
10799
- rejections.push({ file, lineNumber, detail: "invalid JSON" });
10800
- continue;
10801
- }
10802
- const parsed = SoakObservationSchema.safeParse(rawParsed);
10803
- if (parsed.success) {
10804
- observations.push(parsed.data);
10805
- } else {
10806
- rejections.push({
10807
- file,
10808
- lineNumber,
10809
- detail: formatSoakObservationIssues(parsed.error.issues)
10810
- });
10811
- }
10812
- }
10813
- if (observations.length > 0) {
10814
- chains.push(observations);
10815
- }
10816
- }
10817
- return { chains, rejectedLines: rejections.length, rejections };
10818
- }
10819
- function formatSoakObservationIssues(issues) {
10820
- return issues.map((i) => `${i.path.join(".")}: ${i.code}`).join("; ");
10821
- }
10822
- function canonicalObservationPreimage2(obs) {
10823
- return JSON.stringify({
10824
- version: obs.version,
10825
- seq: obs.seq,
10826
- timestamp: obs.timestamp,
10827
- platform: obs.platform,
10828
- opencodeVersion: obs.opencodeVersion,
10829
- provenance: obs.provenance,
10830
- traceDigest: obs.traceDigest,
10831
- criticalDivergences: obs.criticalDivergences,
10832
- privacy: obs.privacy,
10833
- duplicateEffects: obs.duplicateEffects,
10834
- modelVerification: obs.modelVerification
10835
- });
10836
- }
10837
- async function appendObservation(ports, evidenceDir, recorderId, input) {
10838
- if (input.opencodeVersion === "unknown") {
10839
- throw new Error("opencode-version-unreadable");
10840
- }
10841
- await ports.fs.mkdir(evidenceDir);
10842
- const chainPath = `${evidenceDir}/${recorderId}.jsonl`;
10843
- let seq = 0;
10844
- let prevChainDigest = "0".repeat(64);
10845
- if (await ports.fs.exists(chainPath)) {
10846
- const content = await ports.fs.readFile(chainPath);
10847
- const lines = content.split(`
10848
- `).filter((l) => l.trim().length > 0);
10849
- if (lines.length > 0) {
10850
- const lastLine = lines[lines.length - 1];
10851
- let rawParsed;
10852
- try {
10853
- rawParsed = JSON.parse(lastLine);
10854
- } catch {
10855
- throw new Error("corrupt chain tail: invalid JSON");
10856
- }
10857
- const parsed = SoakObservationSchema.safeParse(rawParsed);
10858
- if (!parsed.success) {
10859
- const detail = parsed.error.issues.map((i) => `${i.path.join(".")}: ${i.code}`).join("; ");
10860
- throw new Error(`corrupt chain tail: ${detail}`);
10861
- }
10862
- seq = parsed.data.seq + 1;
10863
- prevChainDigest = parsed.data.chainDigest;
10864
- }
10865
- }
10866
- const timestamp = ports.clock.now();
10867
- const base = {
10868
- version: 1,
10869
- seq,
10870
- timestamp,
10871
- platform: input.platform,
10872
- opencodeVersion: input.opencodeVersion,
10873
- provenance: input.provenance,
10874
- traceDigest: input.traceDigest,
10875
- criticalDivergences: input.criticalDivergences,
10876
- privacy: input.privacy,
10877
- duplicateEffects: input.duplicateEffects,
10878
- modelVerification: input.modelVerification
10879
- };
10880
- const preimage = canonicalObservationPreimage2(base);
10881
- const chainDigest = sha256Hex(prevChainDigest + preimage);
10882
- const observation = { ...base, chainDigest };
10883
- assertReferenceOnly(observation);
10884
- const line = JSON.stringify(observation);
10885
- if (await ports.fs.exists(chainPath)) {
10886
- const existing = await ports.fs.readFile(chainPath);
10887
- await ports.fs.writeFile(chainPath, `${existing}
10888
- ${line}`);
10889
- } else {
10890
- await ports.fs.writeFile(chainPath, line);
10891
- }
10892
- return observation;
10893
- }
10894
-
10895
10946
  // src/plugin/soakObserver.ts
10896
10947
  function resolvePlatform(platform) {
10897
10948
  if (platform === "win32")
@@ -13036,7 +13087,7 @@ var createOtlpSpanExporter = (connection, config) => {
13036
13087
  // package.json
13037
13088
  var package_default = {
13038
13089
  name: "@jmanuelcorral/openteam",
13039
- version: "0.13.0",
13090
+ version: "0.13.1",
13040
13091
  packageManager: "bun@1.3.14",
13041
13092
  description: "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
13042
13093
  license: "MIT",
@@ -13212,7 +13263,6 @@ function warnSoakEvidenceRejections(result, warn) {
13212
13263
  var SHADOW_CERT_PATH = "artifacts/graph-shadow-certificate.json";
13213
13264
  var RELEASE_CERT_PATH = "artifacts/graph-release-certificate.json";
13214
13265
  var SOAK_CERT_PATH = "artifacts/graph-soak-certificate.json";
13215
- var SOAK_EVIDENCE_DIR = ".opencode/soak";
13216
13266
  async function readAndParseCertificate(storage, path4, parse2, digestExtractor) {
13217
13267
  try {
13218
13268
  const content = await storage.read(path4);
@@ -13735,14 +13785,14 @@ var server = async (ctx, rawOptions) => {
13735
13785
  let shadowDeps;
13736
13786
  if (graphConfig.effectiveMode !== "off") {
13737
13787
  const recorderPorts = recorderPortsFromStorage(storage);
13738
- const recorderId = await ensureRecorderId(recorderPorts, ".opencode");
13788
+ const recorderId = await ensureRecorderId(recorderPorts, SOAK_RECORDER_BASE_DIR);
13739
13789
  shadowDeps = {
13740
13790
  gate: {
13741
13791
  mode: graphConfig.configuredMode,
13742
13792
  killSwitch: graphConfig.killSwitch
13743
13793
  },
13744
13794
  ports: recorderPorts,
13745
- evidenceDir: ".opencode/soak",
13795
+ evidenceDir: SOAK_EVIDENCE_DIR,
13746
13796
  recorderId,
13747
13797
  resolveOpencodeVersion: getOpencodeVersion,
13748
13798
  criticalCodes: DEFAULT_SOAK_POLICY.criticalDivergenceCodes
@@ -31,6 +31,25 @@ export type RecorderPorts = {
31
31
  export type SoakChainReadPorts = {
32
32
  readonly fs: Pick<FsPort, "readFile" | "exists" | "readDir">;
33
33
  };
34
+ /**
35
+ * Directory (relative to cwd) the shadow soak pipeline writes its JSONL evidence
36
+ * chains to. Exported so `openteam setup`'s ignore-rule derivation and the plugin
37
+ * writer in `src/index.ts` share one literal and can never drift apart (the drift
38
+ * that left these recordings unignored in consuming projects).
39
+ */
40
+ export declare const SOAK_EVIDENCE_DIR = ".opencode/soak";
41
+ /**
42
+ * Base directory that holds the machine-local recorder id file. Passed to
43
+ * {@link ensureRecorderId} as `basePath`.
44
+ */
45
+ export declare const SOAK_RECORDER_BASE_DIR = ".opencode";
46
+ /** Filename of the machine-local recorder id, stored under {@link SOAK_RECORDER_BASE_DIR}. */
47
+ export declare const SOAK_RECORDER_ID_FILENAME = "soak-recorder-id";
48
+ /**
49
+ * Full path (relative to cwd) of the machine-local recorder id file. Exported so
50
+ * the ignore-rule derivation covers it alongside {@link SOAK_EVIDENCE_DIR}.
51
+ */
52
+ export declare const SOAK_RECORDER_ID_PATH = ".opencode/soak-recorder-id";
34
53
  export type SoakObservationLineRejection = {
35
54
  readonly file: string;
36
55
  readonly lineNumber: number;
@@ -1 +1 @@
1
- {"version":3,"file":"soakRecorder.d.ts","sourceRoot":"","sources":["../../../src/storage/graph/soakRecorder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"soakRecorder.d.ts","sourceRoot":"","sources":["../../../src/storage/graph/soakRecorder.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EAEpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAEhC;;;;;;GAMG;AAMH,8DAA8D;AAC9D,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC/D,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD,CAAC;AAEF,uCAAuC;AACvC,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;CAC5B,CAAC;AAEF,kCAAkC;AAClC,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,UAAU,EAAE,MAAM,MAAM,CAAC;CACnC,CAAC;AAEF,2CAA2C;AAC3C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;CAC9D,CAAC;AAMF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,8FAA8F;AAC9F,eAAO,MAAM,yBAAyB,qBAAqB,CAAC;AAE5D;;;GAGG;AACH,eAAO,MAAM,qBAAqB,+BAA2D,CAAC;AAE9F,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,SAAS,4BAA4B,EAAE,CAAC;CAC9D,CAAC;AAMF;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAajB;AAMD;;;GAGG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,CAAC,CA4C9B;AAUD,0EAA0E;AAC1E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,cAAc,CAAC;IACtD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,gBAAgB,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,yBAAyB,GAAG,IAAI,CAAC;CAC9D,CAAC;AAwBF;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,eAAe,CAAC,CAsE1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jmanuelcorral/openteam",
3
- "version": "0.13.0",
3
+ "version": "0.13.1",
4
4
  "packageManager": "bun@1.3.14",
5
5
  "description": "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
6
6
  "license": "MIT",