orkestrator 2.34.0-alpha → 2.34.2-beta
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/dist/client.js +51 -7
- package/dist/main.js +6912 -2544
- package/package.json +4 -4
- package/resources/claude-bridge/dist/index.js +506 -263
- package/resources/codex-bridge/dist/index.js +100 -68
package/dist/client.js
CHANGED
|
@@ -7730,7 +7730,7 @@ import path4 from "path";
|
|
|
7730
7730
|
// ../../apps/backend/package.json
|
|
7731
7731
|
var package_default = {
|
|
7732
7732
|
name: "@orkestrator/backend",
|
|
7733
|
-
version: "2.34.
|
|
7733
|
+
version: "2.34.2-beta",
|
|
7734
7734
|
private: true,
|
|
7735
7735
|
type: "module",
|
|
7736
7736
|
exports: {
|
|
@@ -7744,7 +7744,7 @@ var package_default = {
|
|
|
7744
7744
|
"start:web": "bun dist/main.js --fallback-host 127.0.0.1",
|
|
7745
7745
|
"start:web-public": "bun dist/main.js --tailscale-serve --allowed-origins https://orkestrator.dev,https://www.orkestrator.dev",
|
|
7746
7746
|
test: "bun test --preload ../../tests/setup-node.ts src tests --parallel",
|
|
7747
|
-
"test:workspace": "bun test --preload ../../tests/setup-node.ts
|
|
7747
|
+
"test:workspace": "bun --no-env-file ../../scripts/bun-test-tier.ts apps/backend src tests -- --preload ../../tests/setup-node.ts --only-failures ${ORKESTRATOR_TEST_TIMINGS_DIR:+--timings=$ORKESTRATOR_TEST_TIMINGS_DIR/backend.json --update-timings} --parallel=${ORKESTRATOR_BACKEND_TEST_WORKERS:-${ORKESTRATOR_TEST_WORKERS:-2}}",
|
|
7748
7748
|
typecheck: "bun check -p tsconfig.json && bun check -p tsconfig.test.json"
|
|
7749
7749
|
},
|
|
7750
7750
|
dependencies: {
|
|
@@ -14233,6 +14233,7 @@ var sessionCommands = [
|
|
|
14233
14233
|
|
|
14234
14234
|
// src/client/commands/ticket.ts
|
|
14235
14235
|
var STATUSES = ["backlog", "in-progress", "review", "done"];
|
|
14236
|
+
var KINDS = ["feature", "work-brief"];
|
|
14236
14237
|
var PROJECT_OPTION = {
|
|
14237
14238
|
name: "project",
|
|
14238
14239
|
kind: "string",
|
|
@@ -14264,6 +14265,18 @@ var TEXT_FIELD_OPTIONS = [
|
|
|
14264
14265
|
kind: "string",
|
|
14265
14266
|
valueName: "TEXT",
|
|
14266
14267
|
description: "Acceptance criteria."
|
|
14268
|
+
},
|
|
14269
|
+
{
|
|
14270
|
+
name: "kind",
|
|
14271
|
+
kind: "string",
|
|
14272
|
+
valueName: "KIND",
|
|
14273
|
+
description: `Ticket kind: ${KINDS.join(", ")}.`
|
|
14274
|
+
},
|
|
14275
|
+
{
|
|
14276
|
+
name: "sections-file",
|
|
14277
|
+
kind: "string",
|
|
14278
|
+
valueName: "PATH",
|
|
14279
|
+
description: "Read structured sections (a JSON object) from a local file."
|
|
14267
14280
|
}
|
|
14268
14281
|
];
|
|
14269
14282
|
function requireProject(options2) {
|
|
@@ -14281,8 +14294,25 @@ async function ticketFields(io, options2) {
|
|
|
14281
14294
|
names: { file: "--description-file", stdin: "--description-stdin", inline: "--description" },
|
|
14282
14295
|
required: false
|
|
14283
14296
|
});
|
|
14297
|
+
const sectionsText = await readTextSource(io, {
|
|
14298
|
+
file: options2["sections-file"],
|
|
14299
|
+
label: "Sections",
|
|
14300
|
+
maxBytes: 400000,
|
|
14301
|
+
names: { file: "--sections-file", stdin: "--sections-stdin" },
|
|
14302
|
+
required: false
|
|
14303
|
+
});
|
|
14304
|
+
let sections;
|
|
14305
|
+
if (sectionsText !== undefined) {
|
|
14306
|
+
try {
|
|
14307
|
+
sections = JSON.parse(sectionsText);
|
|
14308
|
+
} catch {
|
|
14309
|
+
throw new CliError("invalid-input", "--sections-file must contain a JSON object");
|
|
14310
|
+
}
|
|
14311
|
+
}
|
|
14284
14312
|
return {
|
|
14285
14313
|
...stringOption(options2, "title") !== undefined ? { title: options2.title } : {},
|
|
14314
|
+
...options2.kind !== undefined ? { kind: oneOf(options2.kind, KINDS, "--kind") } : {},
|
|
14315
|
+
...sections !== undefined ? { sections } : {},
|
|
14286
14316
|
...description !== undefined ? { description } : {},
|
|
14287
14317
|
...stringOption(options2, "criteria") !== undefined ? { acceptanceCriteria: options2.criteria } : {},
|
|
14288
14318
|
...options2.status !== undefined ? { status: oneOf(options2.status, STATUSES, "--status") } : {}
|
|
@@ -14291,6 +14321,12 @@ async function ticketFields(io, options2) {
|
|
|
14291
14321
|
function ticketRows(tickets) {
|
|
14292
14322
|
return table(["ID", "STATUS", "TITLE", "COMMENTS"], tickets.map((ticket) => [ticket.id, ticket.status, ticket.title, String(ticket.commentCount)]));
|
|
14293
14323
|
}
|
|
14324
|
+
var CRITERION_MARKS = {
|
|
14325
|
+
passed: "[x]",
|
|
14326
|
+
failed: "[!]",
|
|
14327
|
+
"not-checked": "[?]",
|
|
14328
|
+
unchecked: "[ ]"
|
|
14329
|
+
};
|
|
14294
14330
|
function ticketLines(ticket) {
|
|
14295
14331
|
return [
|
|
14296
14332
|
...keyValues([
|
|
@@ -14298,11 +14334,17 @@ function ticketLines(ticket) {
|
|
|
14298
14334
|
["project", ticket.projectId],
|
|
14299
14335
|
["status", ticket.status],
|
|
14300
14336
|
["title", ticket.title],
|
|
14337
|
+
["kind", ticket.kind ?? "feature"],
|
|
14301
14338
|
["environment", ticket.environmentId],
|
|
14302
|
-
["pr", ticket.pr.url]
|
|
14339
|
+
["pr", ticket.pr.url],
|
|
14340
|
+
...ticket.deliveryPolicy ? [["delivery", ticket.deliveryPolicy]] : []
|
|
14303
14341
|
]),
|
|
14304
14342
|
...ticket.description ? ["", ticket.description] : [],
|
|
14305
|
-
...ticket.
|
|
14343
|
+
...ticket.criteria?.length ? [
|
|
14344
|
+
"",
|
|
14345
|
+
"Acceptance criteria:",
|
|
14346
|
+
...ticket.criteria.map((criterion) => `${CRITERION_MARKS[criterion.status ?? "unchecked"]} ${criterion.id} ${criterion.text}${criterion.evidence ? ` (${criterion.evidence})` : ""}`)
|
|
14347
|
+
] : ticket.acceptanceCriteria ? ["", "Acceptance criteria:", ticket.acceptanceCriteria] : [],
|
|
14306
14348
|
...ticket.comments.flatMap((comment) => ["", `[${comment.createdAt}] ${comment.text}`])
|
|
14307
14349
|
];
|
|
14308
14350
|
}
|
|
@@ -14375,7 +14417,8 @@ var ticketCommands = [
|
|
|
14375
14417
|
options: [PROJECT_OPTION, ...TEXT_FIELD_OPTIONS, STATUS_OPTION, REQUEST_ID_OPTION],
|
|
14376
14418
|
inputFields: {
|
|
14377
14419
|
"description-file": "description",
|
|
14378
|
-
criteria: "acceptanceCriteria"
|
|
14420
|
+
criteria: "acceptanceCriteria",
|
|
14421
|
+
"sections-file": "sections"
|
|
14379
14422
|
},
|
|
14380
14423
|
idOutput: "ticket ID",
|
|
14381
14424
|
async run(context, parsed) {
|
|
@@ -14397,13 +14440,14 @@ var ticketCommands = [
|
|
|
14397
14440
|
{
|
|
14398
14441
|
path: ["ticket", "update"],
|
|
14399
14442
|
action: "ticket.update",
|
|
14400
|
-
summary: "Change a ticket's title, description, criteria or column.",
|
|
14443
|
+
summary: "Change a ticket's title, kind, sections, description, criteria or column.",
|
|
14401
14444
|
positionals: [{ name: "ticket", required: true }],
|
|
14402
14445
|
options: [PROJECT_OPTION, ...TEXT_FIELD_OPTIONS, STATUS_OPTION, REQUEST_ID_OPTION],
|
|
14403
14446
|
inputFields: {
|
|
14404
14447
|
ticket: "ticketId",
|
|
14405
14448
|
"description-file": "description",
|
|
14406
|
-
criteria: "acceptanceCriteria"
|
|
14449
|
+
criteria: "acceptanceCriteria",
|
|
14450
|
+
"sections-file": "sections"
|
|
14407
14451
|
},
|
|
14408
14452
|
idOutput: "ticket ID",
|
|
14409
14453
|
async run(context, parsed) {
|