spec-controller 0.1.74 → 0.1.76
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/THIRD-PARTY-LICENSES.txt +382 -0
- package/dist/cli.js +28999 -3
- package/package.json +6 -3
- package/LICENSE +0 -21
- package/dist/cli-allocate/cli.d.ts +0 -2
- package/dist/cli-allocate/cli.d.ts.map +0 -1
- package/dist/cli-allocate/cli.js +0 -63
- package/dist/cli-allocate/cli.js.map +0 -1
- package/dist/cli-allocate/readHistory.d.ts +0 -14
- package/dist/cli-allocate/readHistory.d.ts.map +0 -1
- package/dist/cli-allocate/readHistory.js +0 -109
- package/dist/cli-allocate/readHistory.js.map +0 -1
- package/dist/cli-allocate/readParts.d.ts +0 -2
- package/dist/cli-allocate/readParts.d.ts.map +0 -1
- package/dist/cli-allocate/readParts.js +0 -26
- package/dist/cli-allocate/readParts.js.map +0 -1
- package/dist/cli-allocate/readTree.d.ts +0 -5
- package/dist/cli-allocate/readTree.d.ts.map +0 -1
- package/dist/cli-allocate/readTree.js +0 -74
- package/dist/cli-allocate/readTree.js.map +0 -1
- package/dist/cli-allocate/refStore.d.ts +0 -2
- package/dist/cli-allocate/refStore.d.ts.map +0 -1
- package/dist/cli-allocate/refStore.js +0 -35
- package/dist/cli-allocate/refStore.js.map +0 -1
- package/dist/cli-allocate/request.d.ts +0 -9
- package/dist/cli-allocate/request.d.ts.map +0 -1
- package/dist/cli-allocate/request.js +0 -23
- package/dist/cli-allocate/request.js.map +0 -1
- package/dist/cli-allocate/stderr.d.ts +0 -7
- package/dist/cli-allocate/stderr.d.ts.map +0 -1
- package/dist/cli-allocate/stderr.js +0 -32
- package/dist/cli-allocate/stderr.js.map +0 -1
- package/dist/cli-allocate/unreadable.d.ts +0 -19
- package/dist/cli-allocate/unreadable.d.ts.map +0 -1
- package/dist/cli-allocate/unreadable.js +0 -47
- package/dist/cli-allocate/unreadable.js.map +0 -1
- package/dist/cli-args.d.ts +0 -18
- package/dist/cli-args.d.ts.map +0 -1
- package/dist/cli-args.js +0 -196
- package/dist/cli-args.js.map +0 -1
- package/dist/cli-balance/cli.d.ts +0 -10
- package/dist/cli-balance/cli.d.ts.map +0 -1
- package/dist/cli-balance/cli.js +0 -163
- package/dist/cli-balance/cli.js.map +0 -1
- package/dist/cli-balance/corpusDir.d.ts +0 -3
- package/dist/cli-balance/corpusDir.d.ts.map +0 -1
- package/dist/cli-balance/corpusDir.js +0 -14
- package/dist/cli-balance/corpusDir.js.map +0 -1
- package/dist/cli-balance/emit/format.d.ts +0 -39
- package/dist/cli-balance/emit/format.d.ts.map +0 -1
- package/dist/cli-balance/emit/format.js +0 -59
- package/dist/cli-balance/emit/format.js.map +0 -1
- package/dist/cli-balance/emit/writer.d.ts +0 -13
- package/dist/cli-balance/emit/writer.d.ts.map +0 -1
- package/dist/cli-balance/emit/writer.js +0 -73
- package/dist/cli-balance/emit/writer.js.map +0 -1
- package/dist/cli-balance/evidenceInputs.d.ts +0 -136
- package/dist/cli-balance/evidenceInputs.d.ts.map +0 -1
- package/dist/cli-balance/evidenceInputs.js +0 -125
- package/dist/cli-balance/evidenceInputs.js.map +0 -1
- package/dist/cli-balance/exitStatus.d.ts +0 -4
- package/dist/cli-balance/exitStatus.d.ts.map +0 -1
- package/dist/cli-balance/exitStatus.js +0 -18
- package/dist/cli-balance/exitStatus.js.map +0 -1
- package/dist/cli-balance/inputsRead.d.ts +0 -11
- package/dist/cli-balance/inputsRead.d.ts.map +0 -1
- package/dist/cli-balance/inputsRead.js +0 -51
- package/dist/cli-balance/inputsRead.js.map +0 -1
- package/dist/cli-balance/reRender.d.ts +0 -8
- package/dist/cli-balance/reRender.d.ts.map +0 -1
- package/dist/cli-balance/reRender.js +0 -23
- package/dist/cli-balance/reRender.js.map +0 -1
- package/dist/cli-balance/unreadableInputs.d.ts +0 -52
- package/dist/cli-balance/unreadableInputs.d.ts.map +0 -1
- package/dist/cli-balance/unreadableInputs.js +0 -118
- package/dist/cli-balance/unreadableInputs.js.map +0 -1
- package/dist/cli-registry.d.ts +0 -36
- package/dist/cli-registry.d.ts.map +0 -1
- package/dist/cli-registry.js +0 -147
- package/dist/cli-registry.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/crashGuards.d.ts +0 -18
- package/dist/crashGuards.d.ts.map +0 -1
- package/dist/crashGuards.js +0 -81
- package/dist/crashGuards.js.map +0 -1
- package/dist/defaultCorpus.d.ts +0 -2
- package/dist/defaultCorpus.d.ts.map +0 -1
- package/dist/defaultCorpus.js +0 -2
- package/dist/defaultCorpus.js.map +0 -1
- package/dist/exitCode.d.ts +0 -21
- package/dist/exitCode.d.ts.map +0 -1
- package/dist/exitCode.js +0 -30
- package/dist/exitCode.js.map +0 -1
- package/dist/host.d.ts +0 -19
- package/dist/host.d.ts.map +0 -1
- package/dist/host.js +0 -119
- package/dist/host.js.map +0 -1
- package/dist/ingest/ciSourcePaths.d.ts +0 -8
- package/dist/ingest/ciSourcePaths.d.ts.map +0 -1
- package/dist/ingest/ciSourcePaths.js +0 -20
- package/dist/ingest/ciSourcePaths.js.map +0 -1
- package/dist/ingest/ingestQualityChecks.d.ts +0 -41
- package/dist/ingest/ingestQualityChecks.d.ts.map +0 -1
- package/dist/ingest/ingestQualityChecks.js +0 -105
- package/dist/ingest/ingestQualityChecks.js.map +0 -1
- package/dist/ingest/ingestScenarios.d.ts +0 -16
- package/dist/ingest/ingestScenarios.d.ts.map +0 -1
- package/dist/ingest/ingestScenarios.js +0 -61
- package/dist/ingest/ingestScenarios.js.map +0 -1
- package/dist/ingest/inputReading.d.ts +0 -12
- package/dist/ingest/inputReading.d.ts.map +0 -1
- package/dist/ingest/inputReading.js +0 -28
- package/dist/ingest/inputReading.js.map +0 -1
- package/dist/ingest/inputShapes.d.ts +0 -18
- package/dist/ingest/inputShapes.d.ts.map +0 -1
- package/dist/ingest/inputShapes.js +0 -135
- package/dist/ingest/inputShapes.js.map +0 -1
- package/dist/ingest/junitReportPaths.d.ts +0 -3
- package/dist/ingest/junitReportPaths.d.ts.map +0 -1
- package/dist/ingest/junitReportPaths.js +0 -16
- package/dist/ingest/junitReportPaths.js.map +0 -1
- package/dist/ingest/junitXml.d.ts +0 -4
- package/dist/ingest/junitXml.d.ts.map +0 -1
- package/dist/ingest/junitXml.js +0 -22
- package/dist/ingest/junitXml.js.map +0 -1
- package/dist/ingest/reportReading.d.ts +0 -20
- package/dist/ingest/reportReading.d.ts.map +0 -1
- package/dist/ingest/reportReading.js +0 -28
- package/dist/ingest/reportReading.js.map +0 -1
- package/dist/main.d.ts +0 -2
- package/dist/main.d.ts.map +0 -1
- package/dist/main.js +0 -107
- package/dist/main.js.map +0 -1
- package/dist/messages.d.ts +0 -242
- package/dist/messages.d.ts.map +0 -1
- package/dist/messages.js +0 -343
- package/dist/messages.js.map +0 -1
- package/dist/outputLocation.d.ts +0 -23
- package/dist/outputLocation.d.ts.map +0 -1
- package/dist/outputLocation.js +0 -139
- package/dist/outputLocation.js.map +0 -1
- package/dist/run-management/keptRun.d.ts +0 -55
- package/dist/run-management/keptRun.d.ts.map +0 -1
- package/dist/run-management/keptRun.js +0 -93
- package/dist/run-management/keptRun.js.map +0 -1
- package/dist/run-management/resolveRunInputs.d.ts +0 -17
- package/dist/run-management/resolveRunInputs.d.ts.map +0 -1
- package/dist/run-management/resolveRunInputs.js +0 -137
- package/dist/run-management/resolveRunInputs.js.map +0 -1
- package/dist/storedRun.d.ts +0 -6
- package/dist/storedRun.d.ts.map +0 -1
- package/dist/storedRun.js +0 -27
- package/dist/storedRun.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"unreadable.js","sourceRoot":"","sources":["../../src/cli-allocate/unreadable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAmB,MAAM,gBAAgB,CAAC;AAEhG,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAM7B;IACA;IANO,IAAI,GAAG,iBAAiB,CAAC;IAClC,OAAO,CAAS;IAEzB,YACE,IAAgB,EACP,IAAY,EACZ,MAAc;QAEvB,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1C,KAAK,CACH,IAAI,KAAK,EAAE;YACT,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC;YAC1D,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CACrE,CAAC;QARO,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QAQvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAG3B;IAFH,IAAI,GAAG,yBAAyB,CAAC;IAEnD,YAAqB,MAA8B;QACjD,KAAK,CACH,MAAM;aACH,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CACzB,YAAY,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAC7G;aACA,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;QAPiB,WAAM,GAAN,MAAM,CAAwB;IAQnD,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAAI,IAAgB,EAAE,IAAY,EAAE,IAAa;IAC3E,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,IAAgB,EAAE,IAAY,EAAE,GAAY;IACjE,MAAM,KAAK,GAAG,GAA4B,CAAC;IAC3C,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,MAAM,GAAG,CAAC;IACzE,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAkD;IAC5E,OAAO,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACnC,CAAC"}
|
package/dist/cli-args.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { CliRegistry, FlagSpec } from "./cli-registry.js";
|
|
2
|
-
export declare function asksForHelp(argv: readonly string[]): boolean;
|
|
3
|
-
export declare function parseArgs(argv: readonly string[]): Record<string, string>;
|
|
4
|
-
export type ValueFlagSpec = FlagSpec & {
|
|
5
|
-
arg: string;
|
|
6
|
-
};
|
|
7
|
-
export declare function valueFlagsOf(flags: readonly FlagSpec[]): Map<string, ValueFlagSpec>;
|
|
8
|
-
export declare function givenValue(next: string | undefined): string | undefined;
|
|
9
|
-
export declare function checkMissingValues(argv: readonly string[], registry: CliRegistry, command: string): string | null;
|
|
10
|
-
export declare function missingValueRefusal(given: string, flag: ValueFlagSpec, scope: string): string;
|
|
11
|
-
export declare function checkArgvShape(argv: readonly string[], registry: CliRegistry, command: string): string | null;
|
|
12
|
-
export declare function positionalArguments(argv: readonly string[], registry: CliRegistry, command: string): string[];
|
|
13
|
-
export declare function givenTwiceRefusal(given: string, scope: string): string;
|
|
14
|
-
export declare function isEqualsForm(token: string): boolean;
|
|
15
|
-
export declare function equalsFormRefusal(token: string, flags: ReadonlyMap<string, FlagSpec>, scope: string): string;
|
|
16
|
-
export declare function checkMisplacedHostModifiers(args: Record<string, string>, registry: CliRegistry, command: string): string | null;
|
|
17
|
-
export declare function checkUnknownFlags(args: Record<string, string>, registry: CliRegistry, command: string, toolVersion: string): string | null;
|
|
18
|
-
//# sourceMappingURL=cli-args.d.ts.map
|
package/dist/cli-args.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli-args.d.ts","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAe,QAAQ,EAAkB,MAAM,mBAAmB,CAAC;AAG5F,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAE5D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAgBzE;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAMvD,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAOnF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEvE;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CASf;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK7F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW7G;AAuBD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAS7G;AA2BD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtE;AAcD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQ5G;AAkCD,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAKf;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAaf"}
|
package/dist/cli-args.js
DELETED
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
import { APP_MESSAGES, AppMessage } from "./messages.js";
|
|
2
|
-
export function asksForHelp(argv) {
|
|
3
|
-
return argv.includes("--help") || argv.includes("-h");
|
|
4
|
-
}
|
|
5
|
-
export function parseArgs(argv) {
|
|
6
|
-
const args = {};
|
|
7
|
-
for (let i = 0; i < argv.length; i++) {
|
|
8
|
-
const a = argv[i];
|
|
9
|
-
if (a !== undefined && a.startsWith("--")) {
|
|
10
|
-
const key = a.slice(2);
|
|
11
|
-
const value = argv[i + 1];
|
|
12
|
-
if (value !== undefined && !value.startsWith("--")) {
|
|
13
|
-
args[key] = value;
|
|
14
|
-
i++;
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
args[key] = "true";
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
return args;
|
|
22
|
-
}
|
|
23
|
-
function takesValue(flag) {
|
|
24
|
-
return flag.arg !== undefined;
|
|
25
|
-
}
|
|
26
|
-
export function valueFlagsOf(flags) {
|
|
27
|
-
const valueFlags = new Map();
|
|
28
|
-
for (const flag of flags) {
|
|
29
|
-
if (!takesValue(flag))
|
|
30
|
-
continue;
|
|
31
|
-
for (const name of [flag.name, ...(flag.aliases ?? [])])
|
|
32
|
-
valueFlags.set(name, flag);
|
|
33
|
-
}
|
|
34
|
-
return valueFlags;
|
|
35
|
-
}
|
|
36
|
-
export function givenValue(next) {
|
|
37
|
-
return next === undefined || next === "" || next.startsWith("--") ? undefined : next;
|
|
38
|
-
}
|
|
39
|
-
export function checkMissingValues(argv, registry, command) {
|
|
40
|
-
const valueFlags = valueFlagsOf(commandEntry(registry, command).flags);
|
|
41
|
-
for (const [i, token] of argv.entries()) {
|
|
42
|
-
const flag = valueFlags.get(token);
|
|
43
|
-
if (flag !== undefined && givenValue(argv[i + 1]) === undefined) {
|
|
44
|
-
return missingValueRefusal(token, flag, `spec-controller ${command}`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
export function missingValueRefusal(given, flag, scope) {
|
|
50
|
-
return (`${APP_MESSAGES[AppMessage.MissingValue](given, scope, flag.arg)}\n` +
|
|
51
|
-
APP_MESSAGES[AppMessage.SeeFlagsAndValues](scope));
|
|
52
|
-
}
|
|
53
|
-
export function checkArgvShape(argv, registry, command) {
|
|
54
|
-
const scope = flagScopeOf(registry, command);
|
|
55
|
-
const seen = new Set();
|
|
56
|
-
const positionals = positionalsOf(registry, command);
|
|
57
|
-
const walk = { scope, seen, positionals, slotsLeft: positionals.length };
|
|
58
|
-
for (let i = 0; i < argv.length; i++) {
|
|
59
|
-
const read = readToken(argv, i, walk, command);
|
|
60
|
-
if (typeof read === "string")
|
|
61
|
-
return read;
|
|
62
|
-
i += read;
|
|
63
|
-
}
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
|
-
function positionalsOf(registry, command) {
|
|
67
|
-
return commandEntry(registry, command).positionals ?? [];
|
|
68
|
-
}
|
|
69
|
-
function commandEntry(registry, command) {
|
|
70
|
-
return registry.commands.find((c) => c.name === command) ?? { flags: [] };
|
|
71
|
-
}
|
|
72
|
-
function bareName(name) {
|
|
73
|
-
return name.replace(/^-+/, "");
|
|
74
|
-
}
|
|
75
|
-
export function positionalArguments(argv, registry, command) {
|
|
76
|
-
const scope = flagScopeOf(registry, command);
|
|
77
|
-
const words = [];
|
|
78
|
-
for (let i = 0; i < argv.length; i++) {
|
|
79
|
-
const token = argv[i] ?? "";
|
|
80
|
-
if (!isFlagShaped(token))
|
|
81
|
-
words.push(token);
|
|
82
|
-
else if (scope.get(token)?.arg !== undefined)
|
|
83
|
-
i++;
|
|
84
|
-
}
|
|
85
|
-
return words;
|
|
86
|
-
}
|
|
87
|
-
function readToken(argv, i, walk, command) {
|
|
88
|
-
const token = argv[i] ?? "";
|
|
89
|
-
const next = argv[i + 1];
|
|
90
|
-
if (isEqualsForm(token))
|
|
91
|
-
return equalsFormRefusal(token, walk.scope, `spec-controller ${command}`);
|
|
92
|
-
if (!isFlagShaped(token) && !walk.scope.has(token))
|
|
93
|
-
return positionalRead(token, walk, command);
|
|
94
|
-
const flag = walk.scope.get(token);
|
|
95
|
-
if (flag === undefined)
|
|
96
|
-
return valueTokensAfter(undefined, next);
|
|
97
|
-
return registeredFlagRefusal(flag, token, next, walk, command) ?? valueTokensAfter(flag, next);
|
|
98
|
-
}
|
|
99
|
-
function registeredFlagRefusal(flag, token, next, walk, command) {
|
|
100
|
-
if (walk.seen.has(flag) && flag.repeatable !== true)
|
|
101
|
-
return givenTwiceRefusal(token, `spec-controller ${command}`);
|
|
102
|
-
walk.seen.add(flag);
|
|
103
|
-
if (flag.arg === undefined && next !== undefined && !isFlagShaped(next) && !walk.scope.has(next) && walk.slotsLeft === 0) {
|
|
104
|
-
return takesNoValueRefusal(token, next, command);
|
|
105
|
-
}
|
|
106
|
-
return undefined;
|
|
107
|
-
}
|
|
108
|
-
export function givenTwiceRefusal(given, scope) {
|
|
109
|
-
return `${APP_MESSAGES[AppMessage.GivenTwice](given, scope)}\n${APP_MESSAGES[AppMessage.SeeFlags](scope)}`;
|
|
110
|
-
}
|
|
111
|
-
function flagScopeOf(registry, command) {
|
|
112
|
-
const scope = new Map();
|
|
113
|
-
for (const flag of commandEntry(registry, command).flags) {
|
|
114
|
-
for (const name of [flag.name, ...(flag.aliases ?? [])])
|
|
115
|
-
scope.set(name, flag);
|
|
116
|
-
}
|
|
117
|
-
return scope;
|
|
118
|
-
}
|
|
119
|
-
function isFlagShaped(token) {
|
|
120
|
-
return token.startsWith("--");
|
|
121
|
-
}
|
|
122
|
-
export function isEqualsForm(token) {
|
|
123
|
-
return isFlagShaped(token) && token.includes("=");
|
|
124
|
-
}
|
|
125
|
-
export function equalsFormRefusal(token, flags, scope) {
|
|
126
|
-
const at = token.indexOf("=");
|
|
127
|
-
const name = token.slice(0, at);
|
|
128
|
-
const value = token.slice(at + 1);
|
|
129
|
-
const flag = flags.get(name);
|
|
130
|
-
const spelling = flag !== undefined && flag.arg === undefined ? name : `${name} ${value === "" ? (flag?.arg ?? "<value>") : value}`;
|
|
131
|
-
return `${APP_MESSAGES[AppMessage.EqualsForm](token, scope, spelling)}\n${APP_MESSAGES[AppMessage.SeeFlags](scope)}`;
|
|
132
|
-
}
|
|
133
|
-
function valueTokensAfter(flag, next) {
|
|
134
|
-
if (next === undefined || isFlagShaped(next))
|
|
135
|
-
return 0;
|
|
136
|
-
return flag === undefined || flag.arg !== undefined ? 1 : 0;
|
|
137
|
-
}
|
|
138
|
-
function takesNoValueRefusal(flag, value, command) {
|
|
139
|
-
const scope = `spec-controller ${command}`;
|
|
140
|
-
return (`${APP_MESSAGES[AppMessage.TakesNoValue](flag, scope, value)}\n` +
|
|
141
|
-
APP_MESSAGES[AppMessage.SeeFlagsAndValues](scope));
|
|
142
|
-
}
|
|
143
|
-
function positionalRead(token, walk, command) {
|
|
144
|
-
if (walk.slotsLeft === 0) {
|
|
145
|
-
return walk.positionals.length === 0 ? notAFlagRefusal(token, command) : extraPositionalRefusal(token, walk, command);
|
|
146
|
-
}
|
|
147
|
-
walk.slotsLeft--;
|
|
148
|
-
return 0;
|
|
149
|
-
}
|
|
150
|
-
function extraPositionalRefusal(token, walk, command) {
|
|
151
|
-
const takes = walk.positionals.map((positional) => positional.name).join(" ");
|
|
152
|
-
const scope = `spec-controller ${command}`;
|
|
153
|
-
return `${APP_MESSAGES[AppMessage.ExtraArgument](token, scope, takes)}\n${APP_MESSAGES[AppMessage.SeeArguments](scope)}`;
|
|
154
|
-
}
|
|
155
|
-
function notAFlagRefusal(token, command) {
|
|
156
|
-
const scope = `spec-controller ${command}`;
|
|
157
|
-
return `${APP_MESSAGES[AppMessage.NotAFlag](token, scope)}\n${APP_MESSAGES[AppMessage.SeeFlags](scope)}`;
|
|
158
|
-
}
|
|
159
|
-
export function checkMisplacedHostModifiers(args, registry, command) {
|
|
160
|
-
const modifiers = new Set(registry.global.map((flag) => bareName(flag.name)));
|
|
161
|
-
const key = Object.keys(args).find((k) => modifiers.has(k));
|
|
162
|
-
if (key === undefined)
|
|
163
|
-
return null;
|
|
164
|
-
return `${APP_MESSAGES[AppMessage.MisplacedModifier](`--${key}`, command)}\n${APP_MESSAGES[AppMessage.SeeModifiers]()}`;
|
|
165
|
-
}
|
|
166
|
-
export function checkUnknownFlags(args, registry, command, toolVersion) {
|
|
167
|
-
const entry = commandEntry(registry, command);
|
|
168
|
-
const accepted = new Set();
|
|
169
|
-
for (const flag of entry.flags) {
|
|
170
|
-
accepted.add(bareName(flag.name));
|
|
171
|
-
for (const alias of flag.aliases ?? [])
|
|
172
|
-
accepted.add(bareName(alias));
|
|
173
|
-
}
|
|
174
|
-
for (const key of Object.keys(args)) {
|
|
175
|
-
if (!accepted.has(key)) {
|
|
176
|
-
return retiredFlagRefusal(entry, key, command, toolVersion) ?? unknownFlagRefusal(`--${key}`, command, toolVersion);
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
return null;
|
|
180
|
-
}
|
|
181
|
-
function unknownFlagRefusal(flag, command, toolVersion) {
|
|
182
|
-
const scope = `spec-controller ${command}`;
|
|
183
|
-
return (`${APP_MESSAGES[AppMessage.UnknownFlag](flag, scope, toolVersion, command)}\n` +
|
|
184
|
-
`${APP_MESSAGES[AppMessage.PinDrifted](command, flag)}\n` +
|
|
185
|
-
APP_MESSAGES[AppMessage.OtherwiseSeeFlags](scope));
|
|
186
|
-
}
|
|
187
|
-
function retiredFlagRefusal(entry, key, command, toolVersion) {
|
|
188
|
-
const retired = entry.retiredFlags?.find((flag) => bareName(flag.name) === key);
|
|
189
|
-
if (retired === undefined)
|
|
190
|
-
return undefined;
|
|
191
|
-
const scope = `spec-controller ${command}`;
|
|
192
|
-
return (`${APP_MESSAGES[AppMessage.RetiredFlag](retired.name, scope, retired.retiredIn, toolVersion)}\n` +
|
|
193
|
-
`${APP_MESSAGES[AppMessage.DoNotPinRetired]()} ${retired.replacement}\n` +
|
|
194
|
-
APP_MESSAGES[AppMessage.SeeFlags](scope));
|
|
195
|
-
}
|
|
196
|
-
//# sourceMappingURL=cli-args.js.map
|
package/dist/cli-args.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli-args.js","sourceRoot":"","sources":["../src/cli-args.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,UAAU,WAAW,CAAC,IAAuB;IACjD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAuB;IAC/C,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACvB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBAClB,CAAC,EAAE,CAAC;YACN,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,UAAU,CAAC,IAAc;IAChC,OAAO,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAA0B;IACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;IACpD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAChC,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YAAE,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAwB;IACjD,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,IAAuB,EACvB,QAAqB,EACrB,OAAe;IAEf,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,IAAI,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAChE,OAAO,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,IAAmB,EAAE,KAAa;IACnF,OAAO,CACL,GAAG,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;QACpE,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAClD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAuB,EAAE,QAAqB,EAAE,OAAe;IAC5F,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAY,CAAC;IACjC,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,IAAI,GAAS,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;IAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,CAAC,IAAI,IAAI,CAAC;IACZ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AASD,SAAS,aAAa,CAAC,QAAqB,EAAE,OAAe;IAC3D,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;AAC3D,CAAC;AAID,SAAS,YAAY,CAAC,QAAqB,EAAE,OAAe;IAC1D,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAC5E,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAuB,EAAE,QAAqB,EAAE,OAAe;IACjG,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACvC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,SAAS;YAAE,CAAC,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,IAAuB,EAAE,CAAS,EAAE,IAAU,EAAE,OAAe;IAChF,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,IAAI,YAAY,CAAC,KAAK,CAAC;QAAE,OAAO,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;IACnG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChG,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,OAAO,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAAc,EACd,KAAa,EACb,IAAwB,EACxB,IAAU,EACV,OAAe;IAEf,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;QAAE,OAAO,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;IACnH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QACzH,OAAO,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAAa;IAC5D,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAC7G,CAAC;AAED,SAAS,WAAW,CAAC,QAAqB,EAAE,OAAe;IACzD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;QACzD,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAAoC,EAAE,KAAa;IAClG,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,QAAQ,GACZ,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IACrH,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AACvH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA0B,EAAE,IAAwB;IAC5E,IAAI,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IACvD,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,KAAa,EAAE,OAAe;IACvE,MAAM,KAAK,GAAG,mBAAmB,OAAO,EAAE,CAAC;IAC3C,OAAO,CACL,GAAG,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI;QAChE,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAClD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,IAAU,EAAE,OAAe;IAChE,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACxH,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACjB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa,EAAE,IAAU,EAAE,OAAe;IACxE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAG,mBAAmB,OAAO,EAAE,CAAC;IAC3C,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAC3H,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,OAAe;IACrD,MAAM,KAAK,GAAG,mBAAmB,OAAO,EAAE,CAAC;IAC3C,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAC3G,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,IAA4B,EAC5B,QAAqB,EACrB,OAAe;IAEf,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,KAAK,GAAG,EAAE,EAAE,OAAO,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;AAC1H,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,IAA4B,EAC5B,QAAqB,EACrB,OAAe,EACf,WAAmB;IAEnB,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE;YAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,kBAAkB,CAAC,KAAK,GAAG,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QACtH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,OAAe,EAAE,WAAmB;IAC5E,MAAM,KAAK,GAAG,mBAAmB,OAAO,EAAE,CAAC;IAC3C,OAAO,CACL,GAAG,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI;QAC9E,GAAG,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI;QACzD,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAClD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAmB,EACnB,GAAW,EACX,OAAe,EACf,WAAmB;IAEnB,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IAChF,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5C,MAAM,KAAK,GAAG,mBAAmB,OAAO,EAAE,CAAC;IAC3C,OAAO,CACL,GAAG,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI;QAChG,GAAG,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,IAAI,OAAO,CAAC,WAAW,IAAI;QACxE,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CACzC,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { type InputPaths } from "./evidenceInputs.js";
|
|
2
|
-
import { type ReportsReading } from "./unreadableInputs.js";
|
|
3
|
-
import type { RunContext } from "@3f-consulting/spec-controller-core";
|
|
4
|
-
export declare function checkLegacyJson(args: Record<string, string>): string | null;
|
|
5
|
-
export declare function sourceTarget(args: Record<string, string>): string;
|
|
6
|
-
export declare function checkInputsExist(args: Record<string, string>, exists: (path: string) => boolean): string | null;
|
|
7
|
-
export declare function checkInputsParse(reports: ReportsReading): string | null;
|
|
8
|
-
export declare function runBalance(argv: string[], ownRunDir?: string): boolean;
|
|
9
|
-
export declare function runContextOf(args: Record<string, string>, inputs: InputPaths, runStart: Date, root: string): RunContext;
|
|
10
|
-
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli-balance/cli.ts"],"names":[],"mappings":"AASA,OAAO,EAA8C,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAQlG,OAAO,EAWL,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAqB/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAQtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,IAAI,CAK3E;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAEjE;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAChC,MAAM,GAAG,IAAI,CAQf;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAOvE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAEtE;AAgHD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,IAAI,EACd,IAAI,EAAE,MAAM,GACX,UAAU,CAcZ"}
|
package/dist/cli-balance/cli.js
DELETED
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
import { existsSync } from "node:fs";
|
|
2
|
-
import { dirname } from "node:path";
|
|
3
|
-
import { runReconcile, readCorpus, readWorkflows, featureNamesOf, } from "../ingest/ingestQualityChecks.js";
|
|
4
|
-
import { EVIDENCE_INPUTS, inputPathsOf, runInputsOf } from "./evidenceInputs.js";
|
|
5
|
-
import { planOutput } from "./emit/format.js";
|
|
6
|
-
import { writeOutputs } from "./emit/writer.js";
|
|
7
|
-
import { namesStdout, refuse, settlingRefusal, stdoutIdentity } from "../outputLocation.js";
|
|
8
|
-
import { identifiedInputs, inputsReadBy, NODE_INPUT_READER } from "./inputsRead.js";
|
|
9
|
-
import { DEFAULT_FEATURES_DIR } from "../defaultCorpus.js";
|
|
10
|
-
import { corpusDirOf } from "./corpusDir.js";
|
|
11
|
-
import { checkReRenderFlags } from "./reRender.js";
|
|
12
|
-
import { checkInputPaths, checkWorkflowsParse, checkInputShapes, corpusDirRefusal, checkSavedReconciliation, jsonInputsOf, readReports, reportRefusal, reRenderOrRefusal, savedReportRefusal, } from "./unreadableInputs.js";
|
|
13
|
-
import { readDocument } from "../ingest/reportReading.js";
|
|
14
|
-
import { exitCodeOf } from "./exitStatus.js";
|
|
15
|
-
import { endRunOn, USAGE_REFUSAL } from "../exitCode.js";
|
|
16
|
-
import { corpusCountsOfFeatures, runVerdict, } from "@3f-consulting/spec-controller-core";
|
|
17
|
-
import { resolveSourceSha, resolveTargetOrigin, resolveTargetRoot, resolveToolIdentity } from "../run-management/resolveRunInputs.js";
|
|
18
|
-
import { earlierStoredRunDirOf } from "../run-management/keptRun.js";
|
|
19
|
-
import { balanceCommand, cliRegistry, renderCommandHelp } from "../cli-registry.js";
|
|
20
|
-
import { asksForHelp, parseArgs, checkArgvShape, checkUnknownFlags, checkMissingValues, checkMisplacedHostModifiers, } from "../cli-args.js";
|
|
21
|
-
import { APP_MESSAGES, AppMessage } from "../messages.js";
|
|
22
|
-
function collectFormatSpecs(argv) {
|
|
23
|
-
// checkMissingValues has already refused a --format given no value.
|
|
24
|
-
return argv.flatMap((token, i) => (token === "--format" ? [argv[i + 1]] : []));
|
|
25
|
-
}
|
|
26
|
-
export function checkLegacyJson(args) {
|
|
27
|
-
if (args["json"] !== undefined) {
|
|
28
|
-
return APP_MESSAGES[AppMessage.LegacyJsonRemoved]();
|
|
29
|
-
}
|
|
30
|
-
return null;
|
|
31
|
-
}
|
|
32
|
-
export function sourceTarget(args) {
|
|
33
|
-
return args["target"] ?? "unknown-target";
|
|
34
|
-
}
|
|
35
|
-
export function checkInputsExist(args, exists) {
|
|
36
|
-
for (const { flag } of EVIDENCE_INPUTS) {
|
|
37
|
-
const path = args[flag];
|
|
38
|
-
if (path !== undefined && !exists(path)) {
|
|
39
|
-
return APP_MESSAGES[AppMessage.InputPathMissing](`--${flag}`, path);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return null;
|
|
43
|
-
}
|
|
44
|
-
export function checkInputsParse(reports) {
|
|
45
|
-
for (const file of reports.files) {
|
|
46
|
-
const { reading } = file;
|
|
47
|
-
if (!file.flagged || file.report.format !== "json")
|
|
48
|
-
continue;
|
|
49
|
-
if (reading.kind === "read-fault" || reading.kind === "unparseable")
|
|
50
|
-
return reportRefusal({ ...file, reading });
|
|
51
|
-
}
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
export function runBalance(argv, ownRunDir) {
|
|
55
|
-
return settlingRefusal(() => balance(argv, ownRunDir), false);
|
|
56
|
-
}
|
|
57
|
-
function balance(argv, ownRunDir) {
|
|
58
|
-
const helped = asksForHelp(argv);
|
|
59
|
-
if (helped)
|
|
60
|
-
process.stdout.write(renderCommandHelp(balanceCommand) + "\n");
|
|
61
|
-
return !helped && reconcile(argv, ownRunDir);
|
|
62
|
-
}
|
|
63
|
-
function reconcile(argv, ownRunDir) {
|
|
64
|
-
const runStart = new Date();
|
|
65
|
-
const args = parseArgs(argv);
|
|
66
|
-
const legacyJsonError = checkLegacyJson(args);
|
|
67
|
-
if (legacyJsonError)
|
|
68
|
-
refuse(legacyJsonError);
|
|
69
|
-
const misplacedModifierError = checkMisplacedHostModifiers(args, cliRegistry, "balance");
|
|
70
|
-
if (misplacedModifierError)
|
|
71
|
-
refuse(misplacedModifierError);
|
|
72
|
-
const shapeError = checkArgvShape(argv, cliRegistry, "balance");
|
|
73
|
-
if (shapeError)
|
|
74
|
-
refuse(shapeError);
|
|
75
|
-
const unknownFlagError = checkUnknownFlags(args, cliRegistry, "balance", resolveToolIdentity().toolVersion);
|
|
76
|
-
if (unknownFlagError) {
|
|
77
|
-
process.stderr.write(unknownFlagError + "\n");
|
|
78
|
-
endRunOn(USAGE_REFUSAL);
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
const missingValueError = checkMissingValues(argv, cliRegistry, "balance");
|
|
82
|
-
if (missingValueError)
|
|
83
|
-
refuse(missingValueError);
|
|
84
|
-
if (renderSavedReport(args))
|
|
85
|
-
return true;
|
|
86
|
-
const { corpus, workflows, reports } = refuseUnreadableInputs(args);
|
|
87
|
-
const inputs = inputPathsOf(args);
|
|
88
|
-
const root = resolveTargetRoot({ features: inputs.features });
|
|
89
|
-
const balance = runReconcile(reports, root, corpus, workflows);
|
|
90
|
-
const ctx = runContextOf(args, inputs, runStart, root);
|
|
91
|
-
const planResult = planOutput(collectFormatSpecs(argv), namesStdout);
|
|
92
|
-
if (!planResult.ok)
|
|
93
|
-
refuse(planResult.error);
|
|
94
|
-
const payloads = { balance, ctx, evidenceObligations: corpusCountsOfFeatures(corpus), featureNames: featureNamesOf(corpus) };
|
|
95
|
-
writeOutputs(planResult.plan, payloads, stdoutIdentity, identifiedInputs(inputsReadBy(args, NODE_INPUT_READER)), (path) => earlierStoredRunDirOf(path, ownRunDir));
|
|
96
|
-
const verdict = runVerdict({ ...balance, strict: ctx.strict === true });
|
|
97
|
-
endRunOn({ kind: "verdict", code: exitCodeOf(verdict, args["exit-zero"] !== undefined) });
|
|
98
|
-
return true;
|
|
99
|
-
}
|
|
100
|
-
function renderSavedReport(args) {
|
|
101
|
-
const ignoredFlagError = checkReRenderFlags(args);
|
|
102
|
-
if (ignoredFlagError)
|
|
103
|
-
refuse(ignoredFlagError);
|
|
104
|
-
const rehydratePath = args["render-from-json"];
|
|
105
|
-
if (rehydratePath === undefined)
|
|
106
|
-
return false;
|
|
107
|
-
const savedReading = readDocument(rehydratePath, "json");
|
|
108
|
-
if (savedReading.kind !== "parsed")
|
|
109
|
-
refuse(savedReportRefusal(rehydratePath, savedReading));
|
|
110
|
-
const notSavedError = checkSavedReconciliation(rehydratePath, savedReading.document);
|
|
111
|
-
if (notSavedError)
|
|
112
|
-
refuse(notSavedError);
|
|
113
|
-
const saved = reRenderOrRefusal(rehydratePath, savedReading.document, args["strict"] !== undefined);
|
|
114
|
-
if (typeof saved === "string")
|
|
115
|
-
refuse(saved);
|
|
116
|
-
process.stdout.write(saved.markdown + "\n");
|
|
117
|
-
endRunOn({ kind: "verdict", code: exitCodeOf(saved.verdict, args["exit-zero"] !== undefined) });
|
|
118
|
-
return true;
|
|
119
|
-
}
|
|
120
|
-
function refuseUnreadableInputs(args) {
|
|
121
|
-
const missingInputError = checkInputsExist(args, existsSync);
|
|
122
|
-
if (missingInputError)
|
|
123
|
-
refuse(missingInputError);
|
|
124
|
-
const reportsReading = readReports(jsonInputsOf(args, existsSync));
|
|
125
|
-
const unparseableInputError = checkInputsParse(reportsReading);
|
|
126
|
-
if (unparseableInputError)
|
|
127
|
-
refuse(unparseableInputError);
|
|
128
|
-
const corpusDir = corpusDirOf(args);
|
|
129
|
-
if (typeof corpusDir !== "string")
|
|
130
|
-
refuse(corpusDirRefusal(corpusDir));
|
|
131
|
-
const corpusReading = readCorpus(corpusDir);
|
|
132
|
-
const workflowReading = readWorkflows(args["ci"]);
|
|
133
|
-
if (corpusReading.kind === "read-fault")
|
|
134
|
-
refuse(checkInputPaths(args, corpusReading, workflowReading));
|
|
135
|
-
if (workflowReading.kind === "read-fault")
|
|
136
|
-
refuse(checkInputPaths(args, corpusReading, workflowReading));
|
|
137
|
-
if (workflowReading.kind === "unparseable")
|
|
138
|
-
refuse(checkWorkflowsParse(args, workflowReading));
|
|
139
|
-
if (reportsReading.kind === "faulty")
|
|
140
|
-
refuse(checkInputShapes(reportsReading));
|
|
141
|
-
if (corpusReading.kind === "unparseable") {
|
|
142
|
-
refuse(corpusReading.faults
|
|
143
|
-
.map(({ file, message }) => APP_MESSAGES[AppMessage.CorpusFileUnparseable](APP_MESSAGES[AppMessage.FlaggedCorpus]("--features"), file, message))
|
|
144
|
-
.join("\n"));
|
|
145
|
-
}
|
|
146
|
-
return { corpus: corpusReading.corpus, workflows: workflowReading.workflows, reports: reportsReading.reports };
|
|
147
|
-
}
|
|
148
|
-
export function runContextOf(args, inputs, runStart, root) {
|
|
149
|
-
const targetDir = args["features"] !== undefined ? dirname(args["features"]) : undefined;
|
|
150
|
-
const targetOrigin = args["target"] === undefined ? resolveTargetOrigin(targetDir) : null;
|
|
151
|
-
return {
|
|
152
|
-
target: sourceTarget(args),
|
|
153
|
-
...(targetOrigin !== null ? { targetOrigin } : {}),
|
|
154
|
-
inputs: runInputsOf(inputs),
|
|
155
|
-
corpus: args["features"] ?? DEFAULT_FEATURES_DIR,
|
|
156
|
-
runStart,
|
|
157
|
-
sourceSha: resolveSourceSha({ sourceSha: args["source-sha"], targetDir }),
|
|
158
|
-
root,
|
|
159
|
-
...resolveToolIdentity(),
|
|
160
|
-
strict: args["strict"] !== undefined,
|
|
161
|
-
};
|
|
162
|
-
}
|
|
163
|
-
//# sourceMappingURL=cli.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli-balance/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"corpusDir.d.ts","sourceRoot":"","sources":["../../src/cli-balance/corpusDir.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,cAAc,CAQjF"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
|
-
import { DEFAULT_FEATURES_DIR } from "../defaultCorpus.js";
|
|
3
|
-
export function corpusDirOf(args) {
|
|
4
|
-
const given = args["features"];
|
|
5
|
-
if (given !== undefined)
|
|
6
|
-
return given;
|
|
7
|
-
try {
|
|
8
|
-
return join(process.cwd(), DEFAULT_FEATURES_DIR);
|
|
9
|
-
}
|
|
10
|
-
catch (err) {
|
|
11
|
-
return { path: DEFAULT_FEATURES_DIR, reason: err instanceof Error ? err.message : String(err) };
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=corpusDir.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"corpusDir.js","sourceRoot":"","sources":["../../src/cli-balance/corpusDir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,MAAM,UAAU,WAAW,CAAC,IAA4B;IACtD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IAClG,CAAC;AACH,CAAC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
export type OutputFormat = "md" | "json";
|
|
2
|
-
type OutputDest = {
|
|
3
|
-
readonly kind: "stdout";
|
|
4
|
-
} | {
|
|
5
|
-
readonly kind: "file";
|
|
6
|
-
readonly path: string;
|
|
7
|
-
};
|
|
8
|
-
export interface PlannedOutput {
|
|
9
|
-
readonly fmt: OutputFormat;
|
|
10
|
-
readonly dest: OutputDest;
|
|
11
|
-
}
|
|
12
|
-
export interface OutputPlan {
|
|
13
|
-
readonly outputs: readonly PlannedOutput[];
|
|
14
|
-
}
|
|
15
|
-
export type PlanResult = {
|
|
16
|
-
readonly ok: true;
|
|
17
|
-
readonly plan: OutputPlan;
|
|
18
|
-
} | {
|
|
19
|
-
readonly ok: false;
|
|
20
|
-
readonly error: string;
|
|
21
|
-
};
|
|
22
|
-
export declare function planOutput(formatSpecs: readonly string[], namesStdout: (path: string) => boolean): PlanResult;
|
|
23
|
-
export interface FileIdentity {
|
|
24
|
-
readonly dev: bigint;
|
|
25
|
-
readonly ino: bigint;
|
|
26
|
-
}
|
|
27
|
-
export interface IdentifiedOutput {
|
|
28
|
-
readonly output: PlannedOutput;
|
|
29
|
-
readonly identity: FileIdentity | undefined;
|
|
30
|
-
}
|
|
31
|
-
export declare function sharedFileRefusal(outputs: readonly IdentifiedOutput[]): string | undefined;
|
|
32
|
-
export interface IdentifiedInput {
|
|
33
|
-
readonly subject: string;
|
|
34
|
-
readonly path: string;
|
|
35
|
-
readonly identity: FileIdentity | undefined;
|
|
36
|
-
}
|
|
37
|
-
export declare function inputOverwriteRefusal(outputs: readonly IdentifiedOutput[], inputs: readonly IdentifiedInput[]): string | undefined;
|
|
38
|
-
export {};
|
|
39
|
-
//# sourceMappingURL=format.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/cli-balance/emit/format.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,MAAM,CAAC;AAQzC,KAAK,UAAU,GACX;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;CAC5C;AAED,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAChD;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,wBAAgB,UAAU,CACxB,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACrC,UAAU,CA6BZ;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC;CAC7C;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,GAAG,SAAS,CAS1F;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC;CAC7C;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,EAAE,MAAM,EAAE,SAAS,eAAe,EAAE,GAAG,MAAM,GAAG,SAAS,CASlI"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { APP_MESSAGES, AppMessage } from "../../messages.js";
|
|
2
|
-
const SUPPORTED_FORMATS = ["md", "json"];
|
|
3
|
-
function isSupportedFormat(fmt) {
|
|
4
|
-
return SUPPORTED_FORMATS.includes(fmt);
|
|
5
|
-
}
|
|
6
|
-
export function planOutput(formatSpecs, namesStdout) {
|
|
7
|
-
const specs = formatSpecs.length === 0 ? ["md"] : formatSpecs;
|
|
8
|
-
const outputs = specs.map((spec) => {
|
|
9
|
-
const colon = spec.indexOf(":");
|
|
10
|
-
const fmt = (colon === -1 ? spec : spec.slice(0, colon));
|
|
11
|
-
const dest = colon === -1 ? { kind: "stdout" } : { kind: "file", path: spec.slice(colon + 1) };
|
|
12
|
-
return { fmt, dest };
|
|
13
|
-
});
|
|
14
|
-
const unknown = outputs.filter((o) => !isSupportedFormat(o.fmt));
|
|
15
|
-
if (unknown.length > 0) {
|
|
16
|
-
const bad = [...new Set(unknown.map((o) => o.fmt))].join(", ");
|
|
17
|
-
return {
|
|
18
|
-
ok: false,
|
|
19
|
-
error: APP_MESSAGES[AppMessage.UnknownFormat](bad, SUPPORTED_FORMATS.join(", ")),
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
const stdoutBound = outputs.filter((o) => o.dest.kind === "stdout" || namesStdout(o.dest.path));
|
|
23
|
-
if (stdoutBound.length > 1) {
|
|
24
|
-
const fmts = stdoutBound.map((o) => o.fmt).join(", ");
|
|
25
|
-
return {
|
|
26
|
-
ok: false,
|
|
27
|
-
error: APP_MESSAGES[AppMessage.MoreThanOneToStdout](fmts),
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
return { ok: true, plan: { outputs } };
|
|
31
|
-
}
|
|
32
|
-
export function sharedFileRefusal(outputs) {
|
|
33
|
-
const onFiles = outputs.filter((o) => o.identity !== undefined);
|
|
34
|
-
for (const [index, first] of onFiles.entries()) {
|
|
35
|
-
const second = onFiles.slice(index + 1).find((o) => sameFile(o.identity, first.identity));
|
|
36
|
-
if (second !== undefined) {
|
|
37
|
-
return APP_MESSAGES[AppMessage.OutputsShareFile](asGiven(first.output), asGiven(second.output));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
return undefined;
|
|
41
|
-
}
|
|
42
|
-
export function inputOverwriteRefusal(outputs, inputs) {
|
|
43
|
-
for (const { output, identity } of outputs) {
|
|
44
|
-
if (identity === undefined)
|
|
45
|
-
continue;
|
|
46
|
-
const read = inputs.find((input) => input.identity !== undefined && sameFile(input.identity, identity));
|
|
47
|
-
if (read !== undefined) {
|
|
48
|
-
return APP_MESSAGES[AppMessage.OutputOverwritesInput](asGiven(output), read.subject, read.path);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
return undefined;
|
|
52
|
-
}
|
|
53
|
-
function sameFile(a, b) {
|
|
54
|
-
return a.dev === b.dev && a.ino === b.ino;
|
|
55
|
-
}
|
|
56
|
-
function asGiven(output) {
|
|
57
|
-
return output.dest.kind === "stdout" ? APP_MESSAGES[AppMessage.FormatOnStandardOutput](output.fmt) : `${output.fmt}:${output.dest.path}`;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=format.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/cli-balance/emit/format.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { FeatureNames } from "@3f-consulting/spec-controller-core";
|
|
2
|
-
import { type FileIdentity, type IdentifiedInput, type OutputPlan } from "./format.js";
|
|
3
|
-
import type { RunContext } from "@3f-consulting/spec-controller-core";
|
|
4
|
-
import type { EvidenceObligations } from "@3f-consulting/spec-controller-core";
|
|
5
|
-
import type { EvidenceReconciliation } from "@3f-consulting/spec-controller-core";
|
|
6
|
-
export interface OutputPayloads {
|
|
7
|
-
readonly balance: EvidenceReconciliation;
|
|
8
|
-
readonly ctx: RunContext;
|
|
9
|
-
readonly evidenceObligations?: EvidenceObligations;
|
|
10
|
-
readonly featureNames?: FeatureNames;
|
|
11
|
-
}
|
|
12
|
-
export declare function writeOutputs(plan: OutputPlan, payloads: OutputPayloads, stdoutFile: () => FileIdentity | undefined, inputs: readonly IdentifiedInput[], earlierStoredRunDirOf: (path: string) => string | undefined): void;
|
|
13
|
-
//# sourceMappingURL=writer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../src/cli-balance/emit/writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAA4C,KAAK,YAAY,EAAE,KAAK,eAAe,EAA4C,KAAK,UAAU,EAAsB,MAAM,aAAa,CAAC;AAC/L,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAKlF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IACnD,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAQD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,MAAM,YAAY,GAAG,SAAS,EAC1C,MAAM,EAAE,SAAS,eAAe,EAAE,EAClC,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GAC1D,IAAI,CAKN"}
|