@aviaratech/ai-delivery 0.3.22 → 0.3.24

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 (131) hide show
  1. package/CONTRIBUTING.md +9 -0
  2. package/README.md +77 -442
  3. package/dist/agent.d.ts +5 -11
  4. package/dist/agent.js +4 -8
  5. package/dist/agent.js.map +1 -1
  6. package/dist/cli.js +59 -107
  7. package/dist/cli.js.map +1 -1
  8. package/dist/config/deliveryConfig.d.ts +44 -55
  9. package/dist/config/deliveryConfig.js +85 -88
  10. package/dist/config/deliveryConfig.js.map +1 -1
  11. package/dist/config/deliveryConfig.test.js +13 -5
  12. package/dist/config/deliveryConfig.test.js.map +1 -1
  13. package/dist/delivery/common.d.ts +4 -1
  14. package/dist/delivery/common.js +56 -8
  15. package/dist/delivery/common.js.map +1 -1
  16. package/dist/delivery/delivery.test.js +2 -3
  17. package/dist/delivery/delivery.test.js.map +1 -1
  18. package/dist/delivery/index.d.ts +0 -6
  19. package/dist/delivery/index.js +0 -3
  20. package/dist/delivery/index.js.map +1 -1
  21. package/dist/delivery/legacy.d.ts +8 -0
  22. package/dist/delivery/legacy.js +5 -0
  23. package/dist/delivery/legacy.js.map +1 -0
  24. package/dist/delivery/policy.js +2 -13
  25. package/dist/delivery/policy.js.map +1 -1
  26. package/dist/delivery/stage.d.ts +6 -0
  27. package/dist/delivery/stage.js +11 -2
  28. package/dist/delivery/stage.js.map +1 -1
  29. package/dist/directoryIndependent.test.d.ts +1 -0
  30. package/dist/directoryIndependent.test.js +262 -0
  31. package/dist/directoryIndependent.test.js.map +1 -0
  32. package/dist/dispatch.d.ts +29 -3
  33. package/dist/dispatch.js +160 -457
  34. package/dist/dispatch.js.map +1 -1
  35. package/dist/genericCompatibility.test.js +0 -35
  36. package/dist/genericCompatibility.test.js.map +1 -1
  37. package/dist/git.js +10 -3
  38. package/dist/git.js.map +1 -1
  39. package/dist/gitProcess.d.ts +6 -0
  40. package/dist/gitProcess.js +56 -0
  41. package/dist/gitProcess.js.map +1 -0
  42. package/dist/github/discovery.d.ts +1 -0
  43. package/dist/github/discovery.js +1 -1
  44. package/dist/github/discovery.js.map +1 -1
  45. package/dist/github/discovery.test.js +25 -20
  46. package/dist/github/discovery.test.js.map +1 -1
  47. package/dist/github/nativeIssueMetadata.d.ts +2 -2
  48. package/dist/github/nativeIssueMetadata.js.map +1 -1
  49. package/dist/github/projectDelivery.d.ts +1 -1
  50. package/dist/github/projectDelivery.js.map +1 -1
  51. package/dist/github/repo.d.ts +7 -1
  52. package/dist/github/repo.js +58 -2
  53. package/dist/github/repo.js.map +1 -1
  54. package/dist/issue.d.ts +11 -6
  55. package/dist/issue.js +136 -319
  56. package/dist/issue.js.map +1 -1
  57. package/dist/issueJournal.d.ts +1 -1
  58. package/dist/lifecycle.test.js +40 -7371
  59. package/dist/lifecycle.test.js.map +1 -1
  60. package/dist/logger.js +4 -4
  61. package/dist/logger.js.map +1 -1
  62. package/dist/mcp/index.js +2 -1
  63. package/dist/mcp/index.js.map +1 -1
  64. package/dist/mcp/tools.d.ts +27 -42
  65. package/dist/mcp/tools.js +34 -42
  66. package/dist/mcp/tools.js.map +1 -1
  67. package/dist/pluginInstaller.d.ts +51 -0
  68. package/dist/pluginInstaller.js +774 -0
  69. package/dist/pluginInstaller.js.map +1 -0
  70. package/dist/pluginInstaller.test.d.ts +1 -0
  71. package/dist/pluginInstaller.test.js +543 -0
  72. package/dist/pluginInstaller.test.js.map +1 -0
  73. package/dist/pluginPackaging.test.d.ts +1 -0
  74. package/dist/pluginPackaging.test.js +245 -0
  75. package/dist/pluginPackaging.test.js.map +1 -0
  76. package/dist/pr.d.ts +66 -114
  77. package/dist/pr.js +288 -1108
  78. package/dist/pr.js.map +1 -1
  79. package/dist/pr.test.js +295 -237
  80. package/dist/pr.test.js.map +1 -1
  81. package/dist/releaseReconciliation.test.d.ts +1 -0
  82. package/dist/releaseReconciliation.test.js +314 -0
  83. package/dist/releaseReconciliation.test.js.map +1 -0
  84. package/dist/review.d.ts +37 -7
  85. package/dist/review.js +106 -45
  86. package/dist/review.js.map +1 -1
  87. package/dist/review.test.js +30 -71
  88. package/dist/review.test.js.map +1 -1
  89. package/dist/services/agentReadinessService.d.ts +1 -1
  90. package/dist/services/agentReadinessService.js +2 -0
  91. package/dist/services/agentReadinessService.js.map +1 -1
  92. package/dist/services/deliveryAdmission.d.ts +4 -4
  93. package/dist/services/deliveryAdmission.js.map +1 -1
  94. package/dist/setup.d.ts +1 -0
  95. package/dist/setup.js +71 -10
  96. package/dist/setup.js.map +1 -1
  97. package/dist/setup.test.js +594 -204
  98. package/dist/setup.test.js.map +1 -1
  99. package/dist/start.test.d.ts +1 -0
  100. package/dist/start.test.js +72 -0
  101. package/dist/start.test.js.map +1 -0
  102. package/dist/stdoutRegression.test.d.ts +1 -0
  103. package/dist/stdoutRegression.test.js +326 -0
  104. package/dist/stdoutRegression.test.js.map +1 -0
  105. package/dist/verification.d.ts +62 -27
  106. package/dist/verification.js +172 -1337
  107. package/dist/verification.js.map +1 -1
  108. package/dist/worktree.d.ts +1 -31
  109. package/dist/worktree.js +5 -200
  110. package/dist/worktree.js.map +1 -1
  111. package/dist/worktreeTransition.d.ts +1 -1
  112. package/dist/worktreeTransition.js +10 -5
  113. package/dist/worktreeTransition.js.map +1 -1
  114. package/dist/worktreeTransition.test.js +2 -3
  115. package/dist/worktreeTransition.test.js.map +1 -1
  116. package/package.json +4 -4
  117. package/plugins/ai-delivery/.claude-plugin/plugin.json +6 -1
  118. package/plugins/ai-delivery/LICENSE +21 -0
  119. package/plugins/ai-delivery/README.md +4 -2
  120. package/plugins/ai-delivery/dist/mcp-launcher.js +19 -8
  121. package/plugins/ai-delivery/mcp.json +10 -0
  122. package/plugins/ai-delivery/plugin.json +10 -0
  123. package/plugins/ai-delivery/runtime/dist/THIRD-PARTY-NOTICES.md +1010 -0
  124. package/plugins/ai-delivery/runtime/dist/cli.js +276 -0
  125. package/plugins/ai-delivery/runtime/package.json +13 -0
  126. package/plugins/ai-delivery/skills/intake-create/SKILL.md +1 -1
  127. package/plugins/ai-delivery/skills/pr-handoff/SKILL.md +14 -21
  128. package/plugins/ai-delivery/skills/worktree-lifecycle/SKILL.md +12 -23
  129. package/dist/services/deliveryRecordService.d.ts +0 -47
  130. package/dist/services/deliveryRecordService.js +0 -199
  131. package/dist/services/deliveryRecordService.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginInstaller.test.js","sourceRoot":"","sources":["../src/pluginInstaller.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,245 @@
