@proletariat/cli 0.3.109 → 0.3.110

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.
@@ -8,7 +8,15 @@
8
8
  * with manual invocations.
9
9
  */
10
10
  import type { OrchestrateEventContext, OrchestrateActionResult } from './types.js';
11
+ import { type ChainExecutor } from './prompt-chain.js';
11
12
  type ActionHandler = (ctx: OrchestrateEventContext, config?: Record<string, unknown>) => OrchestrateActionResult;
13
+ /**
14
+ * Test-only seam for swapping out the prlt CLI executor used by walkPromptChain.
15
+ * Pass `null` to restore the default spawnSync executor.
16
+ *
17
+ * This avoids monkey-patching child_process across the test suite.
18
+ */
19
+ export declare function setChainExecutorForTesting(executor: ChainExecutor | null): void;
12
20
  /**
13
21
  * Timeout for actions that spawn agents via `prlt work start`.
14
22
  * Container creation + clone + setup regularly exceeds 60s,
@@ -13,6 +13,21 @@ import * as fs from 'node:fs';
13
13
  import { resolveWorkflowTarget } from '../work-lifecycle/settings.js';
14
14
  import { executeCascade, detectZombieContainers, detectOrphanedWorktrees, detectStaleTmuxSessions, } from '../gc/cascade.js';
15
15
  import { getEventBus } from '../events/event-bus.js';
16
+ import { walkPromptChain, resolveActionDefaults, defaultChainExecutor, } from './prompt-chain.js';
17
+ /**
18
+ * Module-level chain executor — overridable for tests via setChainExecutorForTesting().
19
+ * Production code uses defaultChainExecutor (spawnSync).
20
+ */
21
+ let chainExecutor = defaultChainExecutor;
22
+ /**
23
+ * Test-only seam for swapping out the prlt CLI executor used by walkPromptChain.
24
+ * Pass `null` to restore the default spawnSync executor.
25
+ *
26
+ * This avoids monkey-patching child_process across the test suite.
27
+ */
28
+ export function setChainExecutorForTesting(executor) {
29
+ chainExecutor = executor || defaultChainExecutor;
30
+ }
16
31
  /**
17
32
  * Timeout for actions that spawn agents via `prlt work start`.
18
33
  * Container creation + clone + setup regularly exceeds 60s,
@@ -21,46 +36,63 @@ import { getEventBus } from '../events/event-bus.js';
21
36
  export const AGENT_SPAWN_TIMEOUT_MS = 180_000;
22
37
  /**
23
38
  * Merge a PR via `prlt work ship`.
39
+ *
40
+ * Walks the JSON prompt chain so that any prompts emitted by `prlt work ship`
41
+ * (e.g. merge method, delete-branch confirmation) are answered with the
42
+ * configured defaults instead of hanging.
24
43
  */
