@farmslot/recipe-cli 0.10.0 → 0.11.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 (75) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/harness/adapter-plugins.d.ts +12 -2
  3. package/dist/harness/adapter-plugins.d.ts.map +1 -1
  4. package/dist/harness/adapter-plugins.js +18 -3
  5. package/dist/harness/adapter-plugins.js.map +1 -1
  6. package/dist/harness/adapters.d.ts +33 -4
  7. package/dist/harness/adapters.d.ts.map +1 -1
  8. package/dist/harness/adapters.js +72 -14
  9. package/dist/harness/adapters.js.map +1 -1
  10. package/dist/harness/cli-error.d.ts +5 -0
  11. package/dist/harness/cli-error.d.ts.map +1 -0
  12. package/dist/harness/cli-error.js +14 -0
  13. package/dist/harness/cli-error.js.map +1 -0
  14. package/dist/harness/command-contract.d.ts +6 -0
  15. package/dist/harness/command-contract.d.ts.map +1 -1
  16. package/dist/harness/command-contract.js +22 -0
  17. package/dist/harness/command-contract.js.map +1 -1
  18. package/dist/harness/commands/call.d.ts.map +1 -1
  19. package/dist/harness/commands/call.js +12 -0
  20. package/dist/harness/commands/call.js.map +1 -1
  21. package/dist/harness/commands/discover.d.ts.map +1 -1
  22. package/dist/harness/commands/discover.js +9 -3
  23. package/dist/harness/commands/discover.js.map +1 -1
  24. package/dist/harness/commands/doctor.js +3 -2
  25. package/dist/harness/commands/doctor.js.map +1 -1
  26. package/dist/harness/commands/prepare.d.ts.map +1 -1
  27. package/dist/harness/commands/prepare.js +3 -2
  28. package/dist/harness/commands/prepare.js.map +1 -1
  29. package/dist/harness/commands/run.d.ts.map +1 -1
  30. package/dist/harness/commands/run.js +8 -0
  31. package/dist/harness/commands/run.js.map +1 -1
  32. package/dist/harness/commands/status-watch.d.ts.map +1 -1
  33. package/dist/harness/commands/status-watch.js +3 -2
  34. package/dist/harness/commands/status-watch.js.map +1 -1
  35. package/dist/harness/commands/status.d.ts.map +1 -1
  36. package/dist/harness/commands/status.js +7 -2
  37. package/dist/harness/commands/status.js.map +1 -1
  38. package/dist/harness/commands/task-init.js +2 -2
  39. package/dist/harness/commands/task-init.js.map +1 -1
  40. package/dist/harness/context-state.d.ts +106 -0
  41. package/dist/harness/context-state.d.ts.map +1 -0
  42. package/dist/harness/context-state.js +41 -0
  43. package/dist/harness/context-state.js.map +1 -0
  44. package/dist/harness/context.d.ts +57 -0
  45. package/dist/harness/context.d.ts.map +1 -0
  46. package/dist/harness/context.js +409 -0
  47. package/dist/harness/context.js.map +1 -0
  48. package/dist/harness/doctor-report.d.ts +3 -0
  49. package/dist/harness/doctor-report.d.ts.map +1 -1
  50. package/dist/harness/doctor-report.js +3 -0
  51. package/dist/harness/doctor-report.js.map +1 -1
  52. package/dist/harness/harness-cli.d.ts +15 -0
  53. package/dist/harness/harness-cli.d.ts.map +1 -1
  54. package/dist/harness/harness-cli.js +187 -30
  55. package/dist/harness/harness-cli.js.map +1 -1
  56. package/dist/harness/index.d.ts +5 -3
  57. package/dist/harness/index.d.ts.map +1 -1
  58. package/dist/harness/index.js +5 -3
  59. package/dist/harness/index.js.map +1 -1
  60. package/dist/harness/overlay.js +3 -2
  61. package/dist/harness/overlay.js.map +1 -1
  62. package/dist/harness/parse-args.d.ts +2 -4
  63. package/dist/harness/parse-args.d.ts.map +1 -1
  64. package/dist/harness/parse-args.js +9 -17
  65. package/dist/harness/parse-args.js.map +1 -1
  66. package/dist/harness/run-engine.d.ts.map +1 -1
  67. package/dist/harness/run-engine.js +2 -0
  68. package/dist/harness/run-engine.js.map +1 -1
  69. package/dist/harness/shared.d.ts.map +1 -1
  70. package/dist/harness/shared.js +21 -6
  71. package/dist/harness/shared.js.map +1 -1
  72. package/dist/harness/task-view.d.ts.map +1 -1
  73. package/dist/harness/task-view.js +5 -2
  74. package/dist/harness/task-view.js.map +1 -1
  75. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -6,6 +6,29 @@ All notable changes to `@farmslot/recipe-cli` are tracked here.
