@12ui/design 0.2.23 → 0.2.25
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 +52 -32
- package/SKILL.md +42 -0
- package/dist/artifact-materializer.d.ts +1 -1
- package/dist/artifact-materializer.d.ts.map +1 -1
- package/dist/artifact-materializer.js.map +1 -1
- package/dist/branch-client.d.ts.map +1 -1
- package/dist/branch-client.js +2 -1
- package/dist/branch-client.js.map +1 -1
- package/dist/branch-dispatch-loop.d.ts.map +1 -1
- package/dist/branch-dispatch-loop.js +5 -0
- package/dist/branch-dispatch-loop.js.map +1 -1
- package/dist/branch-status.d.ts.map +1 -1
- package/dist/branch-status.js +3 -1
- package/dist/branch-status.js.map +1 -1
- package/dist/branch-winner.d.ts.map +1 -1
- package/dist/branch-winner.js +5 -2
- package/dist/branch-winner.js.map +1 -1
- package/dist/cli-auth-command.d.ts.map +1 -1
- package/dist/cli-auth-command.js +3 -2
- package/dist/cli-auth-command.js.map +1 -1
- package/dist/cli-branch-command.d.ts.map +1 -1
- package/dist/cli-branch-command.js +3 -2
- package/dist/cli-branch-command.js.map +1 -1
- package/dist/cli-capabilities.d.ts +20 -0
- package/dist/cli-capabilities.d.ts.map +1 -1
- package/dist/cli-capabilities.js +24 -0
- package/dist/cli-capabilities.js.map +1 -1
- package/dist/cli-convert-command.d.ts +27 -0
- package/dist/cli-convert-command.d.ts.map +1 -1
- package/dist/cli-convert-command.js +59 -0
- package/dist/cli-convert-command.js.map +1 -1
- package/dist/cli-corpus-evidence.d.ts.map +1 -1
- package/dist/cli-corpus-evidence.js +7 -1
- package/dist/cli-corpus-evidence.js.map +1 -1
- package/dist/cli-corpus-reference-downloads.js.map +1 -1
- package/dist/cli-corpus-types.d.ts +2 -1
- package/dist/cli-corpus-types.d.ts.map +1 -1
- package/dist/cli-create-command.d.ts +2 -2
- package/dist/cli-create-command.d.ts.map +1 -1
- package/dist/cli-create-command.js +5 -4
- package/dist/cli-create-command.js.map +1 -1
- package/dist/cli-export-command.d.ts.map +1 -1
- package/dist/cli-export-command.js +4 -1
- package/dist/cli-export-command.js.map +1 -1
- package/dist/cli-next-command.d.ts +11 -0
- package/dist/cli-next-command.d.ts.map +1 -1
- package/dist/cli-next-command.js +142 -12
- package/dist/cli-next-command.js.map +1 -1
- package/dist/cli-output-paths.d.ts +1 -0
- package/dist/cli-output-paths.d.ts.map +1 -1
- package/dist/cli-output-paths.js +6 -2
- package/dist/cli-output-paths.js.map +1 -1
- package/dist/cli-persistence.d.ts.map +1 -1
- package/dist/cli-persistence.js +2 -8
- package/dist/cli-persistence.js.map +1 -1
- package/dist/cli-progress.d.ts +15 -0
- package/dist/cli-progress.d.ts.map +1 -1
- package/dist/cli-progress.js +7 -1
- package/dist/cli-progress.js.map +1 -1
- package/dist/cli-select-command.d.ts.map +1 -1
- package/dist/cli-select-command.js +3 -1
- package/dist/cli-select-command.js.map +1 -1
- package/dist/cli-usage.d.ts +0 -24
- package/dist/cli-usage.d.ts.map +1 -1
- package/dist/cli-usage.js +29 -7
- package/dist/cli-usage.js.map +1 -1
- package/dist/cli-version.d.ts.map +1 -1
- package/dist/cli-version.js +2 -5
- package/dist/cli-version.js.map +1 -1
- package/dist/client-version.d.ts +43 -0
- package/dist/client-version.d.ts.map +1 -0
- package/dist/client-version.js +60 -0
- package/dist/client-version.js.map +1 -0
- package/dist/concept-input.d.ts +26 -1
- package/dist/concept-input.d.ts.map +1 -1
- package/dist/concept-input.js +28 -1
- package/dist/concept-input.js.map +1 -1
- package/dist/conversion-client.d.ts.map +1 -1
- package/dist/conversion-client.js +2 -1
- package/dist/conversion-client.js.map +1 -1
- package/dist/corpus-client.d.ts +42 -1
- package/dist/corpus-client.d.ts.map +1 -1
- package/dist/corpus-client.js +17 -0
- package/dist/corpus-client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy-skill-catalog.d.ts +2 -2
- package/dist/legacy-skill-catalog.d.ts.map +1 -1
- package/dist/legacy-skill-catalog.js +51 -4
- package/dist/legacy-skill-catalog.js.map +1 -1
- package/dist/mcp-convert.d.ts +4 -1
- package/dist/mcp-convert.d.ts.map +1 -1
- package/dist/mcp-convert.js.map +1 -1
- package/dist/mcp-tool-definitions.d.ts +3 -0
- package/dist/mcp-tool-definitions.d.ts.map +1 -0
- package/dist/mcp-tool-definitions.js +127 -0
- package/dist/mcp-tool-definitions.js.map +1 -0
- package/dist/mcp-tool-handler.d.ts +24 -0
- package/dist/mcp-tool-handler.d.ts.map +1 -0
- package/dist/mcp-tool-handler.js +118 -0
- package/dist/mcp-tool-handler.js.map +1 -0
- package/dist/next-target.d.ts +10 -0
- package/dist/next-target.d.ts.map +1 -1
- package/dist/next-target.js +27 -4
- package/dist/next-target.js.map +1 -1
- package/dist/package-client.d.ts.map +1 -1
- package/dist/package-client.js +2 -1
- package/dist/package-client.js.map +1 -1
- package/dist/run-journal-commands.d.ts.map +1 -1
- package/dist/run-journal-commands.js +13 -4
- package/dist/run-journal-commands.js.map +1 -1
- package/dist/run-journal-in-flight.d.ts +74 -0
- package/dist/run-journal-in-flight.d.ts.map +1 -0
- package/dist/run-journal-in-flight.js +0 -0
- package/dist/run-journal-in-flight.js.map +1 -0
- package/dist/run-journal.d.ts +67 -4
- package/dist/run-journal.d.ts.map +1 -1
- package/dist/run-journal.js +104 -27
- package/dist/run-journal.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +7 -95
- package/dist/server.js.map +1 -1
- package/dist/skill-installer.d.ts +6 -1
- package/dist/skill-installer.d.ts.map +1 -1
- package/dist/skill-installer.js +6 -23
- package/dist/skill-installer.js.map +1 -1
- package/open-design.json +186 -0
- package/package.json +4 -2
- package/skills/design/SKILL.md +91 -40
- package/skills/design-branch/SKILL.md +0 -51
- package/skills/design-branch/agents/openai.yaml +0 -8
- package/skills/design-branch/assets/large-logo.svg +0 -7
- package/skills/design-branch/assets/small-400px.png +0 -0
- package/skills/design-convert/SKILL.md +0 -65
- package/skills/design-convert/agents/openai.yaml +0 -8
- package/skills/design-convert/assets/large-logo.svg +0 -3
- package/skills/design-convert/assets/small-400px.png +0 -0
- package/skills/design-draft/SKILL.md +0 -41
- package/skills/design-draft/agents/openai.yaml +0 -8
- package/skills/design-draft/assets/large-logo.svg +0 -3
- package/skills/design-draft/assets/small-400px.png +0 -0
- package/skills/design-search/SKILL.md +0 -42
- package/skills/design-search/agents/openai.yaml +0 -8
- package/skills/design-search/assets/large-logo.svg +0 -3
- package/skills/design-search/assets/small-400px.png +0 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { TwelveUiBranchClient } from './branch-client.js';
|
|
3
|
+
import { readBranchStatus } from './branch-status.js';
|
|
4
|
+
import { resolveBranchDirectory } from './cli-branch-command.js';
|
|
5
|
+
import { downloadCorpusInspiration, resumeCorpusInspiration } from './cli-corpus-run.js';
|
|
6
|
+
import { loadCorpusReferenceImage } from './cli-corpus-reference-image.js';
|
|
7
|
+
import { readDraftStatus } from './cli-draft-command.js';
|
|
8
|
+
import { TwelveUiConversionClient, } from './conversion-client.js';
|
|
9
|
+
import { runMcpConvert } from './mcp-convert.js';
|
|
10
|
+
import { INSPIRATION_MODES, TwelveUiCorpusClient, } from './corpus-client.js';
|
|
11
|
+
export const createMcpToolDependencies = (config) => ({
|
|
12
|
+
config,
|
|
13
|
+
conversionClient: new TwelveUiConversionClient(config),
|
|
14
|
+
corpusClient: new TwelveUiCorpusClient(config),
|
|
15
|
+
branchClient: new TwelveUiBranchClient(config),
|
|
16
|
+
});
|
|
17
|
+
const textResult = (value) => ({
|
|
18
|
+
content: [{ type: 'text', text: JSON.stringify(value, null, 2) }],
|
|
19
|
+
});
|
|
20
|
+
const inputRecord = (value) => (value && typeof value === 'object' && !Array.isArray(value)
|
|
21
|
+
? value
|
|
22
|
+
: {});
|
|
23
|
+
const requiredString = (input, name) => {
|
|
24
|
+
const value = typeof input[name] === 'string' ? input[name].trim() : '';
|
|
25
|
+
if (!value)
|
|
26
|
+
throw new Error(`${name} is required`);
|
|
27
|
+
return value;
|
|
28
|
+
};
|
|
29
|
+
const optionalString = (input, name) => {
|
|
30
|
+
if (input[name] === undefined)
|
|
31
|
+
return undefined;
|
|
32
|
+
if (typeof input[name] !== 'string' || !input[name].trim()) {
|
|
33
|
+
throw new Error(`${name} must be a non-empty string`);
|
|
34
|
+
}
|
|
35
|
+
return input[name].trim();
|
|
36
|
+
};
|
|
37
|
+
const handleCorpusInspire = async (input, dependencies) => {
|
|
38
|
+
const query = requiredString(input, 'query').replace(/\s+/gu, ' ');
|
|
39
|
+
const outDir = path.resolve(requiredString(input, 'outDir'));
|
|
40
|
+
const modeValue = input.mode ?? 'balanced';
|
|
41
|
+
if (!INSPIRATION_MODES.includes(modeValue)) {
|
|
42
|
+
throw new Error(`mode must be one of ${INSPIRATION_MODES.join(', ')}`);
|
|
43
|
+
}
|
|
44
|
+
const count = input.count ?? 4;
|
|
45
|
+
if (!Number.isSafeInteger(count) || count < 1 || count > 48) {
|
|
46
|
+
throw new Error('count must be an integer between 1 and 48');
|
|
47
|
+
}
|
|
48
|
+
const request = {
|
|
49
|
+
q: query,
|
|
50
|
+
mode: modeValue,
|
|
51
|
+
k: count,
|
|
52
|
+
};
|
|
53
|
+
const referenceImagePath = optionalString(input, 'referenceImagePath');
|
|
54
|
+
const referenceImage = referenceImagePath
|
|
55
|
+
? await loadCorpusReferenceImage(referenceImagePath)
|
|
56
|
+
: undefined;
|
|
57
|
+
const manifest = await downloadCorpusInspiration({
|
|
58
|
+
client: dependencies.corpusClient,
|
|
59
|
+
request,
|
|
60
|
+
outDir,
|
|
61
|
+
origin: dependencies.config.origin,
|
|
62
|
+
...(optionalString(input, 'idempotencyKey')
|
|
63
|
+
? { idempotencyKey: optionalString(input, 'idempotencyKey') }
|
|
64
|
+
: {}),
|
|
65
|
+
...(referenceImage ? { referenceImage } : {}),
|
|
66
|
+
});
|
|
67
|
+
return { setId: manifest.response.setId, outDir, manifest };
|
|
68
|
+
};
|
|
69
|
+
export const callMcpTool = async (name, argumentsValue, dependencies) => {
|
|
70
|
+
try {
|
|
71
|
+
const input = inputRecord(argumentsValue);
|
|
72
|
+
switch (name) {
|
|
73
|
+
case 'design.convert':
|
|
74
|
+
return textResult(await runMcpConvert(dependencies.conversionClient, input));
|
|
75
|
+
case 'design.convert.status':
|
|
76
|
+
return textResult(await dependencies.conversionClient.getConversion(requiredString(input, 'conversionId')));
|
|
77
|
+
case 'design.corpus.status':
|
|
78
|
+
return textResult(await dependencies.corpusClient.status());
|
|
79
|
+
case 'design.corpus.inspire':
|
|
80
|
+
return textResult(await handleCorpusInspire(input, dependencies));
|
|
81
|
+
case 'design.corpus.resume': {
|
|
82
|
+
const outDir = path.resolve(requiredString(input, 'outDir'));
|
|
83
|
+
const manifest = await resumeCorpusInspiration({
|
|
84
|
+
client: dependencies.corpusClient,
|
|
85
|
+
outDir,
|
|
86
|
+
origin: dependencies.config.origin,
|
|
87
|
+
});
|
|
88
|
+
return textResult({ setId: manifest.response.setId, outDir, manifest });
|
|
89
|
+
}
|
|
90
|
+
case 'design.draft.status':
|
|
91
|
+
return textResult(await readDraftStatus(requiredString(input, 'runDir')));
|
|
92
|
+
case 'design.branch.status': {
|
|
93
|
+
const refresh = input.refresh === undefined || input.refresh === true;
|
|
94
|
+
if (input.refresh !== undefined && typeof input.refresh !== 'boolean') {
|
|
95
|
+
throw new Error('refresh must be a boolean');
|
|
96
|
+
}
|
|
97
|
+
const directory = await resolveBranchDirectory({
|
|
98
|
+
runDirArgument: requiredString(input, 'outDir'),
|
|
99
|
+
});
|
|
100
|
+
return textResult(await readBranchStatus({
|
|
101
|
+
outDir: directory.branchDir,
|
|
102
|
+
...(refresh
|
|
103
|
+
? { refresh: async (runId) => (await dependencies.branchClient.getRun(runId)) }
|
|
104
|
+
: {}),
|
|
105
|
+
}));
|
|
106
|
+
}
|
|
107
|
+
default:
|
|
108
|
+
throw new Error(`Unknown tool: ${name}`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
return {
|
|
113
|
+
content: [{ type: 'text', text: error instanceof Error ? error.message : String(error) }],
|
|
114
|
+
isError: true,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
//# sourceMappingURL=mcp-tool-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tool-handler.js","sourceRoot":"","sources":["../src/mcp-tool-handler.ts"],"names":[],"mappings":"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"}
|
package/dist/next-target.d.ts
CHANGED
|
@@ -28,6 +28,16 @@ export type NextTarget = {
|
|
|
28
28
|
kind: 'conversion';
|
|
29
29
|
conversionId: string;
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* A directory whose own run journal is the record — which is every directory
|
|
33
|
+
* a `12ui convert` writes into. It is what makes a BLOCKING command readable:
|
|
34
|
+
* the convert heartbeats into `journal.jsonl` as it goes, so a second shell
|
|
35
|
+
* can ask this directory what is happening without waiting on the first.
|
|
36
|
+
*/
|
|
37
|
+
| {
|
|
38
|
+
kind: 'workspace';
|
|
39
|
+
directory: string;
|
|
40
|
+
}
|
|
31
41
|
/**
|
|
32
42
|
* A path that exists but holds no run record still carries `directory`: the
|
|
33
43
|
* caller named a durable place, and the refusal about it belongs in that
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-target.d.ts","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"next-target.d.ts","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;GAaG;AAEH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE;AAC9C;;;;;GAKG;GACD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AAC1C;;;;GAIG;GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAmC7E;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAAU,OAAO,MAAM,KAAG,OAAO,CAAC,UAAU,CAgCzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,UAAU,KAAG,MAAM,GAAG,SAajE,CAAC"}
|
package/dist/next-target.js
CHANGED
|
@@ -3,10 +3,24 @@ import path from 'node:path';
|
|
|
3
3
|
import { BRANCH_ATTEMPT_FILENAME, BRANCH_COMPLETION_FILENAME, } from './branch-run-record.js';
|
|
4
4
|
import { BRANCH_PROGRESS_FILENAME } from './branch-progress.js';
|
|
5
5
|
import { DRAFT_BRANCH_DIRECTORY, DRAFT_GENERATION_MANIFEST, DRAFT_RECORD_FILENAME, } from './draft-workspace.js';
|
|
6
|
+
import { RUN_JOURNAL_FILENAME } from './run-journal.js';
|
|
6
7
|
/** Hosted create/branch runs mint this shape, and nothing else does. */
|
|
7
8
|
const HOSTED_RUN_ID = /^crt-[a-f0-9]{40}$/u;
|
|
8
|
-
/**
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* A conversion id, in BOTH shapes the caller can be holding.
|
|
11
|
+
*
|
|
12
|
+
* MEASURED 2026-08-14: this used to be `/^cnv-/`, and the service mints plain
|
|
13
|
+
* UUIDs — every conversion id in every wave journal is one. So the branch that
|
|
14
|
+
* answers about a conversion was unreachable in production, and five of the
|
|
15
|
+
* wave's twenty-eight `12ui next` calls passed a real conversion id and got the
|
|
16
|
+
* generic "names no run this command can read", which talks about draft, branch
|
|
17
|
+
* and create runs and never mentions the conversion the caller was holding.
|
|
18
|
+
*
|
|
19
|
+
* The `cnv-` form is kept because the rehearsal stub mints it — which is also
|
|
20
|
+
* why no test caught this: the only lane that exercised the branch was the one
|
|
21
|
+
* minting the shape the guard recognized.
|
|
22
|
+
*/
|
|
23
|
+
const CONVERSION_ID = /^(?:cnv-[a-z0-9][a-z0-9-]*|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/iu;
|
|
10
24
|
const BRANCH_RECORDS = [
|
|
11
25
|
BRANCH_ATTEMPT_FILENAME,
|
|
12
26
|
BRANCH_COMPLETION_FILENAME,
|
|
@@ -26,10 +40,13 @@ export const resolveNextTarget = async (given) => {
|
|
|
26
40
|
const trimmed = given.trim();
|
|
27
41
|
if (HOSTED_RUN_ID.test(trimmed))
|
|
28
42
|
return { kind: 'create', runId: trimmed };
|
|
29
|
-
if (CONVERSION_ID.test(trimmed))
|
|
30
|
-
return { kind: 'conversion', conversionId: trimmed };
|
|
31
43
|
const resolved = path.resolve(trimmed);
|
|
32
44
|
const entry = await stat(resolved).catch(() => null);
|
|
45
|
+
// An id only names a conversion when it names nothing on disk. A path always
|
|
46
|
+
// wins: the caller who typed a directory meant the directory, whatever it is
|
|
47
|
+
// called.
|
|
48
|
+
if (!entry && CONVERSION_ID.test(trimmed))
|
|
49
|
+
return { kind: 'conversion', conversionId: trimmed };
|
|
33
50
|
if (entry?.isFile())
|
|
34
51
|
return { kind: 'image-batch', manifestPath: resolved };
|
|
35
52
|
if (entry?.isDirectory()) {
|
|
@@ -44,6 +61,11 @@ export const resolveNextTarget = async (given) => {
|
|
|
44
61
|
if (await exists(path.join(resolved, DRAFT_GENERATION_MANIFEST))) {
|
|
45
62
|
return { kind: 'image-batch', manifestPath: path.join(resolved, DRAFT_GENERATION_MANIFEST) };
|
|
46
63
|
}
|
|
64
|
+
// Last, because every other record is more specific: a directory a command
|
|
65
|
+
// wrote a journal into can still answer what that command is doing.
|
|
66
|
+
if (await exists(path.join(resolved, RUN_JOURNAL_FILENAME))) {
|
|
67
|
+
return { kind: 'workspace', directory: resolved };
|
|
68
|
+
}
|
|
47
69
|
}
|
|
48
70
|
return {
|
|
49
71
|
kind: 'unknown',
|
|
@@ -60,6 +82,7 @@ export const nextTargetWorkspace = (target) => {
|
|
|
60
82
|
switch (target.kind) {
|
|
61
83
|
case 'branch':
|
|
62
84
|
case 'draft':
|
|
85
|
+
case 'workspace':
|
|
63
86
|
return target.directory;
|
|
64
87
|
case 'image-batch':
|
|
65
88
|
return path.dirname(target.manifestPath);
|
package/dist/next-target.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-target.js","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"next-target.js","sourceRoot":"","sources":["../src/next-target.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-client.d.ts","sourceRoot":"","sources":["../src/package-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"package-client.d.ts","sourceRoot":"","sources":["../src/package-client.ts"],"names":[],"mappings":"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"}
|
package/dist/package-client.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import crypto from 'node:crypto';
|
|
2
|
+
import { declareClientVersion } from './client-version.js';
|
|
2
3
|
import { normalizeConversionOrigin } from './config.js';
|
|
3
4
|
export const CONVERSION_PACKAGE_MEDIA_TYPE = 'application/vnd.12ui.package+json;version=1';
|
|
4
5
|
export const CONVERSION_PACKAGE_SITE_MEDIA_TYPE = 'application/zip';
|
|
@@ -133,7 +134,7 @@ export class TwelveUiConversionPackageClient {
|
|
|
133
134
|
headers(values) {
|
|
134
135
|
const headers = new Headers(values);
|
|
135
136
|
headers.set('Authorization', `Bearer ${this.apiKey}`);
|
|
136
|
-
return headers;
|
|
137
|
+
return declareClientVersion(headers);
|
|
137
138
|
}
|
|
138
139
|
}
|
|
139
140
|
//# sourceMappingURL=package-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-client.js","sourceRoot":"","sources":["../src/package-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"package-client.js","sourceRoot":"","sources":["../src/package-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-journal-commands.d.ts","sourceRoot":"","sources":["../src/run-journal-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"run-journal-commands.d.ts","sourceRoot":"","sources":["../src/run-journal-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAI5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;;;;;;;;;;;;GAaG;AAEH,KAAK,iBAAiB,GAAG,CACvB,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,KAAK,EAAE,QAAQ,KACZ,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAEtD,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,wEAAwE;IACxE,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;IACxC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,KAAK,MAAM,GAAG,SAAS,CAAC;CAC7E,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;CACnE,GAAG,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,GAAG;IAAE,IAAI,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAkE7F;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAE5D,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAwL5D,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,SAAS,SAAS,MAAM,EAAE,EAC1B,OAAO,QAAQ,KACd,iBAAiB,GAAG,SAEtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAU,MAAM;IACzC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB,KAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAkBhC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import { booleanFlag, stringFlag } from './cli-arguments.js';
|
|
3
3
|
import { resolveBranchDirectory } from './cli-branch-command.js';
|
|
4
|
+
import { namesDirectory } from './cli-output-paths.js';
|
|
4
5
|
import { nextTargetWorkspace, resolveNextTarget } from './next-target.js';
|
|
5
6
|
/** `--wait` keeps the work in this shell; `--dry-run` starts nothing at all. */
|
|
6
7
|
const detachesByDefault = (flags) => (!booleanFlag(flags, 'wait') && !booleanFlag(flags, 'dry-run'));
|
|
@@ -18,11 +19,19 @@ const outFileDirectory = (_command, flags) => {
|
|
|
18
19
|
/**
|
|
19
20
|
* `12ui convert` writes beside its input unless `--out` says otherwise, so the
|
|
20
21
|
* workspace is that directory either way.
|
|
22
|
+
*
|
|
23
|
+
* `--out` may name a directory to write inside, and when it does the journal
|
|
24
|
+
* belongs in THAT directory rather than its parent: the caller who runs
|
|
25
|
+
* `12ui next build` while the convert blocks is naming the place the artifact
|
|
26
|
+
* is going. `namesDirectory` is the same decision `prepareOutputTarget` makes,
|
|
27
|
+
* asked once and answered in one module.
|
|
21
28
|
*/
|
|
22
|
-
const conversionOutputDirectory = (command, flags) => {
|
|
23
|
-
const
|
|
24
|
-
if (
|
|
25
|
-
|
|
29
|
+
const conversionOutputDirectory = async (command, flags) => {
|
|
30
|
+
const outValue = stringFlag(flags, 'out')?.trim();
|
|
31
|
+
if (outValue) {
|
|
32
|
+
const out = path.resolve(outValue);
|
|
33
|
+
return await namesDirectory(outValue).catch(() => false) ? out : path.dirname(out);
|
|
34
|
+
}
|
|
26
35
|
const input = resolved(command[1]);
|
|
27
36
|
return input ? path.dirname(input) : undefined;
|
|
28
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-journal-commands.js","sourceRoot":"","sources":["../src/run-journal-commands.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAiB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AA6C1E,gFAAgF;AAChF,MAAM,iBAAiB,GAAG,CAAC,KAAe,EAAW,EAAE,CAAC,CACtD,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAC9D,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAAyB,EAAsB,EAAE,CAAC,CAClE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CACvD,CAAC;AAEF,MAAM,MAAM,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;AAE9F,uEAAuE;AACvE,MAAM,iBAAiB,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;IAC/D,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IACzD,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;IAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7C,CAAC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"run-journal-commands.js","sourceRoot":"","sources":["../src/run-journal-commands.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAiB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AA6C1E,gFAAgF;AAChF,MAAM,iBAAiB,GAAG,CAAC,KAAe,EAAW,EAAE,CAAC,CACtD,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAC9D,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAAyB,EAAsB,EAAE,CAAC,CAClE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CACvD,CAAC;AAEF,MAAM,MAAM,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;AAE9F,uEAAuE;AACvE,MAAM,iBAAiB,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;IAC/D,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IACzD,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;IAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,yBAAyB,GAAsB,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;IAC5E,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IAClD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC,CAAC;AAEF,gFAAgF;AAChF,MAAM,aAAa,GAAsB,KAAK,EAAE,OAAO,EAAE,EAAE;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,OAAO,mBAAmB,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,eAAe,GAAsB,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;IAClE,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;IACvD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC;QAC7C,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC,CAAC;IACH,OAAO,SAAS,CAAC,SAAS,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,EAAE,GAAG,CAAC,GAAG,MAAgB,EAAE,EAAE,CAAC,CAAC,OAA0B,EAAW,EAAE,CAAC,CAC3E,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CACzD,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAiC;IAChE;QACE,GAAG,EAAE,MAAM;QACX,OAAO,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;QACxD,IAAI,EAAE,+CAA+C;KACtD;IACD;QACE,GAAG,EAAE,SAAS;QACd,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS;QACtF,IAAI,EAAE,iDAAiD;KACxD;IACD;QACE,GAAG,EAAE,OAAO;QACZ,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,mEAAmE;cACrE,4CAA4C;KACjD;IACD;QACE,GAAG,EAAE,MAAM;QACX,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,iEAAiE;KACxE;IACD;QACE,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC;QAClB,IAAI,EAAE,wDAAwD;KAC/D;IACD;QACE,GAAG,EAAE,gBAAgB;QACrB,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;QAChC,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,MAAM;KAClB;IACD;QACE,GAAG,EAAE,eAAe;QACpB,0EAA0E;QAC1E,mEAAmE;QACnE,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC/B,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,MAAM;KAClB;IACD;QACE,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,uEAAuE;KAC9E;IACD;QACE,GAAG,EAAE,sBAAsB;QAC3B,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACtC,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,iBAAiB;KAC5B;IACD;QACE,GAAG,EAAE,gBAAgB;QACrB,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;QAChC,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,gBAAgB;KAC5B;IACD;QACE,GAAG,EAAE,OAAO;QACZ,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,sEAAsE;KAC7E;IACD;QACE,GAAG,EAAE,OAAO;QACZ,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,IAAI;QACV,oEAAoE;QACpE,iBAAiB,EAAE,IAAI;QACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;QAChD,sEAAsE;QACtE,uEAAuE;QACvE,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS;QAC1B,aAAa,EAAE,IAAI;KACpB;IACD;QACE,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,KAAK;QACX,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KAC7C;IACD;QACE,GAAG,EAAE,gBAAgB;QACrB,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;QAChC,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,iBAAiB;KAC5B;IACD;QACE,GAAG,EAAE,eAAe;QACpB,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC/B,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,iBAAiB;KAC5B;IACD;QACE,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,oFAAoF;cACtF,uBAAuB;KAC5B;IACD;QACE,0EAA0E;QAC1E,uDAAuD;QACvD,GAAG,EAAE,MAAM;QACX,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,KAAK;QACX,iBAAiB,EAAE,KAAK;QACxB,SAAS,EAAE,aAAa;KACzB;IACD;QACE,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,MAAM;QACjB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS;KACpD;IACD;QACE,GAAG,EAAE,cAAc;QACnB,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC;QAC3B,IAAI,EAAE,0DAA0D;KACjE;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;QACjC,IAAI,EAAE,KAAK;QACX,iBAAiB,EAAE,KAAK;QACxB,SAAS,EAAE,MAAM;QACjB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS;KACpD;IACD;QACE,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,sEAAsE;cACxE,2CAA2C;KAChD;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAC3B,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CACvF;QACD,IAAI,EAAE,gEAAgE;KACvE;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,OAAO,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;QACjC,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,MAAM;KAClB;IACD;QACE,GAAG,EAAE,SAAS;QACd,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC;QACtB,IAAI,EAAE,IAAI;QACV,8EAA8E;QAC9E,iBAAiB,EAAE,IAAI;QACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;QACjD,SAAS,EAAE,yBAAyB;KACrC;IACD;QACE,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,KAAK;QACX,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,gBAAgB;QAC3B,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS;KACpD;IACD;QACE,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC;QAClB,IAAI,EAAE,qEAAqE;cACvE,oEAAoE;cACpE,mEAAmE;cACnE,MAAM,uBAAuB,kBAAkB;KACpD;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,OAA0B,EAC1B,KAAe,EACgB,EAAE,CAAC,CAClC,oBAAoB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CACpE,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAIpC,EAAkC,EAAE;IACnC,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;SAC/E,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1B,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,OAAO;QACL,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK;QAC/C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What this workspace has in flight, read from its own journal — for free,
|
|
3
|
+
* while the command that owns it is still blocking.
|
|
4
|
+
*
|
|
5
|
+
* WHY IT EXISTS, stated from what was measured rather than from what was first
|
|
6
|
+
* assumed. A blocking convert's stderr is NOT trapped: it reaches its consumer
|
|
7
|
+
* as it is written, and an agent holding the pipe demonstrably reads it — two
|
|
8
|
+
* measured runs used the conversion id and named the pipeline stage while the
|
|
9
|
+
* command was still running. The gap was never visibility. It was that the
|
|
10
|
+
* knowledge had nowhere to go: the only handle the agent held was a conversion
|
|
11
|
+
* id, and every command that could act on one either blocked for minutes
|
|
12
|
+
* (`resume`) or refused (`next`, whose id guard never matched a production id).
|
|
13
|
+
* So eight runs re-issued the whole convert instead — a median of 30 s after
|
|
14
|
+
* the first, seven of them while that first record was still open right here.
|
|
15
|
+
*
|
|
16
|
+
* This module is the free, non-blocking answer to "is the thing I started still
|
|
17
|
+
* alive". It holds the whole reading in one place: which records are open,
|
|
18
|
+
* which are merely abandoned, and the one sentence that describes them — so
|
|
19
|
+
* `12ui next` and the notice `12ui convert` prints before dispatch say the same
|
|
20
|
+
* thing in the same words rather than in two.
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* How long an open record may go quiet before it stops counting as in flight.
|
|
24
|
+
*
|
|
25
|
+
* Six heartbeats. A live command writes one every 15 s, so a fresh record is
|
|
26
|
+
* never near this; a command that died mid-conversion stops answering and its
|
|
27
|
+
* record ages out rather than haunting the workspace forever.
|
|
28
|
+
*/
|
|
29
|
+
export declare const RUN_JOURNAL_IN_FLIGHT_STALE_MS = 90000;
|
|
30
|
+
export type InFlightRunJournalRecord = {
|
|
31
|
+
cmd: string;
|
|
32
|
+
pid: number;
|
|
33
|
+
/** The service-side identity, once the command has one to report. */
|
|
34
|
+
runId?: string;
|
|
35
|
+
/** Content identity of the input, where the command declared one. */
|
|
36
|
+
sourceSha256?: string;
|
|
37
|
+
/** The stage its last heartbeat reported. */
|
|
38
|
+
stage?: string;
|
|
39
|
+
/** Where it said it was going to write, before it started. */
|
|
40
|
+
writes: string[];
|
|
41
|
+
startedAt: string;
|
|
42
|
+
lastSeenAt: string;
|
|
43
|
+
elapsedSeconds: number;
|
|
44
|
+
typicalSeconds?: number;
|
|
45
|
+
detached: boolean;
|
|
46
|
+
paid: boolean;
|
|
47
|
+
/** Why this record counts as live: its own heartbeat, or a running process. */
|
|
48
|
+
liveness: 'heartbeat' | 'process';
|
|
49
|
+
};
|
|
50
|
+
export type ReadInFlightOptions = {
|
|
51
|
+
now?: number;
|
|
52
|
+
/** Injected in tests; production asks the operating system. */
|
|
53
|
+
isRunning?: (pid: number) => boolean;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Every record in this workspace that started and has not ended.
|
|
57
|
+
*
|
|
58
|
+
* Read in file order, like every other reader of this file: the dispatcher and
|
|
59
|
+
* its detached worker append from different processes and their wall clocks are
|
|
60
|
+
* not ordered.
|
|
61
|
+
*/
|
|
62
|
+
export declare const readInFlightRunJournal: (workspace: string, options?: ReadInFlightOptions) => Promise<InFlightRunJournalRecord[]>;
|
|
63
|
+
/**
|
|
64
|
+
* One sentence for a record that is still moving, in the words both callers
|
|
65
|
+
* use: what is running, how long it has been running against the quote the
|
|
66
|
+
* command itself opened with, and where its answer is going to land.
|
|
67
|
+
*
|
|
68
|
+
* The elapsed/typical pair is the whole point of quoting either. A bare elapsed
|
|
69
|
+
* time reads as a stall, and a typical the run has already passed reads as a
|
|
70
|
+
* broken promise — so past the quote this says so and states that the work is
|
|
71
|
+
* still going, which is the same rule `nextActionLine` follows.
|
|
72
|
+
*/
|
|
73
|
+
export declare const describeInFlightRecord: (record: InFlightRunJournalRecord) => string;
|
|
74
|
+
//# sourceMappingURL=run-journal-in-flight.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-journal-in-flight.d.ts","sourceRoot":"","sources":["../src/run-journal-in-flight.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,QAAS,CAAC;AAErD,MAAM,MAAM,wBAAwB,GAAG;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,+EAA+E;IAC/E,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAC;CACnC,CAAC;AA0BF,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACtC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GACjC,WAAW,MAAM,EACjB,UAAS,mBAAwB,KAChC,OAAO,CAAC,wBAAwB,EAAE,CA+CpC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,wBAAwB,KAAG,MAezE,CAAC"}
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-journal-in-flight.js","sourceRoot":"","sources":["../src/run-journal-in-flight.ts"],"names":[],"mappings":"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"}
|