25
44
  const mergePr = (ctx, config) => {
26
45
  const start = Date.now();
27
- try {
28
- if (!ctx.ticket && !ctx.pr) {
29
- return { action: 'merge-pr', success: false, error: 'No ticket or PR number in context', durationMs: Date.now() - start };
30
- }
31
- const args = ['prlt', 'work', 'ship'];
32
- if (ctx.ticket)
33
- args.push(ctx.ticket);
34
- if (ctx.pr)
35
- args.push('--pr', String(ctx.pr));
36
- execSync(args.join(' '), { timeout: 120_000, stdio: 'pipe' });
37
- return { action: 'merge-pr', success: true, durationMs: Date.now() - start };
38
- }
39
- catch (err) {
40
- return { action: 'merge-pr', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
46
+ if (!ctx.ticket && !ctx.pr) {
47
+ return { action: 'merge-pr', success: false, error: 'No ticket or PR number in context', durationMs: Date.now() - start };
41
48
  }
49
+ const args = ['prlt', 'work', 'ship'];
50
+ if (ctx.ticket)
51
+ args.push(ctx.ticket);
52
+ if (ctx.pr)
53
+ args.push('--pr', String(ctx.pr));
54
+ const result = walkPromptChain({
55
+ baseCommand: args.join(' '),
56
+ defaults: resolveActionDefaults('merge-pr', config),
57
+ timeoutMs: 120_000,
58
+ executor: chainExecutor,
59
+ });
60
+ return {
61
+ action: 'merge-pr',
62
+ success: result.success,
63
+ error: result.error,
64
+ durationMs: Date.now() - start,
65
+ };
42
66
  };
43
67
  /**
44
68
  * Move a ticket to a target status.
45
69
  *
46
70
  * Resolves intent-like targets (e.g. 'done', 'review') through the workflow
47
- * configuration so users with custom column names get the right mapping.
71
+ * configuration so users with custom column names get the right mapping,
72
+ * then walks any JSON prompts emitted by `prlt ticket move`.
48
73
  */
49
74
  const moveTicket = (ctx, config) => {
50
75
  const start = Date.now();
51
- try {
52
- let target = config?.target || 'done';
53
- if (!ctx.ticket) {
54
- return { action: 'move-ticket', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
55
- }
56
- // Resolve the target through workflow config (e.g. 'done' 'Shipped')
57
- target = resolveTargetFromWorkspace(target);
58
- execSync(`prlt ticket move ${ctx.ticket} "${target}"`, { timeout: 30_000, stdio: 'pipe' });
59
- return { action: 'move-ticket', success: true, durationMs: Date.now() - start };
60
- }
61
- catch (err) {
62
- return { action: 'move-ticket', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
63
- }
76
+ if (!ctx.ticket) {
77
+ return { action: 'move-ticket', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
78
+ }
79
+ // Pull the configured target (defaults are merged in resolveActionDefaults
80
+ // below, but we still need to resolve it through workflow settings here so
81
+ // intent-like targets like 'done' map to the user's actual column name).
82
+ const requestedTarget = config?.target || 'done';
83
+ const resolvedTarget = resolveTargetFromWorkspace(requestedTarget);
84
+ const result = walkPromptChain({
85
+ baseCommand: `prlt ticket move ${ctx.ticket} "${resolvedTarget}"`,
86
+ defaults: resolveActionDefaults('move-ticket', config),
87
+ timeoutMs: 30_000,
88
+ executor: chainExecutor,
89
+ });
90
+ return {
91
+ action: 'move-ticket',
92
+ success: result.success,
93
+ error: result.error,
94
+ durationMs: Date.now() - start,
95
+ };
64
96
  };
65
97
  /**
66
98
  * Resolve a workflow target by opening the workspace DB and checking settings.
@@ -116,36 +148,55 @@ const rebaseConflictingPrs = (ctx) => {
116
148
  }
117
149
  };
118
150
  /**
119
- * Spawn an agent for a ticket.
151
+ * Spawn an agent for a ticket by walking the JSON prompt chain.
152
+ *
153
+ * `prlt work start` emits multiple JSON prompts (environment, display,
154
+ * permission-mode, PR creation, etc.) — hardcoding flags is brittle because
155
+ * adding any new prompt breaks the chain. Instead, we walk the chain and pick
156
+ * a configured default for every prompt name we encounter. Defaults can be
157
+ * overridden per hook via `args.defaults` config.
120
158
  */
121
- const spawnAgent = (ctx) => {
159
+ const spawnAgent = (ctx, config) => {
122
160
  const start = Date.now();
123
- try {
124
- if (!ctx.ticket) {
125
- return { action: 'spawn-agent', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
126
- }
127
- execSync(`prlt work start ${ctx.ticket} --yes --display background`, { timeout: AGENT_SPAWN_TIMEOUT_MS, stdio: 'pipe' });
128
- return { action: 'spawn-agent', success: true, durationMs: Date.now() - start };
129
- }
130
- catch (err) {
131
- return { action: 'spawn-agent', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
132
- }
161
+ if (!ctx.ticket) {
162
+ return { action: 'spawn-agent', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
163
+ }
164
+ const result = walkPromptChain({
165
+ baseCommand: `prlt work start ${ctx.ticket}`,
166
+ defaults: resolveActionDefaults('spawn-agent', config),
167
+ timeoutMs: AGENT_SPAWN_TIMEOUT_MS,
168
+ executor: chainExecutor,
169
+ });
170
+ return {
171
+ action: 'spawn-agent',
172
+ success: result.success,
173
+ error: result.error,
174
+ durationMs: Date.now() - start,
175
+ };
133
176
  };
134
177
  /**
135
178
  * Respawn a failed/died agent.
179
+ *
180
+ * Same as spawn-agent but passes --force so prlt skips its
181
+ * "work already in progress" guard.
136
182
  */
137
183
  const respawn = (ctx, config) => {
138
184
  const start = Date.now();
139
- try {
140
- if (!ctx.ticket) {
141
- return { action: 'respawn', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
142
- }
143
- execSync(`prlt work start ${ctx.ticket} --yes --display background --force`, { timeout: AGENT_SPAWN_TIMEOUT_MS, stdio: 'pipe' });
144
- return { action: 'respawn', success: true, durationMs: Date.now() - start };
145
- }
146
- catch (err) {
147
- return { action: 'respawn', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
148
- }
185
+ if (!ctx.ticket) {
186
+ return { action: 'respawn', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
187
+ }
188
+ const result = walkPromptChain({
189
+ baseCommand: `prlt work start ${ctx.ticket} --force`,
190
+ defaults: resolveActionDefaults('spawn-agent', config),
191
+ timeoutMs: AGENT_SPAWN_TIMEOUT_MS,
192
+ executor: chainExecutor,
193
+ });
194
+ return {
195
+ action: 'respawn',
196
+ success: result.success,
197
+ error: result.error,
198
+ durationMs: Date.now() - start,
199
+ };
149
200
  };
150
201
  /**
151
202
  * Send a notification about an event.
@@ -202,38 +253,52 @@ const cleanupContainer = (ctx) => {
202
253
  }
203
254
  };
204
255
  /**
205
- * Spawn a fix agent after CI failure.
256
+ * Spawn a fix agent after CI failure. Uses --action revise so the agent
257
+ * launches into the revise role prompt; everything else (environment,
258
+ * display, permission mode, …) comes from prompt-chain defaults.
206
259
  */
207
- const spawnFixAgent = (ctx) => {
260
+ const spawnFixAgent = (ctx, config) => {
208
261
  const start = Date.now();
209
- try {
210
- if (!ctx.ticket) {
211
- return { action: 'spawn-fix-agent', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
212
- }
213
- execSync(`prlt work start ${ctx.ticket} --action revise --yes --display background`, { timeout: AGENT_SPAWN_TIMEOUT_MS, stdio: 'pipe' });
214
- return { action: 'spawn-fix-agent', success: true, durationMs: Date.now() - start };
215
- }
216
- catch (err) {
217
- return { action: 'spawn-fix-agent', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
218
- }
262
+ if (!ctx.ticket) {
263
+ return { action: 'spawn-fix-agent', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
264
+ }
265
+ const result = walkPromptChain({
266
+ baseCommand: `prlt work start ${ctx.ticket} --action revise`,
267
+ defaults: resolveActionDefaults('spawn-fix-agent', config),
268
+ timeoutMs: AGENT_SPAWN_TIMEOUT_MS,
269
+ executor: chainExecutor,
270
+ });
271
+ return {
272
+ action: 'spawn-fix-agent',
273
+ success: result.success,
274
+ error: result.error,
275
+ durationMs: Date.now() - start,
276
+ };
219
277
  };
220
278
  /**
221
279
  * Spawn a review agent for a PR.
222
- * Review agents are non-destructive — they read the diff and post comments.
223
- * Uses --action review to launch in read-only mode with the review role prompt.
280
+ *
281
+ * Review agents are non-destructive they read the diff and post comments,
282
+ * so they default to host environment (faster, no container spin-up) and
283
+ * safe permission mode. --action review pins the read-only role prompt.
224
284
  */
225
- const spawnReviewAgent = (ctx) => {
285
+ const spawnReviewAgent = (ctx, config) => {
226
286
  const start = Date.now();
227
- try {
228
- if (!ctx.ticket) {
229
- return { action: 'spawn-review-agent', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
230
- }
231
- execSync(`prlt work start ${ctx.ticket} --action review --yes --display background`, { timeout: AGENT_SPAWN_TIMEOUT_MS, stdio: 'pipe' });
232
- return { action: 'spawn-review-agent', success: true, durationMs: Date.now() - start };
233
- }
234
- catch (err) {
235
- return { action: 'spawn-review-agent', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
236
- }
287
+ if (!ctx.ticket) {
288
+ return { action: 'spawn-review-agent', success: false, error: 'No ticket in context', durationMs: Date.now() - start };
289
+ }
290
+ const result = walkPromptChain({
291
+ baseCommand: `prlt work start ${ctx.ticket} --action review`,
292
+ defaults: resolveActionDefaults('spawn-review-agent', config),
293
+ timeoutMs: AGENT_SPAWN_TIMEOUT_MS,
294
+ executor: chainExecutor,
295
+ });
296
+ return {
297
+ action: 'spawn-review-agent',
298
+ success: result.success,
299
+ error: result.error,
300
+ durationMs: Date.now() - start,
301
+ };
237
302
  };
238
303
  /**
239
304
  * Health check / poke an idle agent.
@@ -254,31 +319,38 @@ const healthCheck = (ctx) => {
254
319
  /**
255
320
  * Resolve a merge conflict on a PR by poking the running agent or respawning a stopped one.
256
321
  * If the agent is running, it gets poked with a rebase instruction.
257
- * If the agent is stopped, it gets respawned with --action resolve.
322
+ * If the agent is stopped, it gets respawned via the JSON prompt chain
323
+ * with --action resolve.
258
324
  * No action is taken on PRs with no associated ticket.
259
325
  */
260
- const resolveConflict = (ctx) => {
326
+ const resolveConflict = (ctx, config) => {
261
327
  const start = Date.now();
328
+ if (!ctx.ticket) {
329
+ return { action: 'resolve-conflict', success: true, durationMs: Date.now() - start, skipped: true };
330
+ }
331
+ // Try poking the running agent first. `prlt session poke` is a fire-and-
332
+ // forget command that doesn't have a JSON prompt chain — using execSync
333
+ // directly here is intentional.
262
334
  try {
263
- if (!ctx.ticket) {
264
- return { action: 'resolve-conflict', success: true, durationMs: Date.now() - start, skipped: true };
265
- }
266
- // Try poking the running agent first
267
- try {
268
- const pokeMsg = 'Your PR has merge conflicts. Please rebase on main and resolve the conflicts.';
269
- execSync(`prlt session poke ${ctx.ticket} "${pokeMsg}"`, { timeout: 30_000, stdio: 'pipe' });
270
- return { action: 'resolve-conflict', success: true, durationMs: Date.now() - start };
271
- }
272
- catch {
273
- // Poke failed — agent is likely not running, respawn it
274
- }
275
- // Respawn the agent with resolve action
276
- execSync(`prlt work start ${ctx.ticket} --action resolve --yes --display background`, { timeout: AGENT_SPAWN_TIMEOUT_MS, stdio: 'pipe' });
335
+ const pokeMsg = 'Your PR has merge conflicts. Please rebase on main and resolve the conflicts.';
336
+ execSync(`prlt session poke ${ctx.ticket} "${pokeMsg}"`, { timeout: 30_000, stdio: 'pipe' });
277
337
  return { action: 'resolve-conflict', success: true, durationMs: Date.now() - start };
278
338
  }
279
- catch (err) {
280
- return { action: 'resolve-conflict', success: false, error: err instanceof Error ? err.message : String(err), durationMs: Date.now() - start };
281
- }
339
+ catch {
340
+ // Poke failed agent is likely not running, respawn it via prompt chain
341
+ }
342
+ const result = walkPromptChain({
343
+ baseCommand: `prlt work start ${ctx.ticket} --action resolve`,
344
+ defaults: resolveActionDefaults('resolve-conflict', config),
345
+ timeoutMs: AGENT_SPAWN_TIMEOUT_MS,
346
+ executor: chainExecutor,
347
+ });
348
+ return {
349
+ action: 'resolve-conflict',
350
+ success: result.success,
351
+ error: result.error,
352
+ durationMs: Date.now() - start,
353
+ };
282
354
  };
283
355
  /**
284
356
  * GC Sweep — periodic safety net for catching cleanup that events missed.
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/lib/orchestrate/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/lib/orchestrate/actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * walkPromptChain — drive prlt CLI commands non-interactively by walking JSON prompts.
3
+ *
4
+ * Background (PRLT-1268):
5
+ * Action handlers used to hardcode flag combinations like
6
+ * `prlt work start <ticket> --yes --display background`
7
+ * which broke as soon as a command emitted a JSON prompt that wasn't covered
8
+ * by those flags (e.g. environment selection). `--yes` does not bypass JSON
9
+ * prompts.
10
+ *
11
+ * The right approach is to walk the JSON prompt chain. Every prlt command in
12
+ * JSON mode emits one of:
13
+ * - { type: 'prompt', prompt: { name, choices: [{ value, command, ... }, ...] } }
14
+ * - { type: 'success', ... }
15
+ * - { type: 'execution_result', ... }
16
+ * - { type: 'error', ... }
17
+ *
18
+ * For prompt responses, each choice already carries a fully constructed
19
+ * follow-up `command` field. The walker:
20
+ * 1. Runs the current command with --json
21
+ * 2. If response is type=prompt, picks a default choice by name from the
22
+ * defaults map, then runs choice.command
23
+ * 3. Repeats until success/error/iteration cap
24
+ *
25
+ * Per-action default choices live in the action handler and may be overridden
26
+ * by hook config so users can customize behavior without code changes.
27
+ */
28
+ /**
29
+ * Result of executing a single command in the chain.
30
+ */
31
+ export interface ChainExecutorResult {
32
+ /** stdout from the command (where prlt writes JSON) */
33
+ stdout: string;
34
+ /** stderr from the command (for diagnostics on failure) */
35
+ stderr: string;
36
+ /** Exit status — prompts emit with status=2, success with 0 */
37
+ status: number;
38
+ /** Spawn error if the process couldn't be started */
39
+ error?: string;
40
+ }
41
+ /**
42
+ * Function used to execute a command in the chain.
43
+ * Default implementation shells out via spawnSync; tests can inject a mock.
44
+ */
45
+ export type ChainExecutor = (command: string, timeoutMs: number) => ChainExecutorResult;
46
+ /**
47
+ * Default executor — runs the command via spawnSync with a shell.
48
+ */
49
+ export declare const defaultChainExecutor: ChainExecutor;
50
+ /**
51
+ * Options for walkPromptChain.
52
+ */
53
+ export interface WalkPromptChainOptions {
54
+ /** The initial prlt command (with or without --json) */
55
+ baseCommand: string;
56
+ /**
57
+ * Map of prompt name → choice value to pick when that prompt is encountered.
58
+ * The prompt's `name` is the flagName the FlagResolver registered (e.g.,
59
+ * 'environment', 'display', 'permission-mode').
60
+ */
61
+ defaults: Record<string, string>;
62
+ /** Per-command timeout. Defaults to 180s (matches AGENT_SPAWN_TIMEOUT_MS). */
63
+ timeoutMs?: number;
64
+ /** Hard cap on iterations to avoid infinite loops on misconfigured chains. */
65
+ maxIterations?: number;
66
+ /** Custom executor — primarily for tests. */
67
+ executor?: ChainExecutor;
68
+ }
69
+ /**
70
+ * Result of walking the chain.
71
+ */
72
+ export interface WalkPromptChainResult {
73
+ /** Whether the chain reached a success terminal state. */
74
+ success: boolean;
75
+ /** Number of commands executed. */
76
+ iterations: number;
77
+ /** The final command that produced the terminal response. */
78
+ finalCommand: string;
79
+ /** Sequence of commands run, oldest first. Useful for debugging/logging. */
80
+ commandTrail: string[];
81
+ /** Error message if walking failed. */
82
+ error?: string;
83
+ /** Result body from a terminal success/execution_result envelope. */
84
+ result?: Record<string, unknown>;
85
+ }
86
+ /**
87
+ * Walk a JSON prompt chain to completion.
88
+ *
89
+ * Each iteration runs the current command, parses its JSON envelope, and:
90
+ * - On terminal success/execution_result, returns success.
91
+ * - On error, returns failure with the error code/message.
92
+ * - On prompt, picks the default for that prompt's name and runs the
93
+ * corresponding choice's `command`.
94
+ *
95
+ * If a prompt's name has no entry in `defaults`, the walk fails — this is a
96
+ * configuration bug, not something to silently swallow.
97
+ */
98
+ export declare function walkPromptChain(opts: WalkPromptChainOptions): WalkPromptChainResult;
99
+ /**
100
+ * Built-in default choice maps per action. Hook config can shallow-merge
101
+ * over these to override individual prompt defaults.
102
+ *
103
+ * Keys are prompt names (FlagResolver flagName). Values are the choice value
104
+ * to pick. See `apps/cli/src/commands/work/start.ts` for the prompts a
105
+ * `prlt work start` chain may emit.
106
+ */
107
+ export declare const DEFAULT_PROMPT_CHOICES: {
108
+ readonly 'spawn-agent': {
109
+ readonly environment: "devcontainer";
110
+ readonly display: "background";
111
+ readonly selectedDisplay: "background";
112
+ readonly 'permission-mode': "danger";
113
+ readonly tokenAction: "continue";
114
+ readonly dockerAction: "host";
115
+ readonly prChoice: "create";
116
+ readonly saveDefault: "true";
117
+ readonly authAction: "oauth";
118
+ };
119
+ readonly 'spawn-review-agent': {
120
+ readonly environment: "host";
121
+ readonly display: "background";
122
+ readonly selectedDisplay: "background";
123
+ readonly 'permission-mode': "safe";
124
+ readonly prChoice: "no-pr";
125
+ readonly saveDefault: "true";
126
+ };
127
+ readonly 'spawn-fix-agent': {
128
+ readonly environment: "devcontainer";
129
+ readonly display: "background";
130
+ readonly selectedDisplay: "background";
131
+ readonly 'permission-mode': "danger";
132
+ readonly tokenAction: "continue";
133
+ readonly dockerAction: "host";
134
+ readonly prChoice: "create";
135
+ readonly saveDefault: "true";
136
+ readonly authAction: "oauth";
137
+ };
138
+ readonly 'resolve-conflict': {
139
+ readonly environment: "devcontainer";
140
+ readonly display: "background";
141
+ readonly selectedDisplay: "background";
142
+ readonly 'permission-mode': "danger";
143
+ readonly tokenAction: "continue";
144
+ readonly dockerAction: "host";
145
+ readonly prChoice: "create";
146
+ readonly saveDefault: "true";
147
+ readonly authAction: "oauth";
148
+ };
149
+ readonly 'merge-pr': {
150
+ readonly method: "squash";
151
+ readonly 'delete-branch': "true";
152
+ };
153
+ readonly 'move-ticket': {
154
+ readonly target: "done";
155
+ };
156
+ };
157
+ /**
158
+ * Resolve effective defaults for an action by overlaying hook config on top
159
+ * of the built-in defaults. Hook config shape:
160
+ *
161
+ * { defaults: { promptName: 'value', ... } }
162
+ *
163
+ * Unknown keys in hook config are passed through verbatim — there is no
164
+ * allow-list because new prlt prompts get added all the time.
165
+ */
166
+ export declare function resolveActionDefaults(action: keyof typeof DEFAULT_PROMPT_CHOICES, config?: Record<string, unknown>): Record<string, string>;