@opvs-ai/cli 0.15.0 → 0.15.1
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/README.md +32 -0
- package/dist/.build-stamp.json +4 -4
- package/dist/commands/boards.d.ts +13 -0
- package/dist/commands/boards.js +171 -18
- package/dist/commands/boards.js.map +1 -1
- package/dist/commands/columns.d.ts +11 -0
- package/dist/commands/columns.js +75 -39
- package/dist/commands/columns.js.map +1 -1
- package/dist/commands/comments.js +48 -14
- package/dist/commands/comments.js.map +1 -1
- package/dist/commands/files.js +34 -0
- package/dist/commands/files.js.map +1 -1
- package/dist/commands/markers.js +53 -1
- package/dist/commands/markers.js.map +1 -1
- package/dist/commands/members.d.ts +33 -0
- package/dist/commands/members.js +96 -11
- package/dist/commands/members.js.map +1 -1
- package/dist/commands/projects.d.ts +8 -0
- package/dist/commands/projects.js +80 -6
- package/dist/commands/projects.js.map +1 -1
- package/dist/commands/stages.js +14 -3
- package/dist/commands/stages.js.map +1 -1
- package/dist/commands/tasks.js +207 -6
- package/dist/commands/tasks.js.map +1 -1
- package/dist/lib/factory-gate.d.ts +38 -0
- package/dist/lib/factory-gate.js +65 -0
- package/dist/lib/factory-gate.js.map +1 -0
- package/dist/lib/options.d.ts +17 -0
- package/dist/lib/options.js +37 -0
- package/dist/lib/options.js.map +1 -1
- package/dist/lib/routing.js +1 -2
- package/dist/lib/routing.js.map +1 -1
- package/package.json +2 -2
package/dist/commands/columns.js
CHANGED
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import { getEffectiveConfig, createClient } from "@opvs-ai/core";
|
|
19
19
|
import { buildUrl, printResponse, printJson } from "../lib/format.js";
|
|
20
|
-
import { csv, oneOf } from "../lib/options.js";
|
|
20
|
+
import { boolFlag, CLEAR, csv, intFlag, oneOf } from "../lib/options.js";
|
|
21
|
+
import { isUuid } from "../lib/board-refs.js";
|
|
21
22
|
/** `TaskStatus` (agentboard `models/task.py`). A column binds at most one. */
|
|
22
23
|
export const TASK_STATUSES = [
|
|
23
24
|
"pending",
|
|
@@ -74,40 +75,53 @@ const IS_DONE_HELP = "true | false. Marks the board's done column. One per board
|
|
|
74
75
|
const IS_DEFAULT_HELP = "true | false. The column a new card lands in when no column is given. One per board (a second is a 409).";
|
|
75
76
|
const DESCRIPTION_HELP = "Markdown instructions that apply to every card in this column (agents read it on the card).";
|
|
76
77
|
const SLA_MINUTES_HELP = "Flag a card that has sat in this column longer than N minutes, measured from entered_column_at. " +
|
|
77
|
-
"
|
|
78
|
+
"The column needs it for any --sla-action; alone it only shows up in audits. " +
|
|
79
|
+
"On update, the column's saved value counts — you don't have to pass it again.";
|
|
78
80
|
// `services/sla_scanner.py` module docstring: `message` is a comment prefixed
|
|
79
81
|
// with @recipient; real OPVS-protocol delivery is a TODO there.
|
|
80
82
|
const SLA_ACTION_HELP = "What fires when a card crosses --sla-minutes: comment | move | message | all. " +
|
|
81
|
-
"move and all also need --sla-move-to
|
|
83
|
+
"move and all also need --sla-move-to (saved or in the same command). " +
|
|
84
|
+
"'message' is a comment that @-mentions --sla-recipient, not a delivered message.";
|
|
82
85
|
const SLA_MOVE_TO_HELP = "Slug of the column a stale card is moved to (for --sla-action move | all).";
|
|
83
86
|
const SLA_RECIPIENT_HELP = "Who a 'message' names: column.managed_by | task.assignee. Unset → column.managed_by.";
|
|
84
87
|
const SLA_TEMPLATE_HELP = "Markdown body for the SLA comment/message. Placeholders: {{task_title}} {{column_name}} {{minutes_stale}}.";
|
|
85
|
-
/** The CLEAR verb for a scalar field (matches `tasks update --mutex-group none`). */
|
|
86
|
-
const CLEAR = "none";
|
|
87
|
-
function parseBool(flag, raw) {
|
|
88
|
-
if (raw === undefined)
|
|
89
|
-
return undefined;
|
|
90
|
-
const v = raw.trim().toLowerCase();
|
|
91
|
-
if (v === "true")
|
|
92
|
-
return true;
|
|
93
|
-
if (v === "false")
|
|
94
|
-
return false;
|
|
95
|
-
console.error(`Error: ${flag} must be true or false (got '${raw}')`);
|
|
96
|
-
process.exit(1);
|
|
97
|
-
}
|
|
98
88
|
/**
|
|
99
|
-
*
|
|
100
|
-
*
|
|
89
|
+
* `managed_by_*` (migration 033). Read by two things only:
|
|
90
|
+
* - `agent_api.list_managed_column_tasks` — a USER owner's cross-board inbox
|
|
91
|
+
* (`Column.managed_by_user_id == caller`); an agent owner appears in no inbox;
|
|
92
|
+
* - `sla_scanner` — the name an SLA `message` @-mentions when
|
|
93
|
+
* `sla_recipient` is `column.managed_by` (the default).
|
|
94
|
+
* No claim, move or permission check reads it.
|
|
95
|
+
*/
|
|
96
|
+
const MANAGED_BY_HELP = "Column owner: user:<uuid> | agent:<uuid>. A USER owner gets this column's cards in their managed-columns inbox; " +
|
|
97
|
+
"an SLA 'message' @-mentions the owner. It grants no permission and assigns no card.";
|
|
98
|
+
const WIP_LIMIT_HELP = "Work-in-progress limit, a positive integer. Advisory: a move into a full column is not refused.";
|
|
99
|
+
/**
|
|
100
|
+
* Parse `--managed-by` into all THREE manager keys, always together.
|
|
101
|
+
*
|
|
102
|
+
* `ck_columns_manager_coherence` (migration 033) allows exactly: all null, or
|
|
103
|
+
* type=user + user_id + NO agent_id, or type=agent + agent_id + NO user_id. A
|
|
104
|
+
* PATCH is `exclude_unset`, so sending only the new id would leave the other
|
|
105
|
+
* one stored and the row would violate the check — the switch from a user to
|
|
106
|
+
* an agent owner has to null the user id in the same write.
|
|
101
107
|
*/
|
|
102
|
-
function
|
|
108
|
+
export function parseManagedBy(raw, clearable) {
|
|
103
109
|
if (raw === undefined)
|
|
104
110
|
return undefined;
|
|
105
|
-
const
|
|
106
|
-
if (
|
|
107
|
-
|
|
111
|
+
const v = raw.trim();
|
|
112
|
+
if (v === CLEAR || v === "") {
|
|
113
|
+
if (!clearable)
|
|
114
|
+
return undefined;
|
|
115
|
+
return { managed_by_type: null, managed_by_user_id: null, managed_by_agent_id: null };
|
|
116
|
+
}
|
|
117
|
+
const m = /^(user|agent):(.+)$/.exec(v);
|
|
118
|
+
if (!m || !isUuid(m[2])) {
|
|
119
|
+
console.error(`Error: --managed-by expects user:<uuid> or agent:<uuid>${clearable ? ", or 'none'" : ""} (got '${raw}')`);
|
|
108
120
|
process.exit(1);
|
|
109
121
|
}
|
|
110
|
-
return
|
|
122
|
+
return m[1] === "user"
|
|
123
|
+
? { managed_by_type: "user", managed_by_user_id: m[2], managed_by_agent_id: null }
|
|
124
|
+
: { managed_by_type: "agent", managed_by_user_id: null, managed_by_agent_id: m[2] };
|
|
111
125
|
}
|
|
112
126
|
/**
|
|
113
127
|
* Build the wiring half of a column body from flags.
|
|
@@ -136,7 +150,17 @@ export function buildColumnWiring(opts, clearable) {
|
|
|
136
150
|
body.claimable_by_roles = null;
|
|
137
151
|
}
|
|
138
152
|
else {
|
|
139
|
-
|
|
153
|
+
const roles = csv(raw);
|
|
154
|
+
// ASP-119 F13: `,` survives the `""` check and csv() returns undefined,
|
|
155
|
+
// which used to land as `claimable_by_roles: undefined` — a key that
|
|
156
|
+
// passed "Nothing to update" and was then dropped by JSON.stringify, so
|
|
157
|
+
// an empty PATCH returned 200 and the operator believed roles were set.
|
|
158
|
+
// Refused on create and update alike; '' / 'none' is the clear.
|
|
159
|
+
if (!roles) {
|
|
160
|
+
console.error(`Error: --claimable-by-roles '${opts.claimableByRoles}' names no role. Pass role names, or '' / 'none' to clear.`);
|
|
161
|
+
process.exit(1);
|
|
162
|
+
}
|
|
163
|
+
body.claimable_by_roles = roles;
|
|
140
164
|
}
|
|
141
165
|
}
|
|
142
166
|
scalar("on_claim_move_to", opts.onClaimMoveTo);
|
|
@@ -150,10 +174,10 @@ export function buildColumnWiring(opts, clearable) {
|
|
|
150
174
|
body.mapped_status = oneOf("--mapped-status", opts.mappedStatus, TASK_STATUSES);
|
|
151
175
|
}
|
|
152
176
|
}
|
|
153
|
-
const isDone =
|
|
177
|
+
const isDone = boolFlag("--is-done-column", opts.isDoneColumn);
|
|
154
178
|
if (isDone !== undefined)
|
|
155
179
|
body.is_done_column = isDone;
|
|
156
|
-
const isDefault =
|
|
180
|
+
const isDefault = boolFlag("--is-default", opts.isDefault);
|
|
157
181
|
if (isDefault !== undefined)
|
|
158
182
|
body.is_default = isDefault;
|
|
159
183
|
// `description` is free text, so only the empty string clears it — "none" is
|
|
@@ -173,7 +197,7 @@ export function buildColumnWiring(opts, clearable) {
|
|
|
173
197
|
body.sla_minutes = null;
|
|
174
198
|
}
|
|
175
199
|
else {
|
|
176
|
-
body.sla_minutes =
|
|
200
|
+
body.sla_minutes = intFlag("--sla-minutes", opts.slaMinutes, 1);
|
|
177
201
|
}
|
|
178
202
|
}
|
|
179
203
|
if (opts.slaAction !== undefined) {
|
|
@@ -204,6 +228,12 @@ export function buildColumnWiring(opts, clearable) {
|
|
|
204
228
|
body.sla_message_template = opts.slaTemplate;
|
|
205
229
|
}
|
|
206
230
|
}
|
|
231
|
+
const manager = parseManagedBy(opts.managedBy, clearable);
|
|
232
|
+
if (manager) {
|
|
233
|
+
body.managed_by_type = manager.managed_by_type;
|
|
234
|
+
body.managed_by_user_id = manager.managed_by_user_id;
|
|
235
|
+
body.managed_by_agent_id = manager.managed_by_agent_id;
|
|
236
|
+
}
|
|
207
237
|
return body;
|
|
208
238
|
}
|
|
209
239
|
/** Attach the wiring + SLA options shared by `create` and `update`. */
|
|
@@ -221,7 +251,8 @@ function withWiringOptions(cmd, clearable) {
|
|
|
221
251
|
.option("--sla-action <action>", clear(SLA_ACTION_HELP))
|
|
222
252
|
.option("--sla-move-to <slug>", clear(SLA_MOVE_TO_HELP))
|
|
223
253
|
.option("--sla-recipient <who>", clear(SLA_RECIPIENT_HELP))
|
|
224
|
-
.option("--sla-template <markdown>", clear(SLA_TEMPLATE_HELP, "''"))
|
|
254
|
+
.option("--sla-template <markdown>", clear(SLA_TEMPLATE_HELP, "''"))
|
|
255
|
+
.option("--managed-by <owner>", clear(MANAGED_BY_HELP));
|
|
225
256
|
}
|
|
226
257
|
export function registerColumnCommands(program) {
|
|
227
258
|
const columns = program.command("columns").description("Board column management");
|
|
@@ -249,8 +280,8 @@ export function registerColumnCommands(program) {
|
|
|
249
280
|
.requiredOption("--name <name>", "Column name")
|
|
250
281
|
.option("--slug <slug>", "URL-safe slug (auto-derived from --name if omitted)")
|
|
251
282
|
.option("--color <color>", "Column color (hex)")
|
|
252
|
-
.option("--wip-limit <n>",
|
|
253
|
-
.option("--position <n>", "Position
|
|
283
|
+
.option("--wip-limit <n>", WIP_LIMIT_HELP)
|
|
284
|
+
.option("--position <n>", "Position, 0-based. Omit to append after the last column."), false).action(async (boardId, opts) => {
|
|
254
285
|
const wsSlug = program.opts().workspace;
|
|
255
286
|
try {
|
|
256
287
|
const client = createClient(wsSlug);
|
|
@@ -263,10 +294,12 @@ export function registerColumnCommands(program) {
|
|
|
263
294
|
const body = { name: opts.name, slug };
|
|
264
295
|
if (opts.color)
|
|
265
296
|
body.color = opts.color;
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
297
|
+
const wipLimit = intFlag("--wip-limit", opts.wipLimit, 1);
|
|
298
|
+
if (wipLimit !== undefined)
|
|
299
|
+
body.wip_limit = wipLimit;
|
|
300
|
+
const position = intFlag("--position", opts.position, 0);
|
|
301
|
+
if (position !== undefined)
|
|
302
|
+
body.position = position;
|
|
270
303
|
Object.assign(body, buildColumnWiring(opts, false));
|
|
271
304
|
const res = await client.post(`/api/v1/board/boards/${boardId}/columns`, body);
|
|
272
305
|
const data = await res.json();
|
|
@@ -283,7 +316,7 @@ export function registerColumnCommands(program) {
|
|
|
283
316
|
.description("Update a column — only the flags you pass are changed")
|
|
284
317
|
.option("--name <name>", "New name")
|
|
285
318
|
.option("--color <color>", "New color (hex)")
|
|
286
|
-
.option("--wip-limit <n>",
|
|
319
|
+
.option("--wip-limit <n>", `${WIP_LIMIT_HELP} Pass 'none' to clear it.`), true).action(async (columnId, opts) => {
|
|
287
320
|
const wsSlug = program.opts().workspace;
|
|
288
321
|
try {
|
|
289
322
|
const client = createClient(wsSlug);
|
|
@@ -292,13 +325,16 @@ export function registerColumnCommands(program) {
|
|
|
292
325
|
body.name = opts.name;
|
|
293
326
|
if (opts.color)
|
|
294
327
|
body.color = opts.color;
|
|
295
|
-
if (opts.wipLimit)
|
|
296
|
-
body.wip_limit =
|
|
328
|
+
if (opts.wipLimit !== undefined) {
|
|
329
|
+
body.wip_limit = opts.wipLimit.trim() === CLEAR ? null : intFlag("--wip-limit", opts.wipLimit, 1);
|
|
330
|
+
}
|
|
297
331
|
Object.assign(body, buildColumnWiring(opts, true));
|
|
298
|
-
|
|
332
|
+
// Count keys that will SURVIVE JSON.stringify: an `undefined` value is
|
|
333
|
+
// dropped on the wire, so it must not satisfy this check (ASP-119 F13).
|
|
334
|
+
if (Object.values(body).every((v) => v === undefined)) {
|
|
299
335
|
console.error("Nothing to update. Provide --name, --color, --wip-limit, --claimable-by-roles, --on-claim-move-to, " +
|
|
300
336
|
"--on-done-move-to, --mapped-status, --is-done-column, --is-default, --description, --sla-minutes, " +
|
|
301
|
-
"--sla-action, --sla-move-to, --sla-recipient, or --
|
|
337
|
+
"--sla-action, --sla-move-to, --sla-recipient, --sla-template, or --managed-by");
|
|
302
338
|
process.exit(1);
|
|
303
339
|
}
|
|
304
340
|
const res = await client.patch(`/api/v1/board/columns/${columnId}`, body);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columns.js","sourceRoot":"","sources":["../../src/commands/columns.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,SAAS;IACT,UAAU;IACV,aAAa;IACb,SAAS;IACT,QAAQ;IACR,MAAM;IACN,WAAW;IACX,QAAQ;CACA,CAAC;AAEX,wEAAwE;AACxE,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAU,CAAC;AAEnE,0CAA0C;AAC1C,MAAM,cAAc,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAU,CAAC;AAEvE;;;;;;;;GAQG;AACH,MAAM,uBAAuB,GAC3B,qGAAqG;IACrG,gHAAgH;IAChH,iCAAiC;IACjC,+GAA+G;IAC/G,4GAA4G;IAC5G,2BAA2B,CAAC;AAE9B,mGAAmG;AACnG,MAAM,qBAAqB,GACzB,qGAAqG;IACrG,+EAA+E,CAAC;AAElF;;;;;;;;;;;;GAYG;AACH,MAAM,oBAAoB,GACxB,8GAA8G;IAC9G,iHAAiH;IACjH,8CAA8C,CAAC;AAEjD,MAAM,kBAAkB,GACtB,qCAAqC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,yCAAyC;IACvG,8GAA8G,CAAC;AAEjH,MAAM,YAAY,GAChB,gHAAgH;IAChH,4CAA4C,CAAC;AAE/C,MAAM,eAAe,GACnB,0GAA0G,CAAC;AAE7G,MAAM,gBAAgB,GACpB,6FAA6F,CAAC;AAEhG,MAAM,gBAAgB,GACpB,kGAAkG;IAClG,mEAAmE,CAAC;AAEtE,8EAA8E;AAC9E,gEAAgE;AAChE,MAAM,eAAe,GACnB,gFAAgF;IAChF,wHAAwH,CAAC;AAE3H,MAAM,gBAAgB,GAAG,4EAA4E,CAAC;AAEtG,MAAM,kBAAkB,GACtB,sFAAsF,CAAC;AAEzF,MAAM,iBAAiB,GACrB,4GAA4G,CAAC;AAE/G,qFAAqF;AACrF,MAAM,KAAK,GAAG,MAAM,CAAC;AAErB,SAAS,SAAS,CAAC,IAAY,EAAE,GAAuB;IACtD,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,CAAC,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,gCAAgC,GAAG,IAAI,CAAC,CAAC;IACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,IAAY,EAAE,GAAuB;IAC7D,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,qCAAqC,GAAG,IAAI,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAiBD;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAgB,EAAE,SAAkB;IACpE,MAAM,IAAI,GAA4B,EAAE,CAAC;IAEzC,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,GAAuB,EAAE,EAAE;QACtD,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO;QAC9B,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YAChC,IAAI,SAAS;gBAAE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YAChC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IAClB,CAAC,CAAC;IAEF,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YAChC,IAAI,SAAS;gBAAE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAE7C,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,IAAI,IAAI,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;YAC5D,IAAI,SAAS;gBAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAChE,IAAI,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;IACvD,MAAM,SAAS,GAAG,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5D,IAAI,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAEzD,6EAA6E;IAC7E,0DAA0D;IAC1D,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;YAC5B,IAAI,SAAS;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YAC9B,IAAI,SAAS;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;YAC7B,IAAI,SAAS;gBAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IACD,MAAM,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;YAChC,IAAI,SAAS;gBAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;YAC5B,IAAI,SAAS;gBAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uEAAuE;AACvE,SAAS,iBAAiB,CAAC,GAAY,EAAE,SAAkB;IACzD,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,IAAI,GAAG,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1G,OAAO,GAAG;SACP,MAAM,CAAC,8BAA8B,EAAE,uBAAuB,CAAC;SAC/D,MAAM,CAAC,2BAA2B,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC;SACjE,MAAM,CAAC,0BAA0B,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;SAC/D,MAAM,CAAC,0BAA0B,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;SAC7D,MAAM,CAAC,yBAAyB,EAAE,YAAY,CAAC;SAC/C,MAAM,CAAC,qBAAqB,EAAE,eAAe,CAAC;SAC9C,MAAM,CAAC,0BAA0B,EAAE,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;SACjE,MAAM,CAAC,mBAAmB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;SACpD,MAAM,CAAC,uBAAuB,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;SACvD,MAAM,CAAC,sBAAsB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;SACvD,MAAM,CAAC,uBAAuB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;SAC1D,MAAM,CAAC,2BAA2B,EAAE,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;IAElF,OAAO;SACJ,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,0BAA0B,CAAC;SACvC,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACxC,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,wBAAwB,OAAO,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YACvF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,GAA0B,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,IAAI,wBAAwB,EAAE,CAAC,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,iBAAiB,CACf,OAAO;SACJ,OAAO,CAAC,kBAAkB,CAAC;SAC3B,WAAW,CAAC,qBAAqB,CAAC;SAClC,cAAc,CAAC,eAAe,EAAE,aAAa,CAAC;SAC9C,MAAM,CAAC,eAAe,EAAE,qDAAqD,CAAC;SAC9E,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;SAC/C,MAAM,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;SACnD,MAAM,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,EACjD,KAAK,CACN,CAAC,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,IAAI,EAAE,EAAE;QACvC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,IAAI,GACR,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI;qBACN,WAAW,EAAE;qBACb,IAAI,EAAE;qBACN,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;qBAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC7B,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;YAChE,IAAI,IAAI,CAAC,KAAK;gBAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACxC,IAAI,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAChE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC7E,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACpD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,wBAAwB,OAAO,UAAU,EAAE,IAAI,CAAC,CAAC;YAC/E,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,SAAS,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,GAA0B,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,IAAI,yBAAyB,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,iBAAiB,CACf,OAAO;SACJ,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,eAAe,EAAE,UAAU,CAAC;SACnC,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;SAC5C,MAAM,CAAC,iBAAiB,EAAE,wBAAwB,CAAC,EACtD,IAAI,CACL,CAAC,MAAM,CAAC,KAAK,EAAE,QAAgB,EAAE,IAAI,EAAE,EAAE;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,IAAI,GAA4B,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACrC,IAAI,IAAI,CAAC,KAAK;gBAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACxC,IAAI,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,KAAK,CACX,qGAAqG;oBACnG,oGAAoG;oBACpG,iEAAiE,CACpE,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,yBAAyB,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1E,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,SAAS,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,GAA0B,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,IAAI,yBAAyB,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO;SACJ,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,iBAAiB,CAAC;SAC9B,cAAc,CAAC,eAAe,EAAE,yCAAyC,CAAC;SAC1E,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,IAAI,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK;iBACvB,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,EAAU,EAAE,QAAgB,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;YACxE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,wBAAwB,OAAO,kBAAkB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9F,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,SAAS,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,GAA0B,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,IAAI,2BAA2B,EAAE,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,iBAAiB,CAAC;SAC9B,MAAM,CAAC,KAAK,EAAE,QAAgB,EAAE,EAAE;QACjC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,MAAM,CAAC,MAAM,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,GAA0B,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,IAAI,yBAAyB,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
1
|
+
{"version":3,"file":"columns.js","sourceRoot":"","sources":["../../src/commands/columns.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,24 +39,25 @@ export function registerCommentCommands(program) {
|
|
|
39
39
|
.command("add <taskId> [message]")
|
|
40
40
|
.description("Add a comment to a task")
|
|
41
41
|
.option("-f, --file <path>", "Read comment body from file")
|
|
42
|
+
// `is_internal` is a LABEL. Nothing filters on it: the list route, the
|
|
43
|
+
// yaml/md renderers (`renderers.py` adds `internal: true`) and the claim
|
|
44
|
+
// brief (`claim_service._claim_comments`) all return the comment to every
|
|
45
|
+
// reader. Calling it "hidden" would be a help line promising privacy the
|
|
46
|
+
// server does not provide.
|
|
47
|
+
.option("--internal", "Mark the comment internal. A LABEL ONLY: nothing hides it — every reader of the thread, a board guest and " +
|
|
48
|
+
"the worker's claim brief included, still gets the full text. Do not put a secret in it.")
|
|
49
|
+
.option("--reply-to <commentId>", "Thread this under an existing comment (its UUID). The server does not check that comment is on the same task.")
|
|
42
50
|
.action(async (taskId, message, opts) => {
|
|
43
51
|
const wsSlug = program.opts().workspace;
|
|
44
52
|
try {
|
|
45
53
|
const client = createClient(wsSlug);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
body =
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
console.error("Provide a message or --file <path>");
|
|
55
|
-
process.exit(1);
|
|
56
|
-
}
|
|
57
|
-
const res = await client.post(`/api/v1/board/tasks/${taskId}/comments`, {
|
|
58
|
-
content: body,
|
|
59
|
-
});
|
|
54
|
+
const content = readBody(opts.file, message);
|
|
55
|
+
const body = { content };
|
|
56
|
+
if (opts.internal)
|
|
57
|
+
body.is_internal = true;
|
|
58
|
+
if (opts.replyTo)
|
|
59
|
+
body.parent_comment_id = opts.replyTo;
|
|
60
|
+
const res = await client.post(`/api/v1/board/tasks/${taskId}/comments`, body);
|
|
60
61
|
const data = await res.json();
|
|
61
62
|
printJson(data);
|
|
62
63
|
}
|
|
@@ -66,5 +67,38 @@ export function registerCommentCommands(program) {
|
|
|
66
67
|
process.exit(1);
|
|
67
68
|
}
|
|
68
69
|
});
|
|
70
|
+
// `updateComment` (PATCH /comments/{id}). AgentBoard's route checks no
|
|
71
|
+
// authorship — any caller who may write the board may rewrite any comment on
|
|
72
|
+
// it — and the activity row it writes carries only the comment id, so the
|
|
73
|
+
// previous text is gone. Both are in the help because both are surprises.
|
|
74
|
+
comments
|
|
75
|
+
.command("edit <commentId> [message]")
|
|
76
|
+
.description("Replace a comment's text. Any writer on the board can edit ANY comment (authorship is not checked), and the " +
|
|
77
|
+
"old text is not kept — the activity feed records that it was edited, not what it said.")
|
|
78
|
+
.option("-f, --file <path>", "Read the new body from file")
|
|
79
|
+
.action(async (commentId, message, opts) => {
|
|
80
|
+
const wsSlug = program.opts().workspace;
|
|
81
|
+
try {
|
|
82
|
+
const client = createClient(wsSlug);
|
|
83
|
+
const content = readBody(opts.file, message);
|
|
84
|
+
const res = await client.patch(`/api/v1/board/comments/${commentId}`, { content });
|
|
85
|
+
const data = await res.json();
|
|
86
|
+
printJson(data);
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
const e = err;
|
|
90
|
+
console.error(`Error: ${e.detail || "Failed to edit comment"}`);
|
|
91
|
+
process.exit(1);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/** The comment body from `--file` or the positional message; exits when neither is given. */
|
|
96
|
+
function readBody(file, message) {
|
|
97
|
+
if (file)
|
|
98
|
+
return readFileSync(file, "utf-8");
|
|
99
|
+
if (message)
|
|
100
|
+
return message;
|
|
101
|
+
console.error("Provide a message or --file <path>");
|
|
102
|
+
process.exit(1);
|
|
69
103
|
}
|
|
70
104
|
//# sourceMappingURL=comments.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comments.js","sourceRoot":"","sources":["../../src/commands/comments.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEtE,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAE1E,QAAQ;SACL,OAAO,CAAC,eAAe,CAAC;SACxB,WAAW,CAAC,yBAAyB,CAAC;QACvC,mEAAmE;QACnE,sEAAsE;QACtE,yEAAyE;QACzE,uEAAuE;QACvE,yEAAyE;QACzE,oEAAoE;QACpE,mDAAmD;SAClD,MAAM,CAAC,aAAa,EAAE,8DAA8D,CAAC;SACrF,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAI,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACxC,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,KAAK;gBAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1C,MAAM,GAAG,GAAG,QAAQ,CAAC,uBAAuB,MAAM,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YACnF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,GAA0B,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,IAAI,yBAAyB,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,QAAQ;SACL,OAAO,CAAC,wBAAwB,CAAC;SACjC,WAAW,CAAC,yBAAyB,CAAC;SACtC,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"comments.js","sourceRoot":"","sources":["../../src/commands/comments.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/files.js
CHANGED
|
@@ -84,6 +84,40 @@ export function registerFileCommands(program) {
|
|
|
84
84
|
process.exit(1);
|
|
85
85
|
}
|
|
86
86
|
});
|
|
87
|
+
// `attachFileFromUrl` (POST /tasks/{id}/files/fetch-url) had an MCP method
|
|
88
|
+
// and no CLI command (ASP-85). Distinct from `attach-url`, which stores a
|
|
89
|
+
// LINK: this stores the BYTES. `FileService.fetch_url_to_attachment` defaults
|
|
90
|
+
// file_type to attachment (verbatim); `image` runs `process_cover_image`.
|
|
91
|
+
files
|
|
92
|
+
.command("fetch-url <taskId> <url>")
|
|
93
|
+
.description("Download the file at a public http(s) URL onto a card, server-side. Stores the BYTES in your brand's file " +
|
|
94
|
+
"storage (up to 50 MB), so it survives the source going away — unlike attach-url, which keeps only a link. " +
|
|
95
|
+
"Internal, loopback and cloud-metadata addresses are refused.")
|
|
96
|
+
.option("--filename <name>", "Stored filename (default: the URL's last path segment)")
|
|
97
|
+
.option("--description <desc>", "Attachment description")
|
|
98
|
+
.option("--type <type>", "attachment (default: the original bytes, verbatim) | result | input | document | data | other | image. " +
|
|
99
|
+
"'image' RESIZES and center-crops to a 1200x675 JPEG and does not keep the original.")
|
|
100
|
+
.action(async (taskId, url, opts) => {
|
|
101
|
+
const wsSlug = program.opts().workspace;
|
|
102
|
+
try {
|
|
103
|
+
const client = createClient(wsSlug);
|
|
104
|
+
const body = { url };
|
|
105
|
+
if (opts.filename)
|
|
106
|
+
body.filename = opts.filename;
|
|
107
|
+
if (opts.description)
|
|
108
|
+
body.description = opts.description;
|
|
109
|
+
if (opts.type)
|
|
110
|
+
body.file_type = opts.type;
|
|
111
|
+
const res = await client.post(`/api/v1/board/tasks/${taskId}/files/fetch-url`, body);
|
|
112
|
+
const data = await res.json();
|
|
113
|
+
printJson(data);
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
const e = err;
|
|
117
|
+
console.error(`Error: ${e.detail || "Failed to fetch URL onto the task"}`);
|
|
118
|
+
process.exit(1);
|
|
119
|
+
}
|
|
120
|
+
});
|
|
87
121
|
files
|
|
88
122
|
.command("download <fileId>")
|
|
89
123
|
.description("Download a file")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/commands/files.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/commands/files.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/markers.js
CHANGED
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { getEffectiveConfig, createClient } from "@opvs-ai/core";
|
|
5
5
|
import { buildUrl, printResponse, printJson } from "../lib/format.js";
|
|
6
|
+
import { boolFlag, oneOf } from "../lib/options.js";
|
|
7
|
+
/** `MarkerCreate.marker_type` pattern (agentboard `schemas/marker.py`). */
|
|
8
|
+
const MARKER_TYPES = ["milestone", "epic", "story", "checkpoint"];
|
|
9
|
+
// `marker_type` is read by nothing on the server but the marker service's own
|
|
10
|
+
// write — it is how the dashboard groups markers, not a behaviour.
|
|
11
|
+
const TYPE_HELP = `Kind of marker: ${MARKER_TYPES.join(" | ")}. Display grouping only — nothing on the server acts on it.`;
|
|
12
|
+
const TARGET_DATE_HELP = "Target date (YYYY-MM-DD). Informational: a missed date raises no alert and moves nothing.";
|
|
13
|
+
const BOARD_LINK_HELP = "UUID of a board-to-board link (`opvs board-links list`) this marker annotates on the board graph.";
|
|
14
|
+
const DESCRIPTION_HELP = "Marker description (max 1000 chars).";
|
|
15
|
+
/** `YYYY-MM-DD`, checked locally so a typo is one line rather than a pydantic 422. */
|
|
16
|
+
function isoDate(flag, raw) {
|
|
17
|
+
if (!/^\d{4}-\d{2}-\d{2}$/.test(raw)) {
|
|
18
|
+
console.error(`Error: ${flag} must be a date as YYYY-MM-DD (got '${raw}')`);
|
|
19
|
+
process.exit(1);
|
|
20
|
+
}
|
|
21
|
+
return raw;
|
|
22
|
+
}
|
|
6
23
|
export function registerMarkerCommands(program) {
|
|
7
24
|
const markers = program
|
|
8
25
|
.command("markers")
|
|
@@ -31,8 +48,13 @@ export function registerMarkerCommands(program) {
|
|
|
31
48
|
.requiredOption("-n, --name <name>", "Marker name")
|
|
32
49
|
.option("--color <hex>", "Color hex (e.g. '#ff0000')")
|
|
33
50
|
.option("--icon <icon>", "Icon name")
|
|
51
|
+
.option("--description <text>", DESCRIPTION_HELP)
|
|
52
|
+
.option("--type <type>", `${TYPE_HELP} Default: milestone.`)
|
|
53
|
+
.option("--target-date <date>", TARGET_DATE_HELP)
|
|
54
|
+
.option("--board-link <uuid>", BOARD_LINK_HELP)
|
|
34
55
|
.action(async (opts) => {
|
|
35
56
|
const wsSlug = program.opts().workspace;
|
|
57
|
+
const markerType = oneOf("--type", opts.type, MARKER_TYPES);
|
|
36
58
|
try {
|
|
37
59
|
const client = createClient(wsSlug);
|
|
38
60
|
const body = { name: opts.name };
|
|
@@ -40,6 +62,14 @@ export function registerMarkerCommands(program) {
|
|
|
40
62
|
body.color = opts.color;
|
|
41
63
|
if (opts.icon)
|
|
42
64
|
body.icon = opts.icon;
|
|
65
|
+
if (opts.description)
|
|
66
|
+
body.description = opts.description;
|
|
67
|
+
if (markerType)
|
|
68
|
+
body.marker_type = markerType;
|
|
69
|
+
if (opts.targetDate)
|
|
70
|
+
body.target_date = isoDate("--target-date", opts.targetDate);
|
|
71
|
+
if (opts.boardLink)
|
|
72
|
+
body.board_link_id = opts.boardLink;
|
|
43
73
|
const res = await client.post("/api/v1/board/markers", body);
|
|
44
74
|
const data = await res.json();
|
|
45
75
|
printJson(data);
|
|
@@ -74,8 +104,18 @@ export function registerMarkerCommands(program) {
|
|
|
74
104
|
.option("-n, --name <name>", "New name")
|
|
75
105
|
.option("--color <hex>", "New color hex")
|
|
76
106
|
.option("--icon <icon>", "New icon")
|
|
107
|
+
.option("--description <text>", `${DESCRIPTION_HELP} Pass '' to clear it.`)
|
|
108
|
+
.option("--type <type>", TYPE_HELP)
|
|
109
|
+
.option("--target-date <date>", `${TARGET_DATE_HELP} Pass 'none' to clear it.`)
|
|
110
|
+
.option("--board-link <uuid>", `${BOARD_LINK_HELP} Pass 'none' to detach it.`)
|
|
111
|
+
// `is_completed` is NOT NULL, so there is no clear verb — only true | false.
|
|
112
|
+
// `MarkerService.update` stamps completed_at on the false→true edge and
|
|
113
|
+
// clears it on true→false, so re-completing restarts the timestamp.
|
|
114
|
+
.option("--completed <bool>", "true | false. Marks the milestone done (stamps completed_at) or reopens it (clears completed_at, so a later " +
|
|
115
|
+
"completion records a NEW date).")
|
|
77
116
|
.action(async (markerId, opts) => {
|
|
78
117
|
const wsSlug = program.opts().workspace;
|
|
118
|
+
const markerType = oneOf("--type", opts.type, MARKER_TYPES);
|
|
79
119
|
try {
|
|
80
120
|
const client = createClient(wsSlug);
|
|
81
121
|
const body = {};
|
|
@@ -85,8 +125,20 @@ export function registerMarkerCommands(program) {
|
|
|
85
125
|
body.color = opts.color;
|
|
86
126
|
if (opts.icon)
|
|
87
127
|
body.icon = opts.icon;
|
|
128
|
+
if (opts.description !== undefined)
|
|
129
|
+
body.description = opts.description === "" ? null : opts.description;
|
|
130
|
+
if (markerType)
|
|
131
|
+
body.marker_type = markerType;
|
|
132
|
+
if (opts.targetDate !== undefined) {
|
|
133
|
+
body.target_date = opts.targetDate === "none" ? null : isoDate("--target-date", opts.targetDate);
|
|
134
|
+
}
|
|
135
|
+
if (opts.boardLink !== undefined)
|
|
136
|
+
body.board_link_id = opts.boardLink === "none" ? null : opts.boardLink;
|
|
137
|
+
const completed = boolFlag("--completed", opts.completed);
|
|
138
|
+
if (completed !== undefined)
|
|
139
|
+
body.is_completed = completed;
|
|
88
140
|
if (Object.keys(body).length === 0) {
|
|
89
|
-
console.error("Nothing to update. Provide --name, --color, or --
|
|
141
|
+
console.error("Nothing to update. Provide --name, --color, --icon, --description, --type, --target-date, --board-link, or --completed");
|
|
90
142
|
process.exit(1);
|
|
91
143
|
}
|
|
92
144
|
const res = await client.patch(`/api/v1/board/markers/${markerId}`, body);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/commands/markers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/commands/markers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* opvs members — board member management
|
|
3
|
+
*
|
|
4
|
+
* ── Why this file was rewritten (ASP-85) ─────────────────────────────────────
|
|
5
|
+
* `members add` sent `{user_id, role}` and `members remove` called
|
|
6
|
+
* `/members/{userId}`. The route has always taken `{member_type, member_id}`
|
|
7
|
+
* (AgentBoard `AddBoardMemberRequest`) and deletes at
|
|
8
|
+
* `/members/{member_type}/{member_id}`, so BOTH commands failed on every call —
|
|
9
|
+
* a 422 and a 404 — for as long as they had existed.
|
|
10
|
+
*
|
|
11
|
+
* ── What a role does, and does not do ───────────────────────────────────────
|
|
12
|
+
* `member_role` is read in exactly ONE place: the gateway's
|
|
13
|
+
* `_guest_role_allows` (apps/api `board.py`), and only for a membership with
|
|
14
|
+
* `is_external = true`. A member of the board's own brand is never checked
|
|
15
|
+
* against it. So `--role` caps a GUEST and is inert for everyone else — which
|
|
16
|
+
* is why the help says so rather than calling it a permission.
|
|
17
|
+
*
|
|
18
|
+
* `is_external` has no flag on purpose (surface_parity_exclusions/cli_fields.yaml).
|
|
19
|
+
* Whether a user is a guest is a fact about the user's brand, which the
|
|
20
|
+
* `by-email` route looks up and this command cannot — so `members invite`
|
|
21
|
+
* is the door for a guest, and it decides guest-ness itself.
|
|
3
22
|
*/
|
|
4
23
|
import { Command } from "commander";
|
|
24
|
+
/** `AddBoardMemberRequest.member_role` pattern (agentboard `schemas/board.py`). */
|
|
25
|
+
export declare const MEMBER_ROLES: readonly ["viewer", "commenter", "editor"];
|
|
26
|
+
/**
|
|
27
|
+
* Resolve `--user` / `--agent` to the `(member_type, member_id)` pair the route
|
|
28
|
+
* takes. Exactly one is required: two would be two members in one request the
|
|
29
|
+
* route cannot express, and none is the 422 this command used to send.
|
|
30
|
+
*/
|
|
31
|
+
export declare function memberTarget(opts: {
|
|
32
|
+
user?: string;
|
|
33
|
+
agent?: string;
|
|
34
|
+
}): {
|
|
35
|
+
member_type: string;
|
|
36
|
+
member_id: string;
|
|
37
|
+
};
|
|
5
38
|
export declare function registerMemberCommands(program: Command): void;
|