1
+ import assert from 'node:assert/strict';
2
+ import { execFileSync } from 'node:child_process';
3
+ import { cpSync, existsSync, mkdtempSync, readFileSync, realpathSync, rmSync, writeFileSync } from 'node:fs';
4
+ import { tmpdir } from 'node:os';
5
+ import { join } from 'node:path';
6
+ import { fileURLToPath } from 'node:url';
7
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
8
+ import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
9
+ import { test } from 'vitest';
10
+ import pkg from '../package.json' with { type: 'json' };
11
+ import { AI_DELIVERY_MCP_TOOLS } from './mcp/tools.js';
12
+ import { buildRuntimeAdmission, validateRuntimeAdmission } from './services/deliveryAdmission.js';
13
+ import { retainedWorktreeTransitionProducerDigest } from './verification.js';
14
+ import { syntheticDiscoveryConfig } from './fixtures/discovery.js';
15
+ const packageRoot = fileURLToPath(new URL('../', import.meta.url));
16
+ const pluginRoot = join(packageRoot, 'plugins', 'ai-delivery');
17
+ test('README and delivery skill CLI examples name supported commands and required options', () => {
18
+ const cli = readFileSync(join(packageRoot, 'src', 'cli.ts'), 'utf8');
19
+ const declarations = [...cli.matchAll(/\.command\('([^']+)'\)/gu)];
20
+ const required = new Map(declarations.map((match) => {
21
+ const next = cli.indexOf('.command(', match.index + match[0].length);
22
+ return [
23
+ match[1],
24
+ [...cli.slice(match.index, next < 0 ? undefined : next).matchAll(/\.requiredOption\('--([a-z0-9-]+)/gu)].map((option) => `--${option[1]}`),
25
+ ];
26
+ }));
27
+ const globals = new Set(['--repo', '--repo-root', '--identity']);
28
+ for (const path of [
29
+ 'README.md',
30
+ 'plugins/ai-delivery/skills/worktree-lifecycle/SKILL.md',
31
+ 'plugins/ai-delivery/skills/pr-handoff/SKILL.md',
32
+ ]) {
33
+ const source = readFileSync(join(packageRoot, path), 'utf8').replace(/\\\r?\n\s*/gu, ' ');
34
+ for (const match of source.matchAll(/^ai-delivery\s+(.+)$/gmu)) {
35
+ const words = match[1].split(/\s+/u);
36
+ let index = 0;
37
+ while (globals.has(words[index] ?? ''))
38
+ index += 2;
39
+ const command = words[index];
40
+ const subcommand = command === 'plugin' ? words[index + 1] : undefined;
41
+ const help = execFileSync(process.execPath, [join(packageRoot, 'dist', 'cli.js'), command, ...(subcommand === undefined ? [] : [subcommand]), '--help'], { encoding: 'utf8', maxBuffer: 65536 });
42
+ for (const flag of required.get(command) ?? [])
43
+ assert.ok(words.includes(flag), `${path}: ${command} requires ${flag}`);
44
+ for (const flag of words.filter((word) => word.startsWith('--')))
45
+ assert.ok(globals.has(flag) || help.includes(flag), `${path}: ${command} does not support ${flag}`);
46
+ }
47
+ }
48
+ });
49
+ for (const launchCheckout of [false, true]) {
50
+ test(`the bundled launcher creates and updates repository B from ${launchCheckout ? 'checkout A' : 'a non-Git directory'} without an identity environment`, async () => {
51
+ const directory = realpathSync(mkdtempSync(join(tmpdir(), 'delivery-launch-routing-')));
52
+ if (launchCheckout) {
53
+ execFileSync('git', ['init', '-q', directory]);
54
+ execFileSync('git', ['remote', 'add', 'origin', 'https://github.com/example/a.git'], { cwd: directory });
55
+ }
56
+ const preload = join(directory, 'mock-github.mjs');
57
+ const calls = join(directory, 'requests.json');
58
+ const settings = join(directory, 'user.json');
59
+ writeFileSync(settings, JSON.stringify({
60
+ schemaVersion: 'ai-delivery.user@1',
61
+ roles: {
62
+ author: { authSource: 'personal', identity: 'operator', credentialEnv: { token: 'SYNTHETIC_TOKEN' } },
63
+ reviewer: {
64
+ identity: 'reviewer',
65
+ credentialEnv: { appId: 'REVIEW_APP', installationId: 'REVIEW_INSTALL', privateKeyPath: 'REVIEW_KEY' },
66
+ },
67
+ },
68
+ project: 1,
69
+ checkoutRoots: [],
70
+ pointsField: 'Estimate',
71
+ priorityField: 'Urgency',
72
+ statusField: 'Flow',
73
+ statuses: syntheticDiscoveryConfig.native.project.statuses,
74
+ }));
75
+ writeFileSync(preload, `
76
+ import {writeFileSync} from 'node:fs';
77
+ import {syntheticDiscoveryClients} from ${JSON.stringify(new URL('./fixtures/discovery.js', import.meta.url).href)};
78
+ const configuration=${JSON.stringify(syntheticDiscoveryConfig)};
79
+ const requests=[];
80
+ let issue={id:117,number:17,node_id:'ISSUE17',title:'Widget',body:'',state:'open',labels:[],html_url:'https://github.com/example/b/issues/17'};
81
+ const page=nodes=>({nodes,pageInfo:{hasNextPage:false,endCursor:null}});
82
+ globalThis.fetch=async(url,init)=>{
83
+ const path=new URL(String(url)).pathname;const method=init?.method??'GET';
84
+ requests.push({path,method});writeFileSync(${JSON.stringify(calls)},JSON.stringify(requests));
85
+ const json=init?.body?JSON.parse(init.body):{};
86
+ let data;
87
+ if(path==='/graphql'){
88
+ const query=json.query;
89
+ if(query.includes('ProjectDeliveryItems'))data={organization:{projectV2:{items:page([{id:'ITEM17',isArchived:false,content:{id:'ISSUE17'},fieldValueByName:{name:'Queued',optionId:'STATUS-0'}}])}}};
90
+ else if(query.includes('blockedBy('))data={repository:{issue:{parent:null,blockedBy:page([])}}};
91
+ else data=await syntheticDiscoveryClients({...configuration,repository:'example/'+(json.variables?.repo??'b')}).graphql(query,json.variables);
92
+ return new Response(JSON.stringify({data}),{status:200,headers:{'content-type':'application/json'}});
93
+ }
94
+ if(path.endsWith('/labels'))data=[{name:'enhancement'},{name:'bug'}];
95
+ else if(path.endsWith('/issue-field-values'))data=[];
96
+ else if(path.endsWith('/issues')&&method==='POST'){issue={...issue,...json};data=issue;}
97
+ else if(path.endsWith('/issues/17')){if(method==='PATCH')issue={...issue,...json};data=issue;}
98
+ else throw new Error('Unexpected synthetic request '+method+' '+path);
99
+ return new Response(JSON.stringify(data),{status:200,headers:{'content-type':'application/json'}});
100
+ };
101
+ `);
102
+ const transport = new StdioClientTransport({
103
+ command: process.execPath,
104
+ args: [join(pluginRoot, 'dist', 'mcp-launcher.js')],
105
+ cwd: directory,
106
+ env: {
107
+ PATH: process.env.PATH ?? '',
108
+ TMPDIR: tmpdir(),
109
+ AI_DELIVERY_CONFIG: settings,
110
+ SYNTHETIC_TOKEN: 'inert-personal-token',
111
+ NODE_OPTIONS: `--v8-pool-size=1 --import=${preload}`,
112
+ },
113
+ stderr: 'pipe',
114
+ });
115
+ const client = new Client({ name: 'actual-launch-routing', version: '1' });
116
+ try {
117
+ await client.connect(transport, { timeout: 30000 });
118
+ const created = await client.callTool({
119
+ name: 'issue_create',
120
+ arguments: { repo: 'example/b', title: 'Widget', labels: ['enhancement'] },
121
+ });
122
+ assert.equal(created.isError, undefined, JSON.stringify(created));
123
+ const updated = await client.callTool({
124
+ name: 'issue_update',
125
+ arguments: { repo: 'example/b', issueNumber: 17, labels: ['bug'] },
126
+ });
127
+ assert.equal(updated.isError, undefined, JSON.stringify(updated));
128
+ const unknown = await client.callTool({
129
+ name: 'issue_create',
130
+ arguments: { repo: 'example/b', title: 'Unknown', labels: ['missing-label'] },
131
+ });
132
+ assert.equal(unknown.isError, true);
133
+ assert.match(JSON.stringify(unknown), /Unknown repository label.*missing-label/u);
134
+ const requests = JSON.parse(readFileSync(calls, 'utf8'));
135
+ assert.equal(requests.filter((call) => call.path.endsWith('/issues') && call.method === 'POST').length, 1);
136
+ assert.equal(existsSync(join(directory, '.issue-cli')), false);
137
+ }
138
+ finally {
139
+ await client.close();
140
+ await transport.close();
141
+ rmSync(directory, { recursive: true, force: true });
142
+ }
143
+ });
144
+ }
145
+ test('CLI reports the selected package version', () => {
146
+ const displayed = execFileSync(process.execPath, [join(packageRoot, 'dist', 'cli.js'), '--version'], {
147
+ encoding: 'utf8',
148
+ maxBuffer: 65536,
149
+ }).trim();
150
+ assert.equal(displayed, pkg.version);
151
+ });
152
+ test('portable and Claude plugin metadata bind the same package and launcher', () => {
153
+ const portable = JSON.parse(readFileSync(join(pluginRoot, 'plugin.json'), 'utf8'));
154
+ const claude = JSON.parse(readFileSync(join(pluginRoot, '.claude-plugin', 'plugin.json'), 'utf8'));
155
+ assert.equal(portable.$schema, 'https://agent-plugins.org/schemas/1.0.0/plugin.schema.json');
156
+ assert.equal(portable.name, 'ai-delivery');
157
+ assert.equal(portable.version, pkg.version);
158
+ assert.equal(claude.name, portable.name);
159
+ assert.equal(claude.version, pkg.version);
160
+ assert.equal(claude.packageVersion, pkg.version);
161
+ assert.equal(claude.deliveryCapabilityVersion, 2);
162
+ const mcp = JSON.parse(readFileSync(join(pluginRoot, 'mcp.json'), 'utf8'));
163
+ assert.equal(mcp.$schema, 'https://agent-plugins.org/schemas/1.0.0/mcp.schema.json');
164
+ assert.deepEqual(mcp.mcpServers['ai-delivery'], {
165
+ type: 'stdio',
166
+ command: 'node',
167
+ args: ['${PLUGIN_ROOT}/dist/mcp-launcher.js'],
168
+ });
169
+ });
170
+ test('a copied plugin root starts its exact MCP contract without a parent runtime installation', async () => {
171
+ const directory = mkdtempSync(join(tmpdir(), 'ai-delivery-plugin-cache-'));
172
+ const copiedRoot = join(directory, 'plugin');
173
+ cpSync(pluginRoot, copiedRoot, { recursive: true });
174
+ const transport = new StdioClientTransport({
175
+ command: process.execPath,
176
+ args: [join(copiedRoot, 'dist', 'mcp-launcher.js')],
177
+ cwd: copiedRoot,
178
+ env: { PATH: process.env.PATH ?? '', TMPDIR: tmpdir(), NODE_OPTIONS: '--max-old-space-size=2048' },
179
+ stderr: 'pipe',
180
+ maxBufferSize: 1024 * 1024,
181
+ });
182
+ const client = new Client({ name: 'isolated-plugin-cache-test', version: '1.0.0' });
183
+ let pid = null;
184
+ try {
185
+ await client.connect(transport, { timeout: 30000 });
186
+ pid = transport.pid;
187
+ assert.equal(client.getServerVersion()?.version, pkg.version);
188
+ const result = await client.listTools({}, { timeout: 30000 });
189
+ assert.deepEqual(result.tools.map((tool) => tool.name).sort(), AI_DELIVERY_MCP_TOOLS.map((tool) => tool.name).sort());
190
+ assert.equal(existsSync(join(copiedRoot, '.issue-cli')), false);
191
+ }
192
+ finally {
193
+ await client.close();
194
+ await transport.close();
195
+ const ownedPid = pid;
196
+ try {
197
+ if (ownedPid !== null)
198
+ assert.throws(() => process.kill(ownedPid, 0), { code: 'ESRCH' });
199
+ }
200
+ finally {
201
+ rmSync(directory, { recursive: true, force: true });
202
+ }
203
+ }
204
+ });
205
+ test('standalone plugin ships application and bundled dependency notices', () => {
206
+ assert.equal(readFileSync(join(pluginRoot, 'LICENSE'), 'utf8'), readFileSync(join(packageRoot, 'LICENSE'), 'utf8'));
207
+ const notices = readFileSync(join(pluginRoot, 'runtime', 'dist', 'THIRD-PARTY-NOTICES.md'), 'utf8');
208
+ assert.match(notices, /@modelcontextprotocol\/sdk/u);
209
+ assert.match(notices, /commander/u);
210
+ });
211
+ test('a copied plugin has a real CLI and producer identity that existing admission can bind', () => {
212
+ const directory = realpathSync(mkdtempSync(join(tmpdir(), 'ai-delivery-native-identity-')));
213
+ const copiedRoot = join(directory, 'plugin');
214
+ cpSync(pluginRoot, copiedRoot, { recursive: true });
215
+ // The validator only reads repository/configDigest. No repository config,
216
+ // credentials, admission publication or lifecycle authority exists here.
217
+ const configuration = {
218
+ config: { repository: 'example/widget' },
219
+ configDigest: `sha256:${'a'.repeat(64)}`,
220
+ };
221
+ try {
222
+ const cliPath = join(copiedRoot, 'runtime', 'dist', 'cli.js');
223
+ assert.equal(execFileSync(process.execPath, [cliPath, '--version'], { encoding: 'utf8', maxBuffer: 65536 }).trim(), pkg.version);
224
+ const admission = buildRuntimeAdmission({
225
+ cliPath,
226
+ mcpLauncherPath: join(copiedRoot, 'dist', 'mcp-launcher.js'),
227
+ pluginManifestPath: join(copiedRoot, '.claude-plugin', 'plugin.json'),
228
+ packageVersion: pkg.version,
229
+ sourceArchiveSha256: `sha256:${'b'.repeat(64)}`,
230
+ sourceCommit: '1'.repeat(40),
231
+ configuration,
232
+ });
233
+ assert.equal(validateRuntimeAdmission(admission, configuration, cliPath).admissionId, admission.admissionId);
234
+ assert.match(retainedWorktreeTransitionProducerDigest(join(copiedRoot, 'runtime', 'dist')), /^sha256:[a-f0-9]{64}$/u);
235
+ const otherRoot = join(directory, 'other');
236
+ cpSync(copiedRoot, otherRoot, { recursive: true });
237
+ assert.throws(() => validateRuntimeAdmission(admission, configuration, join(otherRoot, 'runtime', 'dist', 'cli.js')));
238
+ writeFileSync(cliPath, `${readFileSync(cliPath, 'utf8')}\n/* altered runtime */\n`);
239
+ assert.throws(() => validateRuntimeAdmission(admission, configuration, cliPath));
240
+ }
241
+ finally {
242
+ rmSync(directory, { recursive: true, force: true });
243
+ }
244
+ });
245
+ //# sourceMappingURL=pluginPackaging.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginPackaging.test.js","sourceRoot":"","sources":["../src/pluginPackaging.test.ts"],"names":[],"mappings":"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"}
package/dist/pr.d.ts CHANGED
@@ -1,75 +1,17 @@
1
- import { z } from 'zod';
2
1
  import { type GitHubClients } from './github/client.js';
3
- import { type DeliveryContext } from './issue.js';
4
- import { readRequiredReviewState } from './review.js';
5
- import { type WorktreeEntry } from './services/worktreeRegistry.js';
6
- declare const PublicationSchema: z.ZodObject<{
7
- baseSha: z.ZodString;
8
- evidenceId: z.ZodString;
9
- headSha: z.ZodString;
10
- issueNumber: z.ZodNumber;
11
- prNumber: z.ZodNumber;
12
- publicationId: z.ZodString;
13
- schemaVersion: z.ZodLiteral<"ai-delivery.publication@1">;
14
- }, z.core.$strict>;
15
- type Publication = z.infer<typeof PublicationSchema>;
16
- declare const MergeIntentSchema: z.ZodObject<{
17
- baseBranch: z.ZodString;
18
- baseSha: z.ZodString;
19
- evidenceId: z.ZodString;
20
- exactBaseHeadLease: z.ZodBoolean;
21
- headBranch: z.ZodString;
22
- headSha: z.ZodString;
23
- headTree: z.ZodString;
24
- intentId: z.ZodString;
25
- issueNumber: z.ZodNumber;
26
- prNumber: z.ZodNumber;
27
- reviewReceiptId: z.ZodString;
28
- schemaVersion: z.ZodLiteral<"ai-delivery.merge-intent@2">;
29
- strategy: z.ZodEnum<{
30
- merge: "merge";
31
- squash: "squash";
32
- rebase: "rebase";
33
- }>;
34
- }, z.core.$strict>;
35
- type MergeIntent = z.infer<typeof MergeIntentSchema>;
36
- declare const MergeSchema: z.ZodObject<{
37
- evidenceId: z.ZodString;
38
- exactBaseHeadLease: z.ZodBoolean;
39
- reviewReceiptId: z.ZodString;
40
- issueNumber: z.ZodNumber;
41
- prNumber: z.ZodNumber;
42
- headSha: z.ZodString;
43
- headBranch: z.ZodString;
44
- baseBranch: z.ZodString;
45
- baseSha: z.ZodString;
46
- strategy: z.ZodEnum<{
47
- merge: "merge";
48
- squash: "squash";
49
- rebase: "rebase";
50
- }>;
51
- headTree: z.ZodString;
52
- intentId: z.ZodString;
53
- mergeId: z.ZodString;
54
- mergeSha: z.ZodString;
55
- mergeTree: z.ZodString;
56
- schemaVersion: z.ZodLiteral<"ai-delivery.merge@3">;
57
- }, z.core.$strict>;
58
- type MergeReceipt = z.infer<typeof MergeSchema>;
59
- export declare function loadPublication(root: string, issueNumber: number, headSha: string): Publication;
60
- /** @internal Selected-author Git transport, exported for process-boundary tests. */
61
- export declare function runAuthorGit(context: DeliveryContext, path: string, args: string[], operation: string): Promise<void>;
2
+ import { startIssueBranch, type DeliveryContext } from './issue.js';
62
3
  export declare function prInfo(context: DeliveryContext, input: {
63
4
  issueNumber?: number;
64
5
  prNumber?: number;
65
6
  }): Promise<{
66
- number: number | null;
67
- state: string | null;
68
- headSha: string | null;
69
- baseSha: string | null;
70
- draft: boolean | null;
71
- authorLogin: string | null;
72
- url: string | null;
7
+ prNumber: number;
8
+ url: string;
9
+ state: "closed" | "open";
10
+ draft: boolean | undefined;
11
+ headSha: string;
12
+ headBranch: string;
13
+ baseBranch: string;
14
+ merged: boolean;
73
15
  }>;
74
16
  export declare function listPrs(context: DeliveryContext, state?: 'all' | 'closed' | 'open'): Promise<{
75
17
  schemaVersion: "ai-delivery.pr-list@1";
@@ -94,7 +36,6 @@ export declare function prChecks(context: DeliveryContext, prNumber: number): Pr
94
36
  conclusion: "success" | "action_required" | "cancelled" | "failure" | "neutral" | "skipped" | "timed_out" | null;
95
37
  }[];
96
38
  }>;
97
- export declare function checkoutPr(context: DeliveryContext, prNumber: number): Promise<WorktreeEntry>;
98
39
  export interface ReviewRoutePreflight {
99
40
  author: {
100
41
  actorLogin: string;
@@ -122,70 +63,81 @@ export declare function preflightReviewRoute(context: DeliveryContext, base?: st
122
63
  checkResources: () => Promise<void>;
123
64
  }): Promise<ReviewRoutePreflight>;
124
65
  export declare function publishPr(context: DeliveryContext, input: {
125
- body?: string;
126
- draft?: boolean;
127
66
  issueNumber: number;
67
+ body?: string;
128
68
  title?: string;
69
+ draft?: boolean;
70
+ headBranch?: string;
71
+ baseBranch?: string;
72
+ dryRun?: boolean;
129
73
  }): Promise<{
74
+ dryRun: boolean;
75
+ headSha: string;
76
+ headBranch: string;
77
+ baseBranch: string;
78
+ reviewRoute: ReviewRoutePreflight;
79
+ prNumber?: never;
80
+ url?: never;
81
+ draft?: never;
82
+ } | {
130
83
  prNumber: number;
131
84
  url: string;
132
- publicationEvidenceId: string;
133
- reviewRoute?: ReviewRoutePreflight;
134
- reviewState?: Awaited<ReturnType<typeof readRequiredReviewState>>;
85
+ headSha: string;
86
+ draft: boolean | undefined;
87
+ reviewRoute: ReviewRoutePreflight;
88
+ dryRun?: never;
89
+ headBranch?: never;
90
+ baseBranch?: never;
135
91
  }>;
136
92
  export declare function submitFormalReview(context: DeliveryContext, input: {
137
93
  artifact: string;
138
94
  issueNumber: number;
139
95
  prNumber: number;
140
- }): Promise<{
141
- receiptId: string;
142
- githubReviewId: number;
143
- reviewState: Awaited<ReturnType<typeof readRequiredReviewState>>;
144
- }>;
145
- /** @internal Lifecycle primitive; exported for local interruption tests. */
146
- export declare function mergeWithExactLease(context: DeliveryContext, input: {
147
- baseBranch: string;
148
- baseSha: string;
149
- headBranch: string;
150
- headSha: string;
151
- headTree: string;
152
- title: string;
153
- prNumber: number;
154
- worktreePath: string;
155
- beforeMutation?: () => void;
156
- onPreparedMergeCommit?: (sha: string) => void;
157
- }): Promise<string>;
158
- /** @internal Lifecycle primitive; exported for local interruption tests. */
159
- export declare function persistMergedResult(context: DeliveryContext, input: {
160
- intent: MergeIntent;
161
- path: string;
162
- worktreePath: string;
163
- branch: string;
164
- expectedSha?: string;
165
- }): Promise<MergeReceipt>;
166
- /** @internal Read-only ancestor validation for the locked committed-descendant continuation. */
167
- export declare function readMergedContinuationTerminal(context: DeliveryContext, row: WorktreeEntry, operator: {
168
- actorLogin: string;
169
- credentialIdentity: string;
170
- }): Promise<{
171
- terminal: MergeReceipt;
172
- preserved: {
173
- path: string;
174
- digest: string;
175
- }[];
176
- }>;
96
+ dryRun?: boolean;
97
+ }): Promise<import("./review.js").GitHubReviewReceipt | import("./review.js").ReviewDryRun>;
177
98
  export declare function mergePr(context: DeliveryContext, input: {
178
99
  issueNumber: number;
179
100
  prNumber: number;
180
101
  strategy?: 'merge' | 'squash' | 'rebase';
181
- }): Promise<MergeReceipt>;
102
+ reviewedHeadSha?: string;
103
+ dryRun?: boolean;
104
+ }): Promise<{
105
+ mergeSha: string;
106
+ headSha: string;
107
+ reused: boolean;
108
+ dryRun?: never;
109
+ prNumber?: never;
110
+ } | {
111
+ dryRun: boolean;
112
+ headSha: string;
113
+ prNumber: number;
114
+ mergeSha?: never;
115
+ reused?: never;
116
+ }>;
182
117
  export declare function finishIssue(context: DeliveryContext, input: {
183
118
  issueNumber: number;
184
119
  prNumber: number;
185
120
  strategy?: 'merge' | 'squash' | 'rebase';
121
+ reviewedHeadSha?: string;
122
+ dryRun?: boolean;
186
123
  }): Promise<{
187
124
  mergeSha: string;
188
- issueClosed: true;
189
- cleaned: true;
125
+ headSha: string;
126
+ reused: boolean;
127
+ dryRun?: never;
128
+ prNumber?: never;
129
+ } | {
130
+ dryRun: boolean;
131
+ headSha: string;
132
+ prNumber: number;
133
+ mergeSha?: never;
134
+ reused?: never;
135
+ } | {
136
+ issueClosed: boolean;
137
+ mergeSha: string;
138
+ headSha: string;
139
+ reused: boolean;
140
+ dryRun?: never;
141
+ prNumber?: never;
190
142
  }>;
191
- export {};
143
+ export { startIssueBranch };