6
6
 
7
7
  - Active-development baseline; add user-facing changes here before release or package publication.
8
8
 
9
+ ## 0.11.0 - 2026-10-09
10
+
11
+ - `createHarnessCli` resolves one context for every public command whose grammar takes `--adapter`, `--platform` or `--target` (status, doctor, launch, run, call and the rest), and for every hidden command (its target and slot; its adapter when it sets `context: 'adapter'`). The adapter comes from, in order: the flag (`--adapter`, `--platform`, or a leading platform target such as `launch ios`), the checkout's runtime context `platform` (binding), the slot slot-config maps the checkout to (its own `platform`, when that names an adapter), a unique detect match, then the new `defaultAdapter` option. The target is `--target`, else the cwd; without `--target`, the binding, the slot and detection read the cwd's Git top level, so a subdirectory of a checkout resolves. The slot is slot-config's match (pool directory from the new `slotPoolDir` option, else FARMSLOT_POOL_DIR, else `$FARMSLOT_ROOT/pool`, else `~/farmslot-node/pool` when it exists, reported as `slot-config (~/farmslot-node/pool)`; a pool directory that exists but does not read fails the command), else the runtime context's `slotId` (the pool's slot keeps its identity beside an owned runtime context; only an explicit `--runtime-dir` runtime that names another `slotId` becomes the slot, source `binding`); with no pool directory it is reported as `{ value: null, source: 'none', detail: 'no-pool-dir' }` (`slot unknown (no pool dir)` in the human line), and when the pool maps no slot to the checkout as `{ value: null, source: 'none', detail: 'not-in-pool', poolDir }` (`slot unknown (not in ~/farmslot-node/pool)`). Approvals (`--approve-plan`, mainnet and funding flags) are never inferred. Requires `@farmslot/protocol` with `./node/slot-by-repo`: cut protocol first and re-pin the dependents.
12
+ - The binding is the runtime context the commands read (RECIPE_RUNTIME_CONTEXT, else `<checkout>/<runtime dir>/agentic-runtime.json`), with an explicit `--runtime-dir` applied before it is read. A context binds only when its `repoRoot` is the target's Git top level (real paths), so a subdirectory of the bound checkout binds and a clone nested inside it does not. A context whose `repoRoot` is another checkout (an inherited RECIPE_RUNTIME_CONTEXT), or one without `repoRoot` outside the target, binds no adapter or slot; the context reports it as `ignoredBinding` (`path`, `repoRoot`) and the human line as `binding ignored (belongs to <root>)`.
13
+ - Slot ports reach a command's adapter through the environment it already reads, never through its argv (the command gets exactly what was typed). For each generic port a command's grammar takes (`--cdp-port`, `--watcher-port`), when no spelling of it was typed (the option or a declared alias: `--port`, `--metro-port` for the watcher port; or any of them after `--`, where a leaf reads its own arguments) and no environment name for it holds a port, `createHarnessCli` sets `RECIPE_CDP_PORT`/`CDP_PORT`, or `RECIPE_WATCHER_PORT`/`WATCHER_PORT`/`METRO_PORT` plus each registered adapter's `devServer.portEnv`, for the invocation only (children the command spawns inherit them; `process.env` is restored exactly after dispatch, even when the command throws). Invocations of `main()` in one process run one at a time, since each sets the process-wide context and port environment; a `main()` called from inside a running command rejects at once (run the nested command as a child process) instead of waiting for itself. The port comes from the owned runtime context first (`cdpPort`; `devServerPort`, `watcherPort`, `metroPort`), then the pool slot (`cdp_port`; the dev-server `port`), so an explicit `--runtime-dir` scratch runtime fills its own ports. A typed flag, alias or passthrough port always outranks the environment in the adapters. An ignored binding fills nothing. `context.ports` (`cdp`, `watcher`) reports each: `{ source: 'flag', value? }` (no value when two spellings disagree), `{ source: 'env', value, filled: false }`, or `{ source: 'slot', value, filled: true, via: 'env', names }` (`names`: the variables set; with `invalidEnv` when a non-port value such as `RECIPE_WATCHER_PORT=abc` was replaced); the human line shows `ports cdp 9541 (slot), watcher 9400 (env, not filled)`. Adapter-specific ports stay in `context.slot.ports` for the adapter to read through `harnessContext()`. Exports `contextPorts`.
14
+ - `--help` invocations, and hidden commands that set the new `context: 'adapter'` (shell completion), resolve the adapter too, so `call <action> --help` and completion see the checkout's adapter without `--adapter`; a tie never refuses them (they get no adapter), and they print no context line and get no filled port. Other hidden commands resolve the target and slot only and load only the plugin their flags select.
15
+ - The `status --task` view shows the runtime context's slot and ports only when it belongs to the checkout (`runtimeContextOwned`, exported); an inherited RECIPE_RUNTIME_CONTEXT of another checkout shows nothing.
16
+ - `status --task` and `--watch` resolve the target and slot only: no adapter is detected, refused as ambiguous or loaded. A leading platform target is read with the command's grammar (`contractPositionals`), so `launch --json android` and `launch android --json` resolve alike.
17
+ - Detection matches the built-ins by their `detect` and the plugins the operator's libraries declare by their recipe-library.json `detect`, without importing any plugin. Only the winner is loaded, adopted and passed to `afterAdapterLoad`; a losing candidate is never imported or bound.
18
+ - Any remote match beats any file match, and an adapter beats one it extends. More than one match left stops the command with `ADAPTER_AMBIGUOUS` (`AdapterAmbiguousError`, a `CliError`), exit 2, also when a command meets it detecting a target of its own, and the candidates (adapter, the predicates that matched, the declaring library) in the `--json` and `--json-stream` error (`candidates`) and in the human message. No match keeps the `USAGE` error and its message.
19
+ - When the adapter was not a flag, one line on stderr names each value and its source, e.g. `context: adapter terminal (detected: remote+files), target /work/terminal-1 (cwd), slot mmt-1 (slot-config)`; `--json` and `--json-stream` print none.
20
+ - `--json` envelopes from `status` (its task views included), `doctor`, `run`, `call`, `actions`, `run --list`/`--describe`, `call --list` and the shared usage error (`usageOut`) carry the resolved `context` (`adapter`, `target`, `slot`, each with `value`, `source` and `detail`). `launch`'s own envelope is the platform's and is unchanged.
21
+ - Exports `resolveHarnessContext`, `formatHarnessContext`, `harnessContext`, `harnessContextField`, `contextAdapter`, `contractPositionals`, `setHarnessContext`, `declaredAdapters`, `detectAdapterMatch`, `pickDetected`, `AdapterAmbiguousError` and the `HarnessContext`, `ContextSource`, `DetectMatch`, `AdapterCandidate`, `DeclaredDetect`, `DetectEntry` and `ResolveHarnessContextOptions` types.
22
+ - `status`, `doctor`, `prepare`, the overlay commands, `resolveAdapter`, `resolveFlagsAdapter` and `task init` take an adapter no flag names from the resolved context (`contextAdapter(target)`) instead of detecting it themselves. Inside `createHarnessCli` every public command that takes those options and every hidden command has a resolved context (a `--help` invocation or a hidden command with `context: 'adapter'` gets no adapter on a tie instead of a refusal). A host that calls a handler outside `createHarnessCli` passes a flag or records a context first (`setHarnessContext(await resolveHarnessContext({ tokens }))`).
23
+ - `detectAdapter(target, declared?)` is the unique match over the registered adapters and the given plugin declarations (matched by their declared `detect`), so two matches in one pass throw `AdapterAmbiguousError` instead of the first registered winning.
24
+ - `handleStatus` takes `--adapter` and `--platform` before the context, like `doctor`. A host adds them to its `status` grammar.
25
+ - Publish with adapter-sdk 0.8.0, agent-runtime 0.17.1, protocol 0.35.0 and recipe-runner 0.28.0.
26
+
27
+ ## 0.10.1 - 2026-10-09
28
+
29
+ - Fix: a timed-out leaf no longer crashes the harness with `kill EPERM` when `spawnScriptStreaming` signals its process group again after SIGKILLing it. On macOS a group whose only members are killed processes not yet reaped answers `EPERM` instead of `ESRCH`; that `EPERM` now counts as the group being gone once the group has been SIGKILLed or the leaf has exited. Any other `EPERM` still throws.
30
+ - Publish with adapter-sdk 0.7.2, agent-runtime 0.17.0, protocol 0.34.0 and recipe-runner 0.27.1.
31
+
9
32
  ## 0.10.0 - 2026-10-08
10
33
 
11
34
  - `prepare --json-stream` and `doctor --fix --json-stream`: stdout is NDJSON, a `stage` event per stage line (a step's own stages arrive under it with `child`, the child's line), then `complete`. `prepare` completes with `ready`, `recordPath` and each step's status and duration; `doctor --fix` with `fixed`, `failed`, `ready`, `nextActions` and the error when it fails. Anything else either command prints goes to stderr. `doctor --json-stream` without `--fix` is a usage error that points to `doctor --json`. `--json` output is unchanged.
@@ -1,5 +1,6 @@
1
1
  import { type AdapterDoctorCheck, type PlatformAdapter } from '@farmslot/adapter-sdk';
2
2
  import { type RecipeLibraryAdapterDeclaration, type RecipeLibrarySource } from '@farmslot/recipe-runner';
3
+ import type { AdapterCandidate } from './context-state.js';
3
4
  import { CliError } from './parse-args.js';
4
5
  export type AdapterPluginErrorCode = 'ADAPTER_SDK_UNSUPPORTED' | 'ADAPTER_PLUGIN_INVALID' | 'ADAPTER_PLUGIN_LOAD_FAILED' | 'ADAPTER_ID_CONFLICT' | 'ADAPTER_EXTENDS_UNKNOWN';
5
6
  /** A declared adapter that cannot be selected. */
@@ -71,6 +72,13 @@ export declare function declaredAdapterIds(sources: readonly RecipeLibrarySource
71
72
  * passthrough and select nothing.
72
73
  */
73
74
  export declare function selectedAdapterId(tokens: readonly string[]): string | undefined;
75
+ /**
76
+ * Every `adapters` entry the operator's libraries declare, read without
77
+ * importing anything: the libraries the loader trusts (`--library`, the
78
+ * operator's RECIPE_LIBRARY_PATH or else the personal library, then
79
+ * `configured`). A library whose manifest does not read declares nothing here.
80
+ */
81
+ export declare function declaredAdapters(options?: AdapterLibraryOptions): Promise<DeclaredAdapter[]>;
74
82
  /** The plugin the loader registered under `id` in the host's registry, if any. */
75
83
  export declare function adapterPlugin(id: string): LoadedAdapterPlugin | undefined;
76
84
  /** Every plugin the loader registered in the host's registry, in load order. */
@@ -95,12 +103,14 @@ export declare function ensureAdapterLoaded(id: string | undefined, options?: Ad
95
103
  export declare function composeAdapter(parent: PlatformAdapter, child: PlatformAdapter): PlatformAdapter;
96
104
  /**
97
105
  * Print a refused adapter selection: the `--json` envelope or the human line.
98
- * Takes any error with a `code` and `userAction` (the loader's, and the library
99
- * reader's RECIPE_SOURCE_INVALID); returns the exit code.
106
+ * Takes any error with a `code` and `userAction` (the loader's, the library
107
+ * reader's RECIPE_SOURCE_INVALID, and ADAPTER_AMBIGUOUS with its `candidates`);
108
+ * returns the exit code.
100
109
  */
101
110
  export declare function adapterSelectionFailureOut(json: boolean, command: string, error: {
102
111
  code: string;
103
112
  message: string;
104
113
  userAction: string;
114
+ candidates?: readonly AdapterCandidate[];
105
115
  }): number;
106
116
  //# sourceMappingURL=adapter-plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-plugins.d.ts","sourceRoot":"","sources":["../../src/harness/adapter-plugins.ts"],"names":[],"mappings":"AAkBA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAOL,KAAK,+BAA+B,EACpC,KAAK,mBAAmB,EAGzB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,QAAQ,EAAY,MAAM,iBAAiB,CAAC;AAIrD,MAAM,MAAM,sBAAsB,GAC9B,yBAAyB,GACzB,wBAAwB,GACxB,4BAA4B,GAC5B,qBAAqB,GACrB,yBAAyB,CAAC;AAE9B,kDAAkD;AAClD,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAChB,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAM9E;AAED,6DAA6D;AAC7D,MAAM,WAAW,eAAgB,SAAQ,+BAA+B;IACtE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qFAAqF;AACrF,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,8FAA8F;IAC9F,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC5C;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D;;;OAGG;IACH,KAAK,CAAC,CAAC,OAAO,EAAE,eAAe,GAAG,eAAe,CAAC;CACnD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,SAAS,GAAE,SAAS,MAAM,EAAO,EACjC,OAAO,GAAE,IAAI,CAAC,qBAAqB,EAAE,YAAY,GAAG,KAAK,CAAM,GAC9D,MAAM,EAAE,CAGV;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,GAAG,MAAM,EAAE,CAEpF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAK/E;AAED,kFAAkF;AAClF,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAEzE;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,IAAI,mBAAmB,EAAE,CAE5D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,kBAAkB,EAAE,CAQ1D;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAcf;AA2JD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,GAAG,eAAe,CAgC/F;AAiKD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM,EACf,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3D,MAAM,CAqBR"}
1
+ {"version":3,"file":"adapter-plugins.d.ts","sourceRoot":"","sources":["../../src/harness/adapter-plugins.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,15 @@ export function selectedAdapterId(tokens) {
59
59
  return (lastOptionValue(tokens, '--adapter') ??
60
60
  adapterForPlatform(lastOptionValue(tokens, '--platform')));
61
61
  }
62
+ /**
63
+ * Every `adapters` entry the operator's libraries declare, read without
64
+ * importing anything: the libraries the loader trusts (`--library`, the
65
+ * operator's RECIPE_LIBRARY_PATH or else the personal library, then
66
+ * `configured`). A library whose manifest does not read declares nothing here.
67
+ */
68
+ export function declaredAdapters(options = {}) {
69
+ return declarations(options, { lenient: true });
70
+ }
62
71
  /** The plugin the loader registered under `id` in the host's registry, if any. */
63
72
  export function adapterPlugin(id) {
64
73
  return loadedInto(harnessAdapters()).get(id);
@@ -380,8 +389,9 @@ function lastOptionValue(tokens, name) {
380
389
  }
381
390
  /**
382
391
  * Print a refused adapter selection: the `--json` envelope or the human line.
383
- * Takes any error with a `code` and `userAction` (the loader's, and the library
384
- * reader's RECIPE_SOURCE_INVALID); returns the exit code.
392
+ * Takes any error with a `code` and `userAction` (the loader's, the library
393
+ * reader's RECIPE_SOURCE_INVALID, and ADAPTER_AMBIGUOUS with its `candidates`);
394
+ * returns the exit code.
385
395
  */
386
396
  export function adapterSelectionFailureOut(json, command, error) {
387
397
  if (json) {
@@ -390,7 +400,12 @@ export function adapterSelectionFailureOut(json, command, error) {
390
400
  command,
391
401
  status: 'fail',
392
402
  exitCode: EXIT.usage,
393
- error: { code: error.code, message: error.message, userAction: error.userAction },
403
+ error: {
404
+ code: error.code,
405
+ message: error.message,
406
+ userAction: error.userAction,
407
+ ...(error.candidates ? { candidates: error.candidates } : {}),
408
+ },
394
409
  }, null, 2));
395
410
  }
396
411
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-plugins.js","sourceRoot":"","sources":["../../src/harness/adapter-plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-plugins.js","sourceRoot":"","sources":["../../src/harness/adapter-plugins.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,42 @@
1
- import { type AdapterRegistry, type PlatformAdapter } from '@farmslot/adapter-sdk';
1
+ import { type AdapterDetect, type AdapterDetectSpec, type AdapterRegistry, type PlatformAdapter } from '@farmslot/adapter-sdk';
2
+ import { type AdapterCandidate } from './context-state.js';
2
3
  /** Set the registry the generic commands use. Call once, before any command runs. */
3
4
  export declare function configureHarnessAdapters(next: AdapterRegistry): void;
4
5
  export declare function harnessAdapters(): AdapterRegistry;
5
6
  export declare function harnessAdapter(id: string): PlatformAdapter;
6
7
  /**
7
- * The adapter whose checkout `target` is, or undefined. Any adapter's remote
8
- * match beats any adapter's file match; within a pass, registration order decides.
8
+ * The adapter whose checkout `target` is, or undefined: the unique match among
9
+ * the registered adapters and the `declared` plugins (`detectAdapterMatch`).
10
+ * More than one match throws AdapterAmbiguousError.
9
11
  */
10
- export declare function detectAdapter(target: string): string | undefined;
12
+ export declare function detectAdapter(target: string, declared?: readonly DeclaredDetect[]): string | undefined;
13
+ /** A plugin a library declares, with the `detect` it declares. */
14
+ export interface DeclaredDetect {
15
+ id: string;
16
+ library: string;
17
+ extends?: string;
18
+ detect?: AdapterDetectSpec;
19
+ }
20
+ /**
21
+ * The registered adapters by their `detect` and the declared plugins by their
22
+ * declaration's, ranked by `pickDetected`. A plugin is matched by its
23
+ * declaration whether or not it is loaded; the caller passes plugin
24
+ * declarations only (the resolver drops one that claims a built-in id).
25
+ */
26
+ export declare function detectAdapterMatch(target: string, declared?: readonly DeclaredDetect[]): AdapterCandidate | undefined;
27
+ /** An adapter detection can choose: its id, what it extends, and its predicates. */
28
+ export interface DetectEntry {
29
+ id: string;
30
+ extends?: string;
31
+ library?: string;
32
+ detect?: AdapterDetect;
33
+ }
34
+ /**
35
+ * The one entry whose predicates match `target`, or undefined. Any remote match
36
+ * beats any file match; within that pass an adapter beats one it extends.
37
+ * More than one left throws AdapterAmbiguousError listing them.
38
+ */
39
+ export declare function pickDetected(entries: readonly DetectEntry[], target: string): AdapterCandidate | undefined;
11
40
  /** The adapter a `--platform` value or positional target names: its own id, or one of its `targets`. */
12
41
  export declare function adapterForPlatform(value: string | undefined): string | undefined;
13
42
  /** Whether `value` is one of an adapter's positional platform targets. */
@@ -1 +1 @@
1
- {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/harness/adapters.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,eAAe,EAEpB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAM/B,qFAAqF;AACrF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAEpE;AAED,wBAAgB,eAAe,IAAI,eAAe,CAEjD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CAE1D;AAMD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAoBhE;AAED,wGAAwG;AACxG,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGhF;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAE3E;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAM/C;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAQzE;AAED,8EAA8E;AAC9E,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAEzC;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,EAAE,CAElE"}
1
+ {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/harness/adapters.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAEpB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAyB,KAAK,gBAAgB,EAAoB,MAAM,oBAAoB,CAAC;AAKpG,qFAAqF;AACrF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAEpE;AAED,wBAAgB,eAAe,IAAI,eAAe,CAEjD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CAE1D;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,QAAQ,GAAE,SAAS,cAAc,EAAO,GACvC,MAAM,GAAG,SAAS,CAEpB;AAED,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,QAAQ,GAAE,SAAS,cAAc,EAAO,GACvC,gBAAgB,GAAG,SAAS,CAqB9B;AAED,oFAAoF;AACpF,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,MAAM,EAAE,MAAM,GACb,gBAAgB,GAAG,SAAS,CA2B9B;AAeD,wGAAwG;AACxG,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGhF;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAE3E;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAM/C;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAQzE;AAED,8EAA8E;AAC9E,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAEzC;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,EAAE,CAElE"}
@@ -2,7 +2,9 @@
2
2
  // and every generic command resolves platform behaviour through them. No
3
3
  // command compares adapter ids.
4
4
  import { execFileSync } from 'node:child_process';
5
- import { createAdapterRegistry, } from '@farmslot/adapter-sdk';
5
+ import path from 'node:path';
6
+ import { adapterDetectFromSpec, createAdapterRegistry, } from '@farmslot/adapter-sdk';
7
+ import { AdapterAmbiguousError } from './context-state.js';
6
8
  import { harnessHost } from './host.js';
7
9
  let registry = createAdapterRegistry();
8
10
  /** Set the registry the generic commands use. Call once, before any command runs. */
@@ -19,31 +21,87 @@ function registered() {
19
21
  return registry.list().map((id) => registry.get(id));
20
22
  }
21
23
  /**
22
- * The adapter whose checkout `target` is, or undefined. Any adapter's remote
23
- * match beats any adapter's file match; within a pass, registration order decides.
24
+ * The adapter whose checkout `target` is, or undefined: the unique match among
25
+ * the registered adapters and the `declared` plugins (`detectAdapterMatch`).
26
+ * More than one match throws AdapterAmbiguousError.
24
27
  */
25
- export function detectAdapter(target) {
28
+ export function detectAdapter(target, declared = []) {
29
+ return detectAdapterMatch(target, declared)?.adapter;
30
+ }
31
+ /**
32
+ * The registered adapters by their `detect` and the declared plugins by their
33
+ * declaration's, ranked by `pickDetected`. A plugin is matched by its
34
+ * declaration whether or not it is loaded; the caller passes plugin
35
+ * declarations only (the resolver drops one that claims a built-in id).
36
+ */
37
+ export function detectAdapterMatch(target, declared = []) {
26
38
  // An empty registry would detect nothing for every checkout; that is a host
27
39
  // wiring error, not an unknown checkout.
28
40
  assertAdaptersRegistered();
29
- let remote = '';
41
+ const plugins = new Map(declared.map((declaration) => [declaration.id, declaration]));
42
+ const entries = registered()
43
+ .filter((adapter) => !plugins.has(adapter.id))
44
+ .map((adapter) => ({
45
+ id: adapter.id,
46
+ ...(adapter.extends ? { extends: adapter.extends } : {}),
47
+ ...(adapter.detect ? { detect: adapter.detect } : {}),
48
+ }));
49
+ for (const declaration of plugins.values()) {
50
+ entries.push({
51
+ id: declaration.id,
52
+ library: declaration.library,
53
+ ...(declaration.extends ? { extends: declaration.extends } : {}),
54
+ ...(declaration.detect ? { detect: adapterDetectFromSpec(declaration.detect) } : {}),
55
+ });
56
+ }
57
+ return pickDetected(entries, target);
58
+ }
59
+ /**
60
+ * The one entry whose predicates match `target`, or undefined. Any remote match
61
+ * beats any file match; within that pass an adapter beats one it extends.
62
+ * More than one left throws AdapterAmbiguousError listing them.
63
+ */
64
+ export function pickDetected(entries, target) {
65
+ const remote = checkoutRemote(target);
66
+ const matches = entries.flatMap((entry) => {
67
+ const matched = [];
68
+ if (remote && entry.detect?.remote?.(remote))
69
+ matched.push('remote');
70
+ if (entry.detect?.files?.(target))
71
+ matched.push('files');
72
+ return matched.length > 0 ? [{ entry, matched }] : [];
73
+ });
74
+ const byRemote = matches.filter((match) => match.matched.includes('remote'));
75
+ const pass = byRemote.length > 0 ? byRemote : matches;
76
+ const parents = new Map(entries.map((entry) => [entry.id, entry.extends]));
77
+ const ancestors = (id) => {
78
+ const seen = new Set();
79
+ for (let parent = parents.get(id); parent && !seen.has(parent); parent = parents.get(parent))
80
+ seen.add(parent);
81
+ return seen;
82
+ };
83
+ const left = pass.filter((match) => !pass.some((other) => ancestors(other.entry.id).has(match.entry.id)));
84
+ const candidates = left.map(({ entry, matched }) => ({
85
+ adapter: entry.id,
86
+ matched,
87
+ ...(entry.library ? { library: entry.library } : {}),
88
+ }));
89
+ if (candidates.length > 1)
90
+ throw new AdapterAmbiguousError(path.resolve(target), candidates);
91
+ return candidates[0];
92
+ }
93
+ // The checkout's origin URL, or '' when it is not a Git checkout or has none.
94
+ function checkoutRemote(target) {
30
95
  try {
31
- remote = execFileSync('git', ['-C', target, 'config', '--get', 'remote.origin.url'], {
96
+ return execFileSync('git', ['-C', target, 'config', '--get', 'remote.origin.url'], {
32
97
  encoding: 'utf8',
33
98
  stdio: ['ignore', 'pipe', 'ignore'],
34
99
  }).trim();
35
100
  }
36
101
  catch {
37
102
  // Not a Git checkout, or no origin: only the file checks apply.
38
- remote = '';
39
- }
40
- const adapters = registered();
41
- if (remote) {
42
- const byRemote = adapters.find((adapter) => adapter.detect?.remote?.(remote));
43
- if (byRemote)
44
- return byRemote.id;
103
+ return '';
45
104
  }
46
- return adapters.find((adapter) => adapter.detect?.files?.(target))?.id;
47
105
  }
48
106
  /** The adapter a `--platform` value or positional target names: its own id, or one of its `targets`. */
49
107
  export function adapterForPlatform(value) {
@@ -1 +1 @@
1
- {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/harness/adapters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/harness/adapters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare class CliError extends Error {
2
+ readonly exitCode: number;
3
+ constructor(message: string, exitCode: number);
4
+ }
5
+ //# sourceMappingURL=cli-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-error.d.ts","sourceRoot":"","sources":["../../src/harness/cli-error.ts"],"names":[],"mappings":"AAMA,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBACd,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAK9C"}
@@ -0,0 +1,14 @@
1
+ // Typed exit-code error: carries exitCode so both the global catch (the host bin)
2
+ // and the host's delegate() wrapper classify the error correctly rather than always
3
+ // returning 1. Usage errors (bad args / unsupported flags) carry EXIT.usage (2);
4
+ // validation errors carry EXIT.validation (5). Never throw a plain new Error() for
5
+ // user-facing bad-args cases — use usageError() so the exit code is preserved.
6
+ // Its own module, so modules parse-args depends on can extend it.
7
+ export class CliError extends Error {
8
+ constructor(message, exitCode) {
9
+ super(message);
10
+ this.name = 'CliError';
11
+ this.exitCode = exitCode;
12
+ }
13
+ }
14
+ //# sourceMappingURL=cli-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-error.js","sourceRoot":"","sources":["../../src/harness/cli-error.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,oFAAoF;AACpF,kFAAkF;AAClF,oFAAoF;AACpF,+EAA+E;AAC/E,kEAAkE;AAClE,MAAM,OAAO,QAAS,SAAQ,KAAK;IAEjC,YAAY,OAAe,EAAE,QAAgB;QAC3C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF"}
@@ -79,6 +79,12 @@ export declare const contractOptions: (...groups: Record<string, OptionSpec>[])
79
79
  export declare function validatePublicInvocation(argv: readonly string[], commands: readonly ContractedCommand[], validation?: ContractValidationOptions): CliUsageError | null;
80
80
  /** Every value `option` takes in `tokens` before any `--`, separate (`--x v`) or inline (`--x=v`). */
81
81
  export declare function optionValues(tokens: readonly string[], option: string): string[];
82
+ /**
83
+ * The positionals in `tokens` (the arguments after the command) as `contract`
84
+ * reads them: a value option's separate value is not one, and nothing after
85
+ * `--` is. Assumes the invocation already passed `validatePublicInvocation`.
86
+ */
87
+ export declare function contractPositionals(tokens: readonly string[], contract: CommandContract): string[];
82
88
  /** Every public command name and alias, in table order. */
83
89
  export declare function publicCommandTokens(commands: readonly ContractedCommand[]): string[];
84
90
  //# sourceMappingURL=command-contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-contract.d.ts","sourceRoot":"","sources":["../../src/harness/command-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-contract.d.ts","sourceRoot":"","sources":["../../src/harness/command-contract.ts"],"names":[],"mappings":"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"}
@@ -178,6 +178,28 @@ export function optionValues(tokens, option) {
178
178
  }
179
179
  return values;
180
180
  }
181
+ /**
182
+ * The positionals in `tokens` (the arguments after the command) as `contract`
183
+ * reads them: a value option's separate value is not one, and nothing after
184
+ * `--` is. Assumes the invocation already passed `validatePublicInvocation`.
185
+ */
186
+ export function contractPositionals(tokens, contract) {
187
+ const positionals = [];
188
+ for (let index = 0; index < tokens.length; index += 1) {
189
+ const argument = tokens[index] ?? '';
190
+ if (argument === '--')
191
+ break;
192
+ if (!argument.startsWith('-') || argument === '-') {
193
+ positionals.push(argument);
194
+ continue;
195
+ }
196
+ if (argument.includes('='))
197
+ continue;
198
+ if (contract.options[argument]?.kind === 'value')
199
+ index += 1;
200
+ }
201
+ return positionals;
202
+ }
181
203
  /** Every public command name and alias, in table order. */
182
204
  export function publicCommandTokens(commands) {
183
205
  return commands.flatMap((command) => [command.name, ...(command.aliases ?? [])]);
@@ -1 +1 @@
1
- {"version":3,"file":"command-contract.js","sourceRoot":"","sources":["../../src/harness/command-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-contract.js","sourceRoot":"","sources":["../../src/harness/command-contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../../src/harness/commands/call.ts"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,aAAa,EAGnB,MAAM,eAAe,CAAC;AAwBvB,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAQL,KAAK,YAAY,EAIlB,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EACL,KAAK,eAAe,EAEpB,KAAK,qBAAqB,EAG3B,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,kBAAkB,CAAC,SAAS,EAAE,UAAU,SAAS,gBAAgB;IAChF,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5C,YAAY,CAAC,EAAE,eAAe,CAAC;IAG/B,aAAa,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC;CAC9D;AAED,wBAAsB,UAAU,CAAC,SAAS,EAAE,UAAU,SAAS,gBAAgB,EAC7E,IAAI,EAAE,MAAM,EAAE,EACd,cAAc,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,GACxD,OAAO,CAAC,MAAM,CAAC,CAqiBjB;AAoGD,sGAAsG;AACtG,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,qBAAqB,CAGzE;AA0BD,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,SAAK,GAAG,OAAO,CAKjE;AAQD,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE;IAAE,OAAO,EAAE,aAAa,CAAA;CAAE,GACzC,OAAO,CAAC,MAAM,CAAC,CA+CjB"}
1
+ {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../../src/harness/commands/call.ts"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,aAAa,EAGnB,MAAM,eAAe,CAAC;AAyBvB,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAQL,KAAK,YAAY,EAIlB,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EACL,KAAK,eAAe,EAEpB,KAAK,qBAAqB,EAG3B,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,kBAAkB,CAAC,SAAS,EAAE,UAAU,SAAS,gBAAgB;IAChF,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5C,YAAY,CAAC,EAAE,eAAe,CAAC;IAG/B,aAAa,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC;CAC9D;AAED,wBAAsB,UAAU,CAAC,SAAS,EAAE,UAAU,SAAS,gBAAgB,EAC7E,IAAI,EAAE,MAAM,EAAE,EACd,cAAc,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,GACxD,OAAO,CAAC,MAAM,CAAC,CAgjBjB;AAoGD,sGAAsG;AACtG,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,qBAAqB,CAGzE;AA0BD,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,SAAK,GAAG,OAAO,CAKjE;AAQD,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE;IAAE,OAAO,EAAE,aAAa,CAAA;CAAE,GACzC,OAAO,CAAC,MAAM,CAAC,CA+CjB"}