@letterstory/cli 0.52.0 → 0.53.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/README.md +1 -0
- package/lib/cli.mjs +1 -1
- package/lib/commands/admin.mjs +12 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -358,6 +358,7 @@ letterstory admin tuning candidate <service-kernel-id> --file hazel.json --note
|
|
|
358
358
|
letterstory admin tuning compare --title "Echo vs live" --candidates Hazel:21,Aspen:20
|
|
359
359
|
letterstory admin tuning comparison <id> # per-measure verdicts (better / worse / within noise / refused)
|
|
360
360
|
letterstory admin tuning picks <id> # the blind queue; then: admin tuning pick <id> --cell <key> --pick left|right|tie
|
|
361
|
+
letterstory admin tuning reading-list <id> --n 10 # your next blind pairs as links (Text A / Text B), to read off the screen; pick in the console
|
|
361
362
|
letterstory admin tuning promote <experiment-id> --versions <service-kernel-id>:21 # from a concluded "ship" decision
|
|
362
363
|
letterstory admin experiments list --q colons # what we've tried
|
|
363
364
|
letterstory admin experiments new "We use too many colons" --as "claude-code"
|
package/lib/cli.mjs
CHANGED
|
@@ -54,7 +54,7 @@ import {
|
|
|
54
54
|
} from "./commands.mjs";
|
|
55
55
|
|
|
56
56
|
// Keep in sync with cli/package.json.
|
|
57
|
-
export const VERSION = "0.
|
|
57
|
+
export const VERSION = "0.53.0";
|
|
58
58
|
|
|
59
59
|
// Flags that never take a value. Listing them explicitly means `deploy get --json <id>`
|
|
60
60
|
// can't accidentally swallow the id as --json's value.
|
package/lib/commands/admin.mjs
CHANGED
|
@@ -427,6 +427,7 @@ async function cmdAdminTuningContext(ctx) {
|
|
|
427
427
|
* admin tuning comparisons | comparison <id> list / read one (per-measure verdicts)
|
|
428
428
|
* admin tuning picks <comparison-id> the blind queue (next pairs)
|
|
429
429
|
* admin tuning pick <comparison-id> --cell <key> --pick left|right|tie record a blind pick
|
|
430
|
+
* admin tuning reading-list <comparison-id> [--n 10] your next blind pairs as links, to read off the screen
|
|
430
431
|
* admin tuning promote <experiment-id> --versions <service-kernel-id>:<version>,… promote from a "ship" decision
|
|
431
432
|
*/
|
|
432
433
|
async function cmdAdminTuning(ctx) {
|
|
@@ -523,6 +524,16 @@ async function cmdAdminTuning(ctx) {
|
|
|
523
524
|
await staffRequest(ctx, "POST", `${T}/comparisons/${id}/picks`, { cell_key: cell, outcome: pick })
|
|
524
525
|
);
|
|
525
526
|
}
|
|
527
|
+
case "reading-list": {
|
|
528
|
+
if (!id) throw new CliError("Usage: admin tuning reading-list <comparison-id> [--n 10]");
|
|
529
|
+
const n = flagStr(flags.n);
|
|
530
|
+
const r = await staffRequest(
|
|
531
|
+
ctx,
|
|
532
|
+
"GET",
|
|
533
|
+
`${T}/comparisons/${id}/reading-list${n ? `?${new URLSearchParams({ n })}` : ""}`
|
|
534
|
+
);
|
|
535
|
+
return json ? printResult(io, flags, r) : io.log(r.text);
|
|
536
|
+
}
|
|
526
537
|
case "promote": {
|
|
527
538
|
const list = flagList(flags.versions);
|
|
528
539
|
if (!id || !list?.length)
|
|
@@ -546,7 +557,7 @@ async function cmdAdminTuning(ctx) {
|
|
|
546
557
|
}
|
|
547
558
|
default:
|
|
548
559
|
throw new CliError(
|
|
549
|
-
"Usage: admin tuning kernels|kernel|candidate|compare|comparisons|comparison|picks|pick|promote (see --help)"
|
|
560
|
+
"Usage: admin tuning kernels|kernel|candidate|compare|comparisons|comparison|picks|pick|reading-list|promote (see --help)"
|
|
550
561
|
);
|
|
551
562
|
}
|
|
552
563
|
}
|