hub-launch 1.15.0 → 1.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +103 -2
- package/dist/commands/init.d.ts +55 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +93 -103
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/instructions.d.ts +17 -0
- package/dist/commands/instructions.d.ts.map +1 -0
- package/dist/commands/instructions.js +51 -0
- package/dist/commands/instructions.js.map +1 -0
- package/dist/commands/launch.d.ts +21 -0
- package/dist/commands/launch.d.ts.map +1 -1
- package/dist/commands/launch.js +61 -0
- package/dist/commands/launch.js.map +1 -1
- package/dist/commands/script.d.ts +28 -0
- package/dist/commands/script.d.ts.map +1 -0
- package/dist/commands/script.js +69 -0
- package/dist/commands/script.js.map +1 -0
- package/dist/commands/session-hook.d.ts +26 -0
- package/dist/commands/session-hook.d.ts.map +1 -0
- package/dist/commands/session-hook.js +146 -0
- package/dist/commands/session-hook.js.map +1 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -1
- package/dist/scripts/fix-commit.d.ts +2 -0
- package/dist/scripts/fix-commit.d.ts.map +1 -0
- package/dist/scripts/fix-commit.js +125 -0
- package/dist/scripts/fix-commit.js.map +1 -0
- package/dist/scripts/fix-setup.d.ts +2 -0
- package/dist/scripts/fix-setup.d.ts.map +1 -0
- package/dist/scripts/fix-setup.js +161 -0
- package/dist/scripts/fix-setup.js.map +1 -0
- package/dist/scripts/launch-run.d.ts +14 -0
- package/dist/scripts/launch-run.d.ts.map +1 -0
- package/dist/scripts/launch-run.js +117 -0
- package/dist/scripts/launch-run.js.map +1 -0
- package/dist/scripts/lib/exec.d.ts +48 -0
- package/dist/scripts/lib/exec.d.ts.map +1 -0
- package/dist/scripts/lib/exec.js +61 -0
- package/dist/scripts/lib/exec.js.map +1 -0
- package/dist/scripts/lib/io.d.ts +48 -0
- package/dist/scripts/lib/io.d.ts.map +1 -0
- package/dist/scripts/lib/io.js +72 -0
- package/dist/scripts/lib/io.js.map +1 -0
- package/dist/scripts/lib/read-config.d.ts +26 -0
- package/dist/scripts/lib/read-config.d.ts.map +1 -0
- package/dist/scripts/lib/read-config.js +65 -0
- package/dist/scripts/lib/read-config.js.map +1 -0
- package/dist/scripts/merge-local.d.ts +2 -0
- package/dist/scripts/merge-local.d.ts.map +1 -0
- package/dist/scripts/merge-local.js +146 -0
- package/dist/scripts/merge-local.js.map +1 -0
- package/dist/scripts/merge-remote.d.ts +12 -0
- package/dist/scripts/merge-remote.d.ts.map +1 -0
- package/dist/scripts/merge-remote.js +71 -0
- package/dist/scripts/merge-remote.js.map +1 -0
- package/dist/scripts/schedule-manage.d.ts +2 -0
- package/dist/scripts/schedule-manage.d.ts.map +1 -0
- package/dist/scripts/schedule-manage.js +151 -0
- package/dist/scripts/schedule-manage.js.map +1 -0
- package/dist/scripts/schedule-run.d.ts +2 -0
- package/dist/scripts/schedule-run.d.ts.map +1 -0
- package/dist/scripts/schedule-run.js +146 -0
- package/dist/scripts/schedule-run.js.map +1 -0
- package/dist/scripts/verify-gather.d.ts +2 -0
- package/dist/scripts/verify-gather.d.ts.map +1 -0
- package/dist/scripts/verify-gather.js +210 -0
- package/dist/scripts/verify-gather.js.map +1 -0
- package/dist/scripts/verify-post.d.ts +12 -0
- package/dist/scripts/verify-post.d.ts.map +1 -0
- package/dist/scripts/verify-post.js +72 -0
- package/dist/scripts/verify-post.js.map +1 -0
- package/dist/services/git/FilePublishService.d.ts +6 -0
- package/dist/services/git/FilePublishService.d.ts.map +1 -1
- package/dist/services/git/FilePublishService.js +79 -2
- package/dist/services/git/FilePublishService.js.map +1 -1
- package/dist/services/git/WorktreeService.d.ts +17 -0
- package/dist/services/git/WorktreeService.d.ts.map +1 -1
- package/dist/services/git/WorktreeService.js +40 -0
- package/dist/services/git/WorktreeService.js.map +1 -1
- package/dist/templates/planning-instructions.md +7 -7
- package/dist/templates/skill-creation-instructions.md +2 -2
- package/dist/templates/skills/hula-confirm/SKILL.md +3 -3
- package/dist/templates/skills/hula-fix/SKILL.md +3 -3
- package/dist/templates/skills/hula-launch/SKILL.md +14 -8
- package/dist/templates/skills/hula-merge/SKILL.md +2 -2
- package/dist/templates/skills/hula-plan/SKILL.md +5 -5
- package/dist/templates/skills/hula-schedule/SKILL.md +16 -16
- package/dist/templates/skills/hula-verify/SKILL.md +2 -2
- package/dist/types/config.schema.d.ts +235 -0
- package/dist/types/config.schema.d.ts.map +1 -1
- package/dist/types/config.schema.js +66 -0
- package/dist/types/config.schema.js.map +1 -1
- package/dist/utils/client-session.d.ts +2 -2
- package/dist/utils/client-session.js +2 -2
- package/package.json +6 -5
- package/scripts/postinstall.mjs +101 -0
- package/dist/templates/scripts/hula-fix-commit.sh +0 -114
- package/dist/templates/scripts/hula-fix-setup.sh +0 -152
- package/dist/templates/scripts/hula-launch-run.sh +0 -140
- package/dist/templates/scripts/hula-merge-local.sh +0 -138
- package/dist/templates/scripts/hula-merge-remote.sh +0 -94
- package/dist/templates/scripts/hula-read-config.sh +0 -38
- package/dist/templates/scripts/hula-schedule-manage.sh +0 -159
- package/dist/templates/scripts/hula-schedule-run.sh +0 -148
- package/dist/templates/scripts/hula-session-hook.sh +0 -68
- package/dist/templates/scripts/hula-verify-gather.sh +0 -135
- package/dist/templates/scripts/hula-verify-post.sh +0 -84
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* verify-post — Step 8 of the hula.verify workflow.
|
|
3
|
+
* Invoked as: `hula script verify-post -- <pr-number> <report-file>`
|
|
4
|
+
*
|
|
5
|
+
* Posts a verification report as a PR comment mentioning @copilot.
|
|
6
|
+
* Emits structured JSON to stdout; all other output goes to stderr.
|
|
7
|
+
* Exit codes: 0=success, 1=user error, 2=tool error.
|
|
8
|
+
*
|
|
9
|
+
* Node port of `hula-verify-post.sh` (cross-platform: no bash, no jq).
|
|
10
|
+
*/
|
|
11
|
+
export declare function main(args: string[]): Promise<number>;
|
|
12
|
+
//# sourceMappingURL=verify-post.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-post.d.ts","sourceRoot":"","sources":["../../src/scripts/verify-post.ts"],"names":[],"mappings":"AAOA;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA2DpD"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { existsSync } from 'node:fs';
|
|
2
|
+
import { readFile, rm, writeFile } from 'node:fs/promises';
|
|
3
|
+
import { tmpdir } from 'node:os';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { runGh } from './lib/exec.js';
|
|
6
|
+
import { emitJson, fail, logStderr, runScript } from './lib/io.js';
|
|
7
|
+
/**
|
|
8
|
+
* verify-post — Step 8 of the hula.verify workflow.
|
|
9
|
+
* Invoked as: `hula script verify-post -- <pr-number> <report-file>`
|
|
10
|
+
*
|
|
11
|
+
* Posts a verification report as a PR comment mentioning @copilot.
|
|
12
|
+
* Emits structured JSON to stdout; all other output goes to stderr.
|
|
13
|
+
* Exit codes: 0=success, 1=user error, 2=tool error.
|
|
14
|
+
*
|
|
15
|
+
* Node port of `hula-verify-post.sh` (cross-platform: no bash, no jq).
|
|
16
|
+
*/
|
|
17
|
+
export function main(args) {
|
|
18
|
+
return runScript(async () => {
|
|
19
|
+
// ── argument parsing ──────────────────────────────────────────────────
|
|
20
|
+
let prNumber = '';
|
|
21
|
+
let reportFile = '';
|
|
22
|
+
for (const a of args) {
|
|
23
|
+
if (/^[0-9]/.test(a)) {
|
|
24
|
+
if (!prNumber)
|
|
25
|
+
prNumber = a;
|
|
26
|
+
else
|
|
27
|
+
fail(1, `Unexpected positional argument: ${a}`);
|
|
28
|
+
}
|
|
29
|
+
else if (!reportFile) {
|
|
30
|
+
reportFile = a;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
fail(1, `Unknown argument: ${a}`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (!prNumber) {
|
|
37
|
+
fail(1, 'Usage: hula script verify-post -- <pr-number> <report-file>');
|
|
38
|
+
}
|
|
39
|
+
if (!reportFile) {
|
|
40
|
+
fail(1, 'Report file path is required as second argument.');
|
|
41
|
+
}
|
|
42
|
+
if (!existsSync(reportFile)) {
|
|
43
|
+
fail(1, `Report file not found: ${reportFile}`);
|
|
44
|
+
}
|
|
45
|
+
// ── Build comment body with @copilot mention ──────────────────────────
|
|
46
|
+
const commentTmp = join(tmpdir(), `hula-verify-comment-${prNumber}.md`);
|
|
47
|
+
const report = await readFile(reportFile, 'utf-8');
|
|
48
|
+
const body = '@copilot Please review this verification report and address any gaps.\n\n' +
|
|
49
|
+
report;
|
|
50
|
+
await writeFile(commentTmp, body, 'utf-8');
|
|
51
|
+
// ── Post comment ──────────────────────────────────────────────────────
|
|
52
|
+
logStderr(`📝 Posting verification report to PR #${prNumber}...`);
|
|
53
|
+
const res = await runGh([
|
|
54
|
+
'pr',
|
|
55
|
+
'comment',
|
|
56
|
+
prNumber,
|
|
57
|
+
'--body-file',
|
|
58
|
+
commentTmp,
|
|
59
|
+
]);
|
|
60
|
+
if (res.code !== 0) {
|
|
61
|
+
fail(2, `Failed to post comment to PR #${prNumber}. You can copy the report manually.`);
|
|
62
|
+
}
|
|
63
|
+
await rm(commentTmp, { force: true });
|
|
64
|
+
// ── Output result ─────────────────────────────────────────────────────
|
|
65
|
+
emitJson({
|
|
66
|
+
status: 'success',
|
|
67
|
+
prNumber: Number(prNumber),
|
|
68
|
+
commentUrl: res.stdout.trim(),
|
|
69
|
+
});
|
|
70
|
+
}, args);
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=verify-post.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-post.js","sourceRoot":"","sources":["../../src/scripts/verify-post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEnE;;;;;;;;;GASG;AACH,MAAM,UAAU,IAAI,CAAC,IAAc;IACjC,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE;QAC1B,yEAAyE;QACzE,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,IAAI,CAAC,QAAQ;oBAAE,QAAQ,GAAG,CAAC,CAAC;;oBACvB,IAAI,CAAC,CAAC,EAAE,mCAAmC,CAAC,EAAE,CAAC,CAAC;YACvD,CAAC;iBAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvB,UAAU,GAAG,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,CAAC,EAAE,6DAA6D,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,CAAC,EAAE,kDAAkD,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,EAAE,0BAA0B,UAAU,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,yEAAyE;QACzE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,uBAAuB,QAAQ,KAAK,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,IAAI,GACR,2EAA2E;YAC3E,MAAM,CAAC;QACT,MAAM,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAE3C,yEAAyE;QACzE,SAAS,CAAC,yCAAyC,QAAQ,KAAK,CAAC,CAAC;QAClE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC;YACtB,IAAI;YACJ,SAAS;YACT,QAAQ;YACR,aAAa;YACb,UAAU;SACX,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACnB,IAAI,CACF,CAAC,EACD,iCAAiC,QAAQ,qCAAqC,CAC/E,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAEtC,yEAAyE;QACzE,QAAQ,CAAC;YACP,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;YAC1B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC,EAAE,IAAI,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import type { Config } from '../../types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Classify a push error message as a retryable remote-movement race.
|
|
4
|
+
* Defaults to `false` (non-retryable) for anything unrecognized so a genuine
|
|
5
|
+
* error (auth, network, permissions) is never masked by retrying.
|
|
6
|
+
*/
|
|
7
|
+
export declare function isRaceError(message: string): boolean;
|
|
2
8
|
/**
|
|
3
9
|
* Options shared by publish/delete operations.
|
|
4
10
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePublishService.d.ts","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"FilePublishService.d.ts","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAgCnD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGpD;AASD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,MAAM,EAAE,MAAM;IAI1B;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAiBtB;;;OAGG;YACW,uBAAuB;IAQrC;;;;OAIG;YACW,YAAY;IAqG1B;;;;;;OAMG;IACG,WAAW,CACf,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;;OAKG;IACG,UAAU,CACd,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,IAAI,CAAC;CAWjB"}
|
|
@@ -4,6 +4,45 @@ import { logger } from '../../utils/logger.js';
|
|
|
4
4
|
import { WorktreeService } from './WorktreeService.js';
|
|
5
5
|
import { getRepoInfo } from '../../utils/github-cli.js';
|
|
6
6
|
import { getRepoRoot } from '../../utils/shell.js';
|
|
7
|
+
/**
|
|
8
|
+
* Maximum number of push attempts (initial push + retries) when a remote-
|
|
9
|
+
* movement race is detected. Hardcoded by design — no config surface.
|
|
10
|
+
*/
|
|
11
|
+
const MAX_PUSH_ATTEMPTS = 3;
|
|
12
|
+
/**
|
|
13
|
+
* Base backoff in milliseconds. Backoff before retry N is
|
|
14
|
+
* `BASE_BACKOFF_MS * 2^(N-1)` → 200ms, 400ms, 800ms. Applied only before a
|
|
15
|
+
* retry, never before the first attempt.
|
|
16
|
+
*/
|
|
17
|
+
const BASE_BACKOFF_MS = 200;
|
|
18
|
+
/**
|
|
19
|
+
* Substrings (matched case-insensitively) that identify a push rejection
|
|
20
|
+
* caused by remote `main` advancing between the worktree's fetch and its push
|
|
21
|
+
* — an optimistic-concurrency loss that a fetch+rebase+re-push can self-heal.
|
|
22
|
+
* Anything not matching these is treated as a hard failure and rethrown.
|
|
23
|
+
*/
|
|
24
|
+
const RACE_SIGNATURES = [
|
|
25
|
+
'cannot lock ref',
|
|
26
|
+
'failed to push some refs',
|
|
27
|
+
'[remote rejected]',
|
|
28
|
+
'fetch first',
|
|
29
|
+
'non-fast-forward',
|
|
30
|
+
];
|
|
31
|
+
/**
|
|
32
|
+
* Classify a push error message as a retryable remote-movement race.
|
|
33
|
+
* Defaults to `false` (non-retryable) for anything unrecognized so a genuine
|
|
34
|
+
* error (auth, network, permissions) is never masked by retrying.
|
|
35
|
+
*/
|
|
36
|
+
export function isRaceError(message) {
|
|
37
|
+
const m = message.toLowerCase();
|
|
38
|
+
return RACE_SIGNATURES.some(sig => m.includes(sig.toLowerCase()));
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Promise-based delay used for exponential backoff between push retries.
|
|
42
|
+
*/
|
|
43
|
+
function sleep(ms) {
|
|
44
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
45
|
+
}
|
|
7
46
|
/**
|
|
8
47
|
* FilePublishService — commit a single repo-relative file to a remote branch
|
|
9
48
|
* (default `origin/main`) using a temporary detached worktree, without ever
|
|
@@ -90,8 +129,46 @@ export class FilePublishService {
|
|
|
90
129
|
else {
|
|
91
130
|
logger.info('No changes to commit, proceeding to push...');
|
|
92
131
|
}
|
|
93
|
-
// For a detached HEAD worktree we push HEAD directly to the target
|
|
94
|
-
|
|
132
|
+
// For a detached HEAD worktree we push HEAD directly to the target
|
|
133
|
+
// branch. Wrap the push in a bounded fetch-rebase-retry loop so a
|
|
134
|
+
// transient remote-`main` race (another push landing during our
|
|
135
|
+
// write+commit+push window) self-heals instead of aborting the launch.
|
|
136
|
+
// We never use --force: the goal is to integrate the new remote head,
|
|
137
|
+
// not overwrite it. Non-race errors are rethrown immediately, and a
|
|
138
|
+
// genuine rebase conflict (REBASE_CONFLICT) propagates out and fails fast.
|
|
139
|
+
let lastError;
|
|
140
|
+
for (let attempt = 1; attempt <= MAX_PUSH_ATTEMPTS; attempt++) {
|
|
141
|
+
try {
|
|
142
|
+
await worktreeService.pushAt(worktreePath, `HEAD:${branch}`);
|
|
143
|
+
lastError = undefined;
|
|
144
|
+
break; // pushed successfully
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
lastError = error;
|
|
148
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
149
|
+
if (!isRaceError(message)) {
|
|
150
|
+
throw error; // auth/network/permission — do not retry
|
|
151
|
+
}
|
|
152
|
+
if (attempt === MAX_PUSH_ATTEMPTS) {
|
|
153
|
+
break; // retries exhausted — fall through to the error below
|
|
154
|
+
}
|
|
155
|
+
const backoff = BASE_BACKOFF_MS * 2 ** (attempt - 1);
|
|
156
|
+
logger.info(`Remote ${branch} moved during upload; re-syncing and retrying ` +
|
|
157
|
+
`push (attempt ${attempt + 1}/${MAX_PUSH_ATTEMPTS})...`);
|
|
158
|
+
await sleep(backoff);
|
|
159
|
+
// Re-sync the detached commit onto the new remote head. Throws a
|
|
160
|
+
// REBASE_CONFLICT error (not classified as a race) if the file truly
|
|
161
|
+
// clashes, which propagates out and stops the loop.
|
|
162
|
+
await worktreeService.rebaseOntoRemote(worktreePath, branch);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
if (lastError !== undefined) {
|
|
166
|
+
throw new Error(`Failed to push to origin/${branch} after ${MAX_PUSH_ATTEMPTS} ` +
|
|
167
|
+
`attempts: remote ${branch} kept moving. This is usually ` +
|
|
168
|
+
`transient — re-run the launch/upload and it should succeed.\n` +
|
|
169
|
+
`Last git error: ` +
|
|
170
|
+
(lastError instanceof Error ? lastError.message : String(lastError)));
|
|
171
|
+
}
|
|
95
172
|
}
|
|
96
173
|
finally {
|
|
97
174
|
if (worktreeCreated) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePublishService.js","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"FilePublishService.js","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,6 +56,23 @@ export declare class WorktreeService {
|
|
|
56
56
|
* Push the current branch in the worktree at the given path.
|
|
57
57
|
*/
|
|
58
58
|
pushAt(worktreePath: string, branch: string): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Re-sync a detached worktree onto the latest origin/<branch>: fetch the
|
|
61
|
+
* branch and rebase the worktree's commit(s) onto it. Used by the plan-upload
|
|
62
|
+
* push retry loop to recover from a remote-`main` race before re-pushing.
|
|
63
|
+
*
|
|
64
|
+
* On a detached HEAD, `git rebase origin/<branch>` replays the commits since
|
|
65
|
+
* the merge-base onto the new remote tip, leaving HEAD detached at the new
|
|
66
|
+
* tip — exactly what the subsequent `git push HEAD:<branch>` needs.
|
|
67
|
+
*
|
|
68
|
+
* @param worktreePath - Absolute path of the detached worktree to re-sync.
|
|
69
|
+
* @param branch - Target branch name (e.g. 'main').
|
|
70
|
+
* @throws A `REBASE_CONFLICT:`-prefixed error if the rebase hits a genuine
|
|
71
|
+
* content conflict (after aborting it), so the caller can stop
|
|
72
|
+
* retrying and surface a real-conflict error. Fetch/other failures
|
|
73
|
+
* propagate verbatim.
|
|
74
|
+
*/
|
|
75
|
+
rebaseOntoRemote(worktreePath: string, branch: string): Promise<void>;
|
|
59
76
|
/**
|
|
60
77
|
* Get the main (root) worktree. The first entry of
|
|
61
78
|
* `git worktree list --porcelain` is always the main worktree, so this is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeService.d.ts","sourceRoot":"","sources":["../../../src/services/git/WorktreeService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorktreeService.d.ts","sourceRoot":"","sources":["../../../src/services/git/WorktreeService.ts"],"names":[],"mappings":"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"}
|
|
@@ -155,6 +155,46 @@ export class WorktreeService {
|
|
|
155
155
|
throw new Error(`Failed to push from worktree at ${worktreePath}: ${error instanceof Error ? error.message : String(error)}`);
|
|
156
156
|
}
|
|
157
157
|
}
|
|
158
|
+
/**
|
|
159
|
+
* Re-sync a detached worktree onto the latest origin/<branch>: fetch the
|
|
160
|
+
* branch and rebase the worktree's commit(s) onto it. Used by the plan-upload
|
|
161
|
+
* push retry loop to recover from a remote-`main` race before re-pushing.
|
|
162
|
+
*
|
|
163
|
+
* On a detached HEAD, `git rebase origin/<branch>` replays the commits since
|
|
164
|
+
* the merge-base onto the new remote tip, leaving HEAD detached at the new
|
|
165
|
+
* tip — exactly what the subsequent `git push HEAD:<branch>` needs.
|
|
166
|
+
*
|
|
167
|
+
* @param worktreePath - Absolute path of the detached worktree to re-sync.
|
|
168
|
+
* @param branch - Target branch name (e.g. 'main').
|
|
169
|
+
* @throws A `REBASE_CONFLICT:`-prefixed error if the rebase hits a genuine
|
|
170
|
+
* content conflict (after aborting it), so the caller can stop
|
|
171
|
+
* retrying and surface a real-conflict error. Fetch/other failures
|
|
172
|
+
* propagate verbatim.
|
|
173
|
+
*/
|
|
174
|
+
async rebaseOntoRemote(worktreePath, branch) {
|
|
175
|
+
this.validatePathSegment(worktreePath, 'worktree path');
|
|
176
|
+
this.validatePathSegment(branch, 'branch');
|
|
177
|
+
logger.debug(`Re-syncing worktree ${worktreePath} onto origin/${branch}`);
|
|
178
|
+
await runCommand(`git fetch origin ${JSON.stringify(branch)}`, {
|
|
179
|
+
cwd: worktreePath,
|
|
180
|
+
});
|
|
181
|
+
try {
|
|
182
|
+
await runCommand(`git rebase ${JSON.stringify(`origin/${branch}`)}`, {
|
|
183
|
+
cwd: worktreePath,
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
// Genuine content conflict — abort the rebase and signal a hard failure
|
|
188
|
+
// so the retry loop stops instead of spinning on an unwinnable race.
|
|
189
|
+
await runCommand('git rebase --abort', {
|
|
190
|
+
cwd: worktreePath,
|
|
191
|
+
suppressErrors: true,
|
|
192
|
+
});
|
|
193
|
+
throw new Error(`REBASE_CONFLICT: the plan/file conflicts with changes already on ` +
|
|
194
|
+
`origin/${branch}. Resolve the conflict or re-create the plan. ` +
|
|
195
|
+
`Underlying error: ${error instanceof Error ? error.message : String(error)}`);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
158
198
|
/**
|
|
159
199
|
* Get the main (root) worktree. The first entry of
|
|
160
200
|
* `git worktree list --porcelain` is always the main worktree, so this is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeService.js","sourceRoot":"","sources":["../../../src/services/git/WorktreeService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorktreeService.js","sourceRoot":"","sources":["../../../src/services/git/WorktreeService.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,13 +54,13 @@ This means:
|
|
|
54
54
|
- Inform the user that the plan has been created
|
|
55
55
|
- **Immediately proceed** to the confirmation/validation workflow
|
|
56
56
|
- Do NOT wait for the user to type `/hula-confirm` — continue in the same session
|
|
57
|
-
- Read
|
|
57
|
+
- Read `hula instructions proceed` and execute validation against the saved plan
|
|
58
58
|
- Skip the file-location confirmation step (the path is already known from this session)
|
|
59
59
|
|
|
60
60
|
**PHASE 6: INLINE VALIDATION (replaces separate /hula-confirm)**
|
|
61
61
|
|
|
62
62
|
- Validation runs automatically after the plan file is saved
|
|
63
|
-
- Execute the full `proceed
|
|
63
|
+
- Execute the full `hula instructions proceed` validation workflow inline
|
|
64
64
|
- The MCQ validation questions (if any) are asked in this same session
|
|
65
65
|
- Plan is updated with improvements before handing off to the user
|
|
66
66
|
- `/hula-confirm` remains available as a standalone command for re-validation at any time
|
|
@@ -237,10 +237,10 @@ After generating and saving the draft plan file (following Phase 6 below), infor
|
|
|
237
237
|
|
|
238
238
|
1. **Inform the user** that the plan has been created
|
|
239
239
|
2. **Announce auto-continue**: State that validation is starting now (no user action needed)
|
|
240
|
-
3. **Execute validation inline**: Read
|
|
240
|
+
3. **Execute validation inline**: Read `hula instructions proceed` and run the full validation workflow against the plan file you just saved
|
|
241
241
|
4. **Skip the file-location guard**: The plan path is already known from this session — do not ask "Is this correct?"
|
|
242
242
|
5. **Carry forward context**: Use everything learned during planning to resolve validation questions where possible
|
|
243
|
-
6. **Offer the launch**: After validation completes, follow the "Launch Offer" section of
|
|
243
|
+
6. **Offer the launch**: After validation completes, follow the "Launch Offer" section of `hula instructions proceed` — determine the issue name, ask the launch question, and on an affirmative reply execute the `/hula-launch` workflow. Never launch without an affirmative reply.
|
|
244
244
|
|
|
245
245
|
**Output format after saving the plan file:**
|
|
246
246
|
|
|
@@ -252,7 +252,7 @@ After generating and saving the draft plan file (following Phase 6 below), infor
|
|
|
252
252
|
📋 **Proceeding to validation now…**
|
|
253
253
|
```
|
|
254
254
|
|
|
255
|
-
Then continue immediately by reading
|
|
255
|
+
Then continue immediately by reading `hula instructions proceed` and executing the validation workflow against the saved plan path. Begin at Step 2 (Comprehensive Validation Analysis) — skip Step 1 (file location) because the path is already known.
|
|
256
256
|
|
|
257
257
|
**Recovery fallback:** If inline validation cannot complete (context window limit, tool error, interrupted session), print:
|
|
258
258
|
|
|
@@ -292,7 +292,7 @@ After successfully saving the plan, output the handoff message from Phase 5 abov
|
|
|
292
292
|
📋 **Proceeding to validation now…**
|
|
293
293
|
```
|
|
294
294
|
|
|
295
|
-
Then immediately continue with the inline validation workflow described in Phase 5 (read
|
|
295
|
+
Then immediately continue with the inline validation workflow described in Phase 5 (read `hula instructions proceed` and execute it against the saved plan path, starting from Step 2 and skipping the file-location confirmation).
|
|
296
296
|
|
|
297
297
|
The HTML comment allows the system to reference the plan file for further operations.
|
|
298
298
|
|
|
@@ -701,7 +701,7 @@ src/
|
|
|
701
701
|
- Phase 3: Create DRAFT plan
|
|
702
702
|
- Phase 4: Save the plan file immediately
|
|
703
703
|
- Phase 5: Auto-continue to validation in the same session
|
|
704
|
-
- Phase 6: Inline validation (replaces separate `/hula-confirm`; the standalone command remains available) — ends with the Launch Offer (see
|
|
704
|
+
- Phase 6: Inline validation (replaces separate `/hula-confirm`; the standalone command remains available) — ends with the Launch Offer (see `hula instructions proceed`)
|
|
705
705
|
|
|
706
706
|
4. **PLAN FOR AI IMPLEMENTATION**: The plan must be self-contained
|
|
707
707
|
|
|
@@ -88,7 +88,7 @@ branch at run time (and re-reads it on every scheduled fire). The file MUST be o
|
|
|
88
88
|
the branch before the run, so publish it first:
|
|
89
89
|
|
|
90
90
|
```bash
|
|
91
|
-
|
|
91
|
+
hula script schedule-manage -- --publish-skill .hublaunch/skills/<filename>
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
Parse the single JSON object it prints:
|
|
@@ -103,7 +103,7 @@ Only after a successful publish, invoke the run wrapper with `--action-path`
|
|
|
103
103
|
pointing at the committed file:
|
|
104
104
|
|
|
105
105
|
```bash
|
|
106
|
-
|
|
106
|
+
hula script schedule-run -- --action-path .hublaunch/skills/<filename> [--entry-point <path>] [--outcome-type <type>] [--schedule "<cron>"]
|
|
107
107
|
```
|
|
108
108
|
|
|
109
109
|
Pass only the flags you resolved. Quote the cron expression.
|
|
@@ -10,9 +10,9 @@ You are an expert plan validator for the HubLaunch project, specializing in ensu
|
|
|
10
10
|
|
|
11
11
|
## Instructions
|
|
12
12
|
|
|
13
|
-
Read the detailed confirmation guidelines
|
|
13
|
+
Read the detailed confirmation guidelines by running:
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
`hula instructions proceed`
|
|
16
16
|
|
|
17
17
|
Follow those instructions carefully to validate and enhance implementation plans.
|
|
18
18
|
|
|
@@ -296,7 +296,7 @@ After updating the plan:
|
|
|
296
296
|
🚀 Are you ready to launch? (Unless you tell me otherwise, I'll use the issue name `<issueName>`.)
|
|
297
297
|
```
|
|
298
298
|
|
|
299
|
-
Then follow the **Launch Offer** section of
|
|
299
|
+
Then follow the **Launch Offer** section of `hula instructions proceed`: resolve `<issueName>`, ask the launch question, and on an affirmative reply execute the `/hula-launch` workflow with `<issueName> <planPath>` (plus any `--handoff`/`--test` flags). Never launch without an affirmative reply; on a negative or deferring reply, print the fallback message and stop.
|
|
300
300
|
|
|
301
301
|
## Important Guidelines
|
|
302
302
|
|
|
@@ -68,7 +68,7 @@ Stop execution here. Do not proceed.
|
|
|
68
68
|
Run the setup script — it handles issue lookup, validation, worktree creation, and session file writing in one terminal approval:
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
|
|
71
|
+
hula script fix-setup -- <issue-number>
|
|
72
72
|
```
|
|
73
73
|
|
|
74
74
|
The script outputs JSON with `status`, `issueTitle`, `prBranch`, `worktreePath`, and `sessionFile`.
|
|
@@ -111,7 +111,7 @@ Switch your working context:
|
|
|
111
111
|
cd <worktreePath>
|
|
112
112
|
```
|
|
113
113
|
|
|
114
|
-
Where `<worktreePath>` is the path returned by `hula
|
|
114
|
+
Where `<worktreePath>` is the path returned by `hula script fix-setup` in Step 2.
|
|
115
115
|
|
|
116
116
|
Apply fixes using the edit tool, making sure file paths are relative to (or inside) the worktree directory.
|
|
117
117
|
|
|
@@ -133,7 +133,7 @@ Progress display:
|
|
|
133
133
|
Generate a commit message based on the issue number, files changed, and nature of changes, then run the commit script (one terminal approval):
|
|
134
134
|
|
|
135
135
|
```bash
|
|
136
|
-
|
|
136
|
+
hula script fix-commit -- <issue-number> "fix(#42): <generated-message>"
|
|
137
137
|
```
|
|
138
138
|
|
|
139
139
|
The script outputs JSON with `status`, `commitMessage`, and `filesChanged`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: hula-launch
|
|
3
3
|
description: Launch a GitHub issue from the current plan. Use when the user asks to launch or assign the plan to a remote agent.
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
-
argument-hint: <branch-name> [<plan-path>] [--handoff <username>] [--test] [--kill] [--kill-and-relaunch]
|
|
5
|
+
argument-hint: <branch-name> [<plan-path>] [--handoff <username>] [--test] [--skip-regression] [--kill] [--kill-and-relaunch]
|
|
6
6
|
allowed-tools: Bash Read
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -15,6 +15,7 @@ From `$ARGUMENTS`:
|
|
|
15
15
|
- **Plan path** (optional): the second word, if present (e.g., `.hublaunch/plans/2026-06-10-14:00-feature-auth.md`).
|
|
16
16
|
- **--handoff** (optional): a `--handoff <username>` flag anywhere in `$ARGUMENTS`.
|
|
17
17
|
- **--test** (optional): the bare flag `--test`, anywhere in `$ARGUMENTS`. Sets test mode (server uses a mock Claude — fast E2E run; a real PR is still created).
|
|
18
|
+
- **--skip-regression** (optional): the bare flag `--skip-regression`, anywhere in `$ARGUMENTS`. Force-skips the regression-tests pipeline step for this one launch (overrides any `steps.regression.skip` config default).
|
|
18
19
|
- **--kill** (optional): the bare flag `--kill`, anywhere in `$ARGUMENTS`. Stops the in-flight task for this branch name **without** relaunching. A plan path is **not** required with `--kill` — the branch name alone is enough.
|
|
19
20
|
- **--kill-and-relaunch** (optional): the bare flag `--kill-and-relaunch`, anywhere in `$ARGUMENTS`. Cancels the in-flight task, resets stale state, and launches a fresh task (needs a plan path, like a normal launch).
|
|
20
21
|
|
|
@@ -47,34 +48,39 @@ With the values known, run exactly one Bash command.
|
|
|
47
48
|
|
|
48
49
|
Without handoff:
|
|
49
50
|
```bash
|
|
50
|
-
|
|
51
|
+
hula script launch-run -- <plan-path> <branch-name>
|
|
51
52
|
```
|
|
52
53
|
|
|
53
54
|
With handoff:
|
|
54
55
|
```bash
|
|
55
|
-
|
|
56
|
+
hula script launch-run -- <plan-path> <branch-name> --handoff <username>
|
|
56
57
|
```
|
|
57
58
|
|
|
58
59
|
With test mode:
|
|
59
60
|
```bash
|
|
60
|
-
|
|
61
|
+
hula script launch-run -- <plan-path> <branch-name> --test
|
|
61
62
|
```
|
|
62
63
|
|
|
63
64
|
With handoff + test mode:
|
|
64
65
|
```bash
|
|
65
|
-
|
|
66
|
+
hula script launch-run -- <plan-path> <branch-name> --handoff <username> --test
|
|
66
67
|
```
|
|
67
68
|
|
|
68
|
-
|
|
69
|
+
With skip-regression:
|
|
70
|
+
```bash
|
|
71
|
+
hula script launch-run -- <plan-path> <branch-name> --skip-regression
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Append `--test` whenever the user passed it; it composes with `--handoff`. Append `--skip-regression` whenever the user passed it; it composes with `--handoff` and `--test` too.
|
|
69
75
|
|
|
70
76
|
**Stop the in-flight task without relaunching (`--kill`)** — pass only the branch name (no plan path):
|
|
71
77
|
```bash
|
|
72
|
-
|
|
78
|
+
hula script launch-run -- <branch-name> --kill
|
|
73
79
|
```
|
|
74
80
|
|
|
75
81
|
**Kill the in-flight task and relaunch fresh (`--kill-and-relaunch`)** — needs a plan path, like a normal launch, and composes with `--handoff`/`--test`:
|
|
76
82
|
```bash
|
|
77
|
-
|
|
83
|
+
hula script launch-run -- <plan-path> <branch-name> --kill-and-relaunch
|
|
78
84
|
```
|
|
79
85
|
|
|
80
86
|
## Step 3: Show the result
|
|
@@ -130,7 +130,7 @@ Suggested test command: npm test
|
|
|
130
130
|
Generate a commit message based on the issue number, files changed, and nature of changes, then run the local-merge script — it handles commit, push, merge, worktree removal, and session cleanup in one terminal approval:
|
|
131
131
|
|
|
132
132
|
```bash
|
|
133
|
-
|
|
133
|
+
hula script merge-local -- <issue-number> "<worktreePath>" "fix(#42): <generated-message>"
|
|
134
134
|
```
|
|
135
135
|
|
|
136
136
|
The script outputs JSON with `status`, `committed`, `filesChanged`, `worktreeRemoved`, and `sessionCleaned`.
|
|
@@ -209,7 +209,7 @@ Follow this path when no local fix session/worktree exists. This is the common p
|
|
|
209
209
|
Run the remote-merge script — it merges the PR directly on GitHub and cleans up any stale session file in one terminal approval:
|
|
210
210
|
|
|
211
211
|
```bash
|
|
212
|
-
|
|
212
|
+
hula script merge-remote -- <issue-number>
|
|
213
213
|
```
|
|
214
214
|
|
|
215
215
|
The script outputs JSON with `status`, `issueNumber`, `sessionCleaned`, and `localUpdated`.
|