@drip-apex/apex-cli 0.8.1 → 0.9.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 +15 -0
- package/dist/cli.js +10 -5
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -313,3 +313,18 @@ Create/get return `dashboard_url`; apply returns `dashboardUrl`. These links
|
|
|
313
313
|
switch the signed-in dashboard user's active shop before opening the experiment.
|
|
314
314
|
|
|
315
315
|
Filesystem apply caches uploaded asset URLs by byte SHA-256 in `.apex/experiment-filesystem.json`, so unchanged images reuse their URL across applies without rewriting authored files.
|
|
316
|
+
|
|
317
|
+
`--instructions` cannot be combined with `--out` (or its legacy alias `--output`); file exports always contain the full JSON contract.
|
|
318
|
+
|
|
319
|
+
Roadmap handoff JSON identifies itself as `apex.roadmap_handoff.v1`; backlog get/list
|
|
320
|
+
items identify themselves as `apex.backlog_item.v1`, both with `schema_version: 1`.
|
|
321
|
+
The handoff embeds the same closed item projection that backlog responses serve
|
|
322
|
+
alongside their existing raw fields. Published schemas and fixtures live in
|
|
323
|
+
[`docs/contracts/experiment-os`](../../docs/contracts/experiment-os/README.md).
|
|
324
|
+
Breaking changes require a new v2 contract; the backlog `version` is a separate
|
|
325
|
+
optimistic concurrency token.
|
|
326
|
+
|
|
327
|
+
| Key | Source |
|
|
328
|
+
| --- | --- |
|
|
329
|
+
| `approval` | Roadmap decision status (`proposed` without a decision), item stage, and decision's nullable `decided_at`. Top-level `status` remains the item lifecycle status. |
|
|
330
|
+
| `goals` | `apex_goal_id` is the linked experiment goal or null. |
|
package/dist/cli.js
CHANGED
|
@@ -7112,7 +7112,7 @@ var import_node_os3 = __toESM(require("node:os"));
|
|
|
7112
7112
|
// package.json
|
|
7113
7113
|
var package_default = {
|
|
7114
7114
|
name: "@drip-apex/apex-cli",
|
|
7115
|
-
version: "0.
|
|
7115
|
+
version: "0.9.0",
|
|
7116
7116
|
license: "MIT",
|
|
7117
7117
|
description: "Apex CLI for managing experiments, approved roadmap ideas, and draft workspaces.",
|
|
7118
7118
|
private: false,
|
|
@@ -12790,7 +12790,11 @@ More results: --cursor ${res.data.pagination.next_cursor}`));
|
|
|
12790
12790
|
}
|
|
12791
12791
|
);
|
|
12792
12792
|
});
|
|
12793
|
-
var handoff = new Command("handoff").description(
|
|
12793
|
+
var handoff = new Command("handoff").description(
|
|
12794
|
+
"Get apex.roadmap_handoff.v1 JSON: contract, schema_version, item, experiment, instructions, goals, mockups, acceptance_criteria, harness, scoring, source, metadata"
|
|
12795
|
+
).argument("<id>", "Roadmap/backlog item ID").option("--out <path>", "Write handoff JSON to a file").addOption(new Option("-o, --output <path>", "Legacy alias for --out").hideHelp()).addOption(
|
|
12796
|
+
new Option("--instructions", "Print only the build instructions").conflicts(["out", "output"])
|
|
12797
|
+
).action(async function action32(id, opts) {
|
|
12794
12798
|
if (opts.output !== void 0) {
|
|
12795
12799
|
process.stderr.write(
|
|
12796
12800
|
`Warning: --output is deprecated for apex roadmap handoff; use --out instead. --output will be removed in v${LEGACY_OUTPUT_REMOVAL_VERSION}.
|
|
@@ -12811,7 +12815,8 @@ var handoff = new Command("handoff").description("Get the full build brief for a
|
|
|
12811
12815
|
classifyStatus(res.status),
|
|
12812
12816
|
res.errorDetails
|
|
12813
12817
|
);
|
|
12814
|
-
const payload = res.data
|
|
12818
|
+
const payload = res.data;
|
|
12819
|
+
if (!payload) fail(this, "Missing roadmap handoff response");
|
|
12815
12820
|
const rendered = opts.instructions ? String(payload.instructions ?? "") : `${JSON.stringify(payload, null, 2)}
|
|
12816
12821
|
`;
|
|
12817
12822
|
const outputData = opts.instructions ? { roadmapItemId: id, instructions: String(payload.instructions ?? "") } : payload;
|
|
@@ -17011,7 +17016,7 @@ async function fieldLabels(command, item) {
|
|
|
17011
17016
|
(fields3.ok && fields3.data ? fields3.data.data : []).map((field) => [field.key, field.label])
|
|
17012
17017
|
);
|
|
17013
17018
|
}
|
|
17014
|
-
var list7 = new Command("list").alias("ls").description("List backlog").option("-n, --limit <n>", "Max results", "50").option("--cursor <cursor>", "Continue from cursor").option("--include-archived", "Include archived backlog items").action(async function(o) {
|
|
17019
|
+
var list7 = new Command("list").alias("ls").description("List backlog items identified as apex.backlog_item.v1").option("-n, --limit <n>", "Max results", "50").option("--cursor <cursor>", "Continue from cursor").option("--include-archived", "Include archived backlog items").action(async function(o) {
|
|
17015
17020
|
const r = await listInsights(
|
|
17016
17021
|
requireCredentials(),
|
|
17017
17022
|
kind2,
|
|
@@ -17035,7 +17040,7 @@ var list7 = new Command("list").alias("ls").description("List backlog").option("
|
|
|
17035
17040
|
)
|
|
17036
17041
|
);
|
|
17037
17042
|
});
|
|
17038
|
-
var get6 = new Command("get").description("Get a backlog item").argument("<id>", "backlog item ID").action(async function(id) {
|
|
17043
|
+
var get6 = new Command("get").description("Get a backlog item identified as apex.backlog_item.v1").argument("<id>", "backlog item ID").action(async function(id) {
|
|
17039
17044
|
const r = await getInsight(requireCredentials(), kind2, id);
|
|
17040
17045
|
if (!r.ok || !r.data)
|
|
17041
17046
|
fail(this, r.error ?? "Failed to get", classifyStatus(r.status), r.errorDetails);
|