pm-ops 2026.9.5 → 2026.9.7
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/CHANGELOG.md +20 -0
- package/dist/attestation.d.ts +2 -1
- package/dist/attestation.d.ts.map +1 -1
- package/dist/attestation.js +124 -11
- package/dist/attestation.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/shell-scan.d.ts +39 -14
- package/dist/shell-scan.d.ts.map +1 -1
- package/dist/shell-scan.js +238 -32
- package/dist/shell-scan.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2026.9.7 - 2026-09-07
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- An option's operand was read as the program in two places, once failing open and once failing closed ([ops-55sh](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/issues/ops-55sh.toon))
|
|
8
|
+
- The release completeness audit has never executed because its gh calls carry no token ([ops-j46h](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/issues/ops-j46h.toon))
|
|
9
|
+
- The auditor shell-tokenised every shebang file, so a Node script failed the gate on a template literal ([ops-3o3w](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/issues/ops-3o3w.toon))
|
|
10
|
+
- Audit xargs/parallel spawning wrappers that leave the publish argument list unresolved ([ops-3xs4](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/issues/ops-3xs4.toon))
|
|
11
|
+
|
|
12
|
+
### Other
|
|
13
|
+
|
|
14
|
+
- A same-day re-release is blocked because the pinned pm-changelog rejects the -N version suffix ([ops-tk0h](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/chores/ops-tk0h.toon))
|
|
15
|
+
|
|
16
|
+
## 2026.9.6 - 2026-09-06
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
|
|
20
|
+
- Fail closed on unresolved publish command positions ([ops-9onb](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/issues/ops-9onb.toon))
|
|
21
|
+
|
|
3
22
|
## 2026.9.5 - 2026-09-05
|
|
4
23
|
|
|
5
24
|
### Security
|
|
6
25
|
|
|
26
|
+
- Confirm CodeQL closes both shell-injection alerts on a scan of main, rather than assuming the rewrite closed them ([ops-7qhw](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/tasks/ops-7qhw.toon))
|
|
7
27
|
- The merge-driver test builds a shell command from an environment-controlled path, which is the pattern this repository asks every other one to stop using ([ops-6no1](https://github.com/unbraind/pm-ops/blob/main/.agents/pm/issues/ops-6no1.toon))
|
|
8
28
|
|
|
9
29
|
## 2026.9.2 - 2026-09-02
|
package/dist/attestation.d.ts
CHANGED
|
@@ -136,7 +136,8 @@ export declare function auditPublishAttestation(sources: SourceFile[]): PublishA
|
|
|
136
136
|
* audited, and because the workflow's own attested publish satisfied the
|
|
137
137
|
* non-vacuity check the gate still reported that every invocation was attested.
|
|
138
138
|
* Auditing every shape that can execute closes that, and a shebang is honoured
|
|
139
|
-
* so an extensionless tracked script is not a blind spot either
|
|
139
|
+
* so an extensionless tracked script is not a blind spot either -- but only a
|
|
140
|
+
* shebang naming a SHELL, for the reason {@link SHELL_INTERPRETERS} gives.
|
|
140
141
|
*
|
|
141
142
|
* Build output is excluded. `dist/` is generated from sources this scan already
|
|
142
143
|
* reads, it is regenerated and compared byte-for-byte on the release path, and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attestation.d.ts","sourceRoot":"","sources":["../attestation.ts"],"names":[],"mappings":"AAuBA,OAAO,EAeL,KAAK,YAAY,EACjB,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"attestation.d.ts","sourceRoot":"","sources":["../attestation.ts"],"names":[],"mappings":"AAuBA,OAAO,EAeL,KAAK,YAAY,EACjB,KAAK,UAAU,EAKf,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AAEzB,2EAA2E;AAC3E,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAE/C,iEAAiE;AACjE,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5D,iFAAiF;AACjF,MAAM,WAAW,wBAAyB,SAAQ,cAAc;IAC9D,iEAAiE;IACjE,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;CAC1C;AAED,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,OAAO,EAAE,YAAY,CAAC;CACvB;AAED,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,aAAmC,CAAC;AAwHnE;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMzD;AAuBD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAe/D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAwBjE;AAoMD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,iBAAiB,EAAE,CAO5E;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAE3D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,wBAAwB,CAqCvF;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAgC3E;AA2CD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAU5D;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,wBAAwB,CAM7D;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC7B,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAC3B,IAAI,CASN"}
|
package/dist/attestation.js
CHANGED
|
@@ -20,12 +20,54 @@
|
|
|
20
20
|
import { execFileSync } from "node:child_process";
|
|
21
21
|
import { closeSync, openSync, readFileSync, readSync } from "node:fs";
|
|
22
22
|
import { resolve } from "node:path";
|
|
23
|
-
import { bashArrays, blockDepthChange, caseDepthChange, commandArguments, commandCandidates, commandName, dedentRunBlocks, expandArrays, expandScalars, heredocBodyLines, heredocExpansionLines, joinContinuations, literalScalarAssignments, segmentShellLine, startsEnclosingCaseArm, tokenizeCommands, unsetNames, } from "./shell-scan.js";
|
|
23
|
+
import { bashArrays, blockDepthChange, caseDepthChange, commandArguments, commandCandidates, commandName, dedentRunBlocks, expandArrays, expandScalars, heredocBodyLines, heredocExpansionLines, joinContinuations, literalScalarAssignments, segmentShellLine, spawnedAsCommand, startsEnclosingCaseArm, tokenizeCommands, unsetNames, } from "./shell-scan.js";
|
|
24
24
|
/** The flag that attaches a build attestation to the published tarball. */
|
|
25
25
|
export const ATTESTATION_FLAG = "--provenance";
|
|
26
26
|
/** Publishers other than npm, which this repository has no attested path for. */
|
|
27
27
|
export const FOREIGN_PUBLISHERS = new Set(["yarn", "pnpm", "bun"]);
|
|
28
28
|
/** Repository subtrees whose contents are build output rather than a publish path. */
|
|
29
|
+
/**
|
|
30
|
+
* Interpreters whose shebang means the file's body is written in shell.
|
|
31
|
+
*
|
|
32
|
+
* A shebang says a file executes; it does not say it executes AS SHELL. This
|
|
33
|
+
* scan tokenises with a shell grammar, so honouring every shebang put programs
|
|
34
|
+
* written in other languages through a parser that cannot represent them.
|
|
35
|
+
*
|
|
36
|
+
* That was harmless only while an unresolved command position was skipped.
|
|
37
|
+
* Once the scan began auditing what it cannot resolve -- which is the property
|
|
38
|
+
* that closes the variable-routed publish bypasses -- a TypeScript template
|
|
39
|
+
* literal such as `${violation.file} publish` read as an unresolved program
|
|
40
|
+
* followed by the word `publish`, and the gate failed on a file that runs no
|
|
41
|
+
* shell at all. Every repository in the fleet carries at least one
|
|
42
|
+
* `#!/usr/bin/env node` file, so that is a fleet-wide false failure rather
|
|
43
|
+
* than a corner case, and a false failure here blocks every release.
|
|
44
|
+
*
|
|
45
|
+
* Nothing real is lost by narrowing. A shell script with an extension is still
|
|
46
|
+
* matched by {@link EXECUTABLE_PATHS}; what the shebang branch adds is the
|
|
47
|
+
* EXTENSIONLESS shell script, which is exactly what this set still admits.
|
|
48
|
+
* Finding a publish inside a Node program is a genuine and separate problem
|
|
49
|
+
* that needs spawn-call recognition, and shell-tokenising TypeScript never
|
|
50
|
+
* solved it -- it only produced noise that was invisible until the scan
|
|
51
|
+
* started trusting it.
|
|
52
|
+
*/
|
|
53
|
+
/**
|
|
54
|
+
* `env` options that consume the next word, so it is not the interpreter.
|
|
55
|
+
*
|
|
56
|
+
* Only the separated spellings need listing: `--unset=NAME` and `--chdir=DIR`
|
|
57
|
+
* carry their operand and are skipped as ordinary dash words. `-S` is absent
|
|
58
|
+
* deliberately -- in a shebang it splits the REST of the line rather than
|
|
59
|
+
* taking one operand, so consuming a word after it would swallow the
|
|
60
|
+
* interpreter it exists to introduce.
|
|
61
|
+
*/
|
|
62
|
+
const ENV_OPTIONS_WITH_OPERAND = new Set(["-u", "--unset", "-C", "--chdir"]);
|
|
63
|
+
const SHELL_INTERPRETERS = new Set(["sh", "bash", "dash", "zsh", "ksh", "mksh", "ash"]);
|
|
64
|
+
/**
|
|
65
|
+
* The final path segment of a word, so an interpreter is compared by name.
|
|
66
|
+
*
|
|
67
|
+
* @param word - A shebang word, which may be a bare name or any path to one.
|
|
68
|
+
* @returns The segment after the last `/`, or the whole word when it has none.
|
|
69
|
+
*/
|
|
70
|
+
const leafName = (word) => word.slice(word.lastIndexOf("/") + 1);
|
|
29
71
|
const GENERATED_PREFIXES = ["dist/", "coverage/", "node_modules/", ".agents/pm/runtime/"];
|
|
30
72
|
/**
|
|
31
73
|
* The workflow-shaped path patterns whose `run:` blocks GitHub Actions
|
|
@@ -364,14 +406,44 @@ function publishInvocationsInShell(source, raw) {
|
|
|
364
406
|
// value (`sudo -u root npm publish`) moves the program past where naming it
|
|
365
407
|
// once would look. Missing a publish is a failed audit; offering one that no
|
|
366
408
|
// shell would run is noise an operator dismisses.
|
|
409
|
+
const primaryProgram = commandName(command);
|
|
367
410
|
for (const candidate of commandCandidates(command)) {
|
|
368
411
|
const program = commandName(candidate);
|
|
369
412
|
if (program === undefined)
|
|
370
413
|
continue;
|
|
371
|
-
|
|
414
|
+
// Secondary candidate readings compensate for unknown wrapper options;
|
|
415
|
+
// they are not the tokeniser's identified command position. Otherwise an
|
|
416
|
+
// unresolved argument after a literal program (`npm publish $FLAG`) would
|
|
417
|
+
// be reported twice, once as the real publish and once as a phantom whole
|
|
418
|
+
// command. A genuinely unresolved primary position remains fail-closed.
|
|
419
|
+
const unresolvedProgram = program === primaryProgram
|
|
420
|
+
&& (program.startsWith("$") || (program.length === 0 && candidate[0]?.unresolved === true));
|
|
421
|
+
// A spawning wrapper (`xargs npm`, `parallel npm`) names the publisher on
|
|
422
|
+
// the command line but draws its arguments from stdin or a file, so the
|
|
423
|
+
// literal `publish` word is never there for isPublishCommand to find. That
|
|
424
|
+
// leaves the argument list unresolved the way `$CMD` leaves the program
|
|
425
|
+
// unresolved, so a named publisher reached through such a wrapper is
|
|
426
|
+
// audited without requiring a literal subcommand. The wrapper may sit in
|
|
427
|
+
// the command's consumed prefix (`xargs npm`) or inside a candidate that a
|
|
428
|
+
// non-spawning wrapper's unknown option value re-pointed (`sudo -u root
|
|
429
|
+
// xargs npm`), so both the command and the candidate are tested. A
|
|
430
|
+
// non-publisher reached this way (`xargs rm -f`) is still dismissed: only
|
|
431
|
+
// a named publisher with unresolved arguments is a publish the scanner
|
|
432
|
+
// cannot disprove.
|
|
433
|
+
const unresolvedArguments = (program === "npm" || FOREIGN_PUBLISHERS.has(program))
|
|
434
|
+
&& (spawnedAsCommand(command) || spawnedAsCommand(candidate));
|
|
435
|
+
const unresolved = unresolvedProgram || unresolvedArguments;
|
|
372
436
|
if (program !== "npm" && !FOREIGN_PUBLISHERS.has(program) && !unresolvedProgram)
|
|
373
437
|
continue;
|
|
374
|
-
|
|
438
|
+
// A fully literal program must name a publisher and carry the publish
|
|
439
|
+
// subcommand. An unresolved command position cannot prove either fact:
|
|
440
|
+
// `$CMD` may expand to the whole `npm publish` command with no literal
|
|
441
|
+
// argument left for isPublishCommand to inspect, so it is audited
|
|
442
|
+
// unconditionally. This intentionally spends noise instead of allowing a
|
|
443
|
+
// silent unattested release. The same holds one level down for a spawning
|
|
444
|
+
// wrapper: `xargs npm` cannot prove it is not `xargs npm publish`, so the
|
|
445
|
+
// argument list is audited unconditionally too.
|
|
446
|
+
if (!unresolved && !isPublishCommand(candidate))
|
|
375
447
|
continue;
|
|
376
448
|
// Not de-duplicated: two identical publish lines are two invocations, and
|
|
377
449
|
// collapsing them would report one of them as if the other did not exist.
|
|
@@ -487,7 +559,8 @@ export function auditPublishAttestation(sources) {
|
|
|
487
559
|
* audited, and because the workflow's own attested publish satisfied the
|
|
488
560
|
* non-vacuity check the gate still reported that every invocation was attested.
|
|
489
561
|
* Auditing every shape that can execute closes that, and a shebang is honoured
|
|
490
|
-
* so an extensionless tracked script is not a blind spot either
|
|
562
|
+
* so an extensionless tracked script is not a blind spot either -- but only a
|
|
563
|
+
* shebang naming a SHELL, for the reason {@link SHELL_INTERPRETERS} gives.
|
|
491
564
|
*
|
|
492
565
|
* Build output is excluded. `dist/` is generated from sources this scan already
|
|
493
566
|
* reads, it is regenerated and compared byte-for-byte on the release path, and
|
|
@@ -500,12 +573,42 @@ export function auditPublishAttestation(sources) {
|
|
|
500
573
|
export function isExecutableSource(path, firstLine) {
|
|
501
574
|
if (GENERATED_PREFIXES.some((prefix) => path.startsWith(prefix)))
|
|
502
575
|
return false;
|
|
503
|
-
if (firstLine.startsWith("#!"))
|
|
504
|
-
|
|
576
|
+
if (firstLine.startsWith("#!")) {
|
|
577
|
+
// The interpreter the shebang names, stepping over `env` and its options so
|
|
578
|
+
// `#!/usr/bin/env -S bash -eu` names `bash` rather than `-S`. Only the final
|
|
579
|
+
// path segment is compared, since the same interpreter is reached as `sh`,
|
|
580
|
+
// `/bin/sh` and `/usr/local/bin/sh`.
|
|
581
|
+
const words = firstLine.slice(2).trim().split(/\s+/).filter((word) => word.length > 0);
|
|
582
|
+
let index = 0;
|
|
583
|
+
if (words[index] !== undefined && leafName(words[index]) === "env") {
|
|
584
|
+
index += 1;
|
|
585
|
+
// `env` accepts options, some of which take the NEXT word, and then any
|
|
586
|
+
// number of NAME=value assignments before the command. Skipping only
|
|
587
|
+
// dash-prefixed words read the operand of `-u`/`-C` as the interpreter,
|
|
588
|
+
// and read `FOO=bar` as the interpreter under `-S`. Either made a real
|
|
589
|
+
// `bash` script answer "not shell", which is the fail-OPEN direction: the
|
|
590
|
+
// file drops out of the scan and a publish inside it is never audited.
|
|
591
|
+
while (words[index] !== undefined) {
|
|
592
|
+
const word = words[index];
|
|
593
|
+
if (word.startsWith("-")) {
|
|
594
|
+
index += 1;
|
|
595
|
+
if (ENV_OPTIONS_WITH_OPERAND.has(word))
|
|
596
|
+
index += 1;
|
|
597
|
+
continue;
|
|
598
|
+
}
|
|
599
|
+
if (!/^[A-Za-z_][A-Za-z0-9_]*=/.test(word))
|
|
600
|
+
break;
|
|
601
|
+
index += 1;
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
const interpreter = words[index];
|
|
605
|
+
if (interpreter !== undefined && SHELL_INTERPRETERS.has(leafName(interpreter)))
|
|
606
|
+
return true;
|
|
607
|
+
}
|
|
505
608
|
return EXECUTABLE_PATHS.some((pattern) => pattern.test(path));
|
|
506
609
|
}
|
|
507
610
|
/**
|
|
508
|
-
* Read
|
|
611
|
+
* Read a file's first line, or nothing when it cannot be read.
|
|
509
612
|
*
|
|
510
613
|
* Only a shebang is being looked for, so the whole file is never loaded --
|
|
511
614
|
* `git ls-files` can name a large tracked asset, and this runs once per
|
|
@@ -518,15 +621,25 @@ export function isExecutableSource(path, firstLine) {
|
|
|
518
621
|
* report as an untested branch.
|
|
519
622
|
*
|
|
520
623
|
* @param file - Absolute path to read.
|
|
521
|
-
* @returns The first
|
|
624
|
+
* @returns The file's first line, or an empty string when it cannot be read.
|
|
522
625
|
*/
|
|
523
626
|
function firstBytes(file) {
|
|
524
627
|
try {
|
|
525
628
|
const handle = openSync(file, "r");
|
|
526
629
|
try {
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
630
|
+
// The whole shebang LINE, not the `#!` marker. Reading two bytes was
|
|
631
|
+
// enough while any shebang counted as shell, but the interpreter decides
|
|
632
|
+
// that now, and handing this function's caller `"#!"` would make every
|
|
633
|
+
// shebang unrecognisable -- silently dropping extensionless shell
|
|
634
|
+
// scripts from the scan, which is the fail-open direction.
|
|
635
|
+
//
|
|
636
|
+
// 256 bytes is the kernel's own shebang limit (BINPRM_BUF_SIZE), so a
|
|
637
|
+
// line the loader would truncate is a line this cannot need more of.
|
|
638
|
+
const buffer = Buffer.alloc(256);
|
|
639
|
+
const read = readSync(handle, buffer, 0, 256, 0);
|
|
640
|
+
const text = buffer.toString("utf8", 0, read);
|
|
641
|
+
const end = text.indexOf("\n");
|
|
642
|
+
return end === -1 ? text : text.slice(0, end);
|
|
530
643
|
}
|
|
531
644
|
finally {
|
|
532
645
|
closeSync(handle);
|
package/dist/attestation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attestation.js","sourceRoot":"","sources":["../attestation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"attestation.js","sourceRoot":"","sources":["../attestation.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -2047,7 +2047,7 @@ function renderDocstringsMarkdown(result) {
|
|
|
2047
2047
|
const defineExtension = (module) => module;
|
|
2048
2048
|
export default defineExtension({
|
|
2049
2049
|
name: "pm-ops",
|
|
2050
|
-
version: "2026.9.
|
|
2050
|
+
version: "2026.9.7",
|
|
2051
2051
|
activate(api) {
|
|
2052
2052
|
if (typeof api.registerRenderer === "function") {
|
|
2053
2053
|
// Derived from OPS_COMMAND_PATHS rather than restated. A literal copy is
|
package/dist/shell-scan.d.ts
CHANGED
|
@@ -37,6 +37,14 @@ export interface ShellToken {
|
|
|
37
37
|
value: string;
|
|
38
38
|
/** True when any part of the word came from inside quotes. */
|
|
39
39
|
quoted: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* True when the word contains expansion whose result cannot be proven.
|
|
42
|
+
*
|
|
43
|
+
* Auditors need this provenance after tokenisation: an empty command
|
|
44
|
+
* substitution and a literal empty word have the same value but radically
|
|
45
|
+
* different security meaning in command position.
|
|
46
|
+
*/
|
|
47
|
+
unresolved?: boolean;
|
|
40
48
|
/**
|
|
41
49
|
* True when the word's FIRST character came from inside quotes.
|
|
42
50
|
*
|
|
@@ -69,6 +77,20 @@ export type ShellCommand = ShellToken[];
|
|
|
69
77
|
* @returns Every simple command found, outermost first.
|
|
70
78
|
*/
|
|
71
79
|
export declare function tokenizeCommands(text: string, depth?: number): ShellCommand[];
|
|
80
|
+
/**
|
|
81
|
+
* Whether a command's program is reached through a spawning wrapper.
|
|
82
|
+
*
|
|
83
|
+
* `xargs npm` and `parallel npm` name a publisher whose arguments arrive on
|
|
84
|
+
* stdin (or via `-a`/`--arg-file`), so the scanner can never see a literal
|
|
85
|
+
* `publish` word. The wrapper was already consumed by the prefix walk; this
|
|
86
|
+
* surfaces the flag it set, so an auditor treats the argument list as
|
|
87
|
+
* unresolved the way `$CMD` makes the program unresolved -- without a separate
|
|
88
|
+
* pipe-or-stdin detector.
|
|
89
|
+
*
|
|
90
|
+
* @param input - One simple command's tokens.
|
|
91
|
+
* @returns True when a spawning wrapper precedes the program word.
|
|
92
|
+
*/
|
|
93
|
+
export declare function spawnedAsCommand(input: ShellCommand): boolean;
|
|
72
94
|
/**
|
|
73
95
|
* Name the program a command runs, or nothing when it runs none.
|
|
74
96
|
*
|
|
@@ -87,20 +109,23 @@ export declare function commandName(input: ShellCommand): string | undefined;
|
|
|
87
109
|
*
|
|
88
110
|
* `commandName` answers "what does this command run" and answers it once. That
|
|
89
111
|
* is right for reporting and wrong for auditing, because a wrapper's options
|
|
90
|
-
* are not all known
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
112
|
+
* are not all known. The common ones are: {@link PREFIX_OPTIONS_WITH_OPERAND}
|
|
113
|
+
* enumerates the value-taking options of each prefix, and the prefix walk
|
|
114
|
+
* consumes those operands, so `sudo -u root npm publish` no longer offers a
|
|
115
|
+
* reading starting at `root`. That precision is what stops an operand being
|
|
116
|
+
* mistaken for the program.
|
|
117
|
+
*
|
|
118
|
+
* That map cannot be exhaustive, though, and each omission would be a publish
|
|
119
|
+
* that disappears from the audit. So once a wrapper has been consumed, every
|
|
120
|
+
* later word is ALSO offered as a possible program, with the words after it as
|
|
121
|
+
* its arguments. An auditor asking "does any publish here lack an attestation"
|
|
122
|
+
* then cannot miss one behind a wrapper option nobody has enumerated:
|
|
123
|
+
* `sudo --zzz npm publish` is still found.
|
|
124
|
+
*
|
|
125
|
+
* The cost is noise, never a miss. For a gate whose failure mode is an
|
|
126
|
+
* unattested release, a spurious finding an operator dismisses is the cheaper
|
|
127
|
+
* error -- but only for options nobody knows about, which is why enumerating
|
|
128
|
+
* the ones we do know is worth doing rather than relying on noise alone.
|
|
104
129
|
*
|
|
105
130
|
* A command with no wrapper yields exactly one reading, so ordinary commands
|
|
106
131
|
* are unaffected.
|
package/dist/shell-scan.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-scan.d.ts","sourceRoot":"","sources":["../shell-scan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAKH,qDAAqD;AACrD,MAAM,WAAW,UAAU;IACzB,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB;;;;;;;;OAQG;IACH,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,4DAA4D;AAC5D,MAAM,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"shell-scan.d.ts","sourceRoot":"","sources":["../shell-scan.ts"],"names":[],"mappings":"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"}
|
package/dist/shell-scan.js
CHANGED
|
@@ -61,6 +61,7 @@ const COMMAND_PREFIXES = new Set([
|
|
|
61
61
|
"timeout",
|
|
62
62
|
"setsid",
|
|
63
63
|
"xargs",
|
|
64
|
+
"parallel",
|
|
64
65
|
"npx",
|
|
65
66
|
"bunx",
|
|
66
67
|
"pnpx",
|
|
@@ -91,6 +92,54 @@ const TWO_WORD_PREFIXES = new Map([
|
|
|
91
92
|
["yarn", new Set(["dlx", "exec"])],
|
|
92
93
|
["bun", new Set(["x", "run"])],
|
|
93
94
|
]);
|
|
95
|
+
/**
|
|
96
|
+
* Wrappers that run a NAMED program with an argument list the scanner cannot
|
|
97
|
+
* resolve.
|
|
98
|
+
*
|
|
99
|
+
* `env npm publish` and `sudo npm publish` carry their arguments on the same
|
|
100
|
+
* line, so a literal `publish` word is still there to be found. `xargs npm` and
|
|
101
|
+
* `parallel npm` do not: the program's arguments arrive on stdin (or via
|
|
102
|
+
* `-a`/`--arg-file`), so the word `publish` is never on the command line at
|
|
103
|
+
* all. A scanner that dismisses the command unless it sees a literal `publish`
|
|
104
|
+
* lets an unattested publish run behind the wrapper while an attested sibling
|
|
105
|
+
* elsewhere in the file carries the audit to green.
|
|
106
|
+
*
|
|
107
|
+
* This is the same property as an unresolved PROGRAM position one level down:
|
|
108
|
+
* the program is named, but its arguments are not, so the invocation cannot be
|
|
109
|
+
* shown not to be a publish and is audited without requiring a literal
|
|
110
|
+
* subcommand. `xargs` under its own flags (`-n`, `-I{}`, `-0`, `-P`, `-a`,
|
|
111
|
+
* `--arg-file`) is still a spawning wrapper -- the flags are skipped as wrapper
|
|
112
|
+
* options, not mistaken for the program -- so the set holds the wrapper name,
|
|
113
|
+
* not a flag-by-flag enumeration. The check never depends on a pipe being
|
|
114
|
+
* present: `xargs npm < file` draws its arguments from a redirection instead.
|
|
115
|
+
*/
|
|
116
|
+
/**
|
|
117
|
+
* Options of a command prefix that consume the NEXT word as their operand.
|
|
118
|
+
*
|
|
119
|
+
* Keyed by the prefix, because the same spelling means different things:
|
|
120
|
+
* `sudo -u` takes a user, `env -u` takes a variable name, and `nice -n` takes a
|
|
121
|
+
* number. Only the separated forms are listed -- `--unset=NAME` carries its own
|
|
122
|
+
* operand and needs no lookahead.
|
|
123
|
+
*
|
|
124
|
+
* Without this the walk skipped a dash option but left its operand in place, so
|
|
125
|
+
* the operand was read as the program. `env -u parallel npm --version` set the
|
|
126
|
+
* spawning-wrapper flag from `parallel` -- which is `-u`'s operand, not a
|
|
127
|
+
* command -- and `npm --version` was then audited as a possible publish. That
|
|
128
|
+
* is a false FAILURE, and this gate blocks releases across the fleet, so it
|
|
129
|
+
* costs an outage rather than a missed publish.
|
|
130
|
+
*/
|
|
131
|
+
const PREFIX_OPTIONS_WITH_OPERAND = new Map([
|
|
132
|
+
["env", new Set(["-u", "--unset", "-C", "--chdir"])],
|
|
133
|
+
["sudo", new Set(["-u", "--user", "-g", "--group", "-p", "--prompt", "-h", "--host", "-r", "--role", "-t", "--type", "-C", "--close-from", "-D", "--chdir", "-R", "--chroot", "-U", "--other-user"])],
|
|
134
|
+
["doas", new Set(["-u", "-C"])],
|
|
135
|
+
["nice", new Set(["-n", "--adjustment"])],
|
|
136
|
+
["ionice", new Set(["-c", "--class", "-n", "--classdata", "-p", "--pid"])],
|
|
137
|
+
["timeout", new Set(["-s", "--signal", "-k", "--kill-after"])],
|
|
138
|
+
["stdbuf", new Set(["-i", "--input", "-o", "--output", "-e", "--error"])],
|
|
139
|
+
["xargs", new Set(["-n", "--max-args", "-I", "--replace", "-a", "--arg-file", "-d", "--delimiter", "-E", "-L", "--max-lines", "-P", "--max-procs", "-s", "--max-chars"])],
|
|
140
|
+
["parallel", new Set(["-j", "--jobs", "-a", "--arg-file", "-N", "-L", "--max-lines", "-S", "--sshlogin"])],
|
|
141
|
+
]);
|
|
142
|
+
const SPAWNING_WRAPPERS = new Set(["xargs", "parallel"]);
|
|
94
143
|
/**
|
|
95
144
|
* Reduce a program word to the name it runs.
|
|
96
145
|
*
|
|
@@ -118,6 +167,25 @@ function isOperatorStart(character) {
|
|
|
118
167
|
|| character === "{"
|
|
119
168
|
|| character === "}";
|
|
120
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Whether the character after a brace forces the brace to be a complete word.
|
|
172
|
+
*
|
|
173
|
+
* `{` and `}` are reserved WORDS, not metacharacters, so they delimit a brace
|
|
174
|
+
* group only when they stand alone. A brace is a complete word when the next
|
|
175
|
+
* character is whitespace, end-of-input, or a metacharacter that itself always
|
|
176
|
+
* ends a word -- but NOT another brace, because `{}` is one literal word, not an
|
|
177
|
+
* empty group followed by a closer.
|
|
178
|
+
*
|
|
179
|
+
* @param character - The character following a `{` or `}`, or undefined.
|
|
180
|
+
* @returns True when the brace is a standalone word rather than part of a larger one.
|
|
181
|
+
*/
|
|
182
|
+
function isBraceBoundary(character) {
|
|
183
|
+
if (character === undefined)
|
|
184
|
+
return true;
|
|
185
|
+
return character === " " || character === "\t" || character === "\r"
|
|
186
|
+
|| character === ";" || character === "&" || character === "|"
|
|
187
|
+
|| character === "\n" || character === "(" || character === ")";
|
|
188
|
+
}
|
|
121
189
|
/**
|
|
122
190
|
* Read a `$(...)` or backtick substitution and return its inner text.
|
|
123
191
|
*
|
|
@@ -198,14 +266,16 @@ export function tokenizeCommands(text, depth = 0) {
|
|
|
198
266
|
let command = [];
|
|
199
267
|
let value = "";
|
|
200
268
|
let quoted = false;
|
|
269
|
+
let unresolved = false;
|
|
201
270
|
let startsQuoted = false;
|
|
202
271
|
let started = false;
|
|
203
272
|
const endWord = () => {
|
|
204
273
|
if (!started)
|
|
205
274
|
return;
|
|
206
|
-
command.push({ value, quoted, startsQuoted });
|
|
275
|
+
command.push(unresolved ? { value, quoted, unresolved, startsQuoted } : { value, quoted, startsQuoted });
|
|
207
276
|
value = "";
|
|
208
277
|
quoted = false;
|
|
278
|
+
unresolved = false;
|
|
209
279
|
startsQuoted = false;
|
|
210
280
|
started = false;
|
|
211
281
|
};
|
|
@@ -264,10 +334,16 @@ export function tokenizeCommands(text, depth = 0) {
|
|
|
264
334
|
}
|
|
265
335
|
if (inner === "`" || (inner === "$" && text[index + 1] === "(")) {
|
|
266
336
|
const { inner: body, end } = readSubstitution(text, index);
|
|
267
|
-
|
|
337
|
+
// `$((...))` is arithmetic expansion, not a command substitution;
|
|
338
|
+
// its expression must not be recursively invented as a command.
|
|
339
|
+
if (inner === "`" || text[index + 2] !== "(")
|
|
340
|
+
nested.push(body);
|
|
341
|
+
unresolved = true;
|
|
268
342
|
index = end;
|
|
269
343
|
continue;
|
|
270
344
|
}
|
|
345
|
+
if (inner === "$")
|
|
346
|
+
unresolved = true;
|
|
271
347
|
value += inner;
|
|
272
348
|
index += 1;
|
|
273
349
|
}
|
|
@@ -279,18 +355,74 @@ export function tokenizeCommands(text, depth = 0) {
|
|
|
279
355
|
}
|
|
280
356
|
if (character === "`" || (character === "$" && text[index + 1] === "(")) {
|
|
281
357
|
const { inner, end } = readSubstitution(text, index);
|
|
282
|
-
|
|
358
|
+
// Arithmetic expansion has the same `$(` prefix but executes no command.
|
|
359
|
+
if (character === "`" || text[index + 2] !== "(")
|
|
360
|
+
nested.push(inner);
|
|
361
|
+
unresolved = true;
|
|
283
362
|
index = end - 1;
|
|
284
363
|
if (!started)
|
|
285
364
|
startsQuoted = false;
|
|
286
365
|
started = true;
|
|
287
366
|
continue;
|
|
288
367
|
}
|
|
368
|
+
if (character === "$" && text[index + 1] === "{") {
|
|
369
|
+
// Braces delimit a parameter expansion, not a brace-group command. Keep
|
|
370
|
+
// the whole unresolved word together so command-position provenance is
|
|
371
|
+
// not shattered into `$`, a variable name, and a literal argument.
|
|
372
|
+
let end = index + 2;
|
|
373
|
+
let depth = 1;
|
|
374
|
+
while (end < text.length && depth > 0) {
|
|
375
|
+
if (text[end] === "\\")
|
|
376
|
+
end += 2;
|
|
377
|
+
else {
|
|
378
|
+
if (text[end] === "{")
|
|
379
|
+
depth += 1;
|
|
380
|
+
else if (text[end] === "}")
|
|
381
|
+
depth -= 1;
|
|
382
|
+
end += 1;
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
value += text.slice(index, end);
|
|
386
|
+
unresolved = true;
|
|
387
|
+
if (!started)
|
|
388
|
+
startsQuoted = false;
|
|
389
|
+
started = true;
|
|
390
|
+
index = end - 1;
|
|
391
|
+
continue;
|
|
392
|
+
}
|
|
393
|
+
if (character === "$")
|
|
394
|
+
unresolved = true;
|
|
289
395
|
if (character === " " || character === "\t" || character === "\r") {
|
|
290
396
|
endWord();
|
|
291
397
|
continue;
|
|
292
398
|
}
|
|
293
399
|
if (isOperatorStart(character)) {
|
|
400
|
+
// `{` and `}` are reserved WORDS, not metacharacters: they delimit a
|
|
401
|
+
// brace group only as a complete standalone word in command position.
|
|
402
|
+
// A brace embedded in a larger word (`xargs -I{}`) is a literal, and a
|
|
403
|
+
// brace paired with no boundary (`{}`) is the literal word `{}` rather
|
|
404
|
+
// than an empty brace group -- treating the `{` as a command separator
|
|
405
|
+
// there shattered `xargs -I{}` into `xargs -I` and an empty group,
|
|
406
|
+
// leaving the named publisher `npm` as a separate command with no
|
|
407
|
+
// wrapper prefix and no literal `publish`, so the spawning wrapper
|
|
408
|
+
// escaped the audit. A brace is an operator only at a word start
|
|
409
|
+
// followed by a real metacharacter or whitespace, never by another brace.
|
|
410
|
+
// The other operator characters are metacharacters that always end a word.
|
|
411
|
+
if (character === "{" || character === "}") {
|
|
412
|
+
if (started || !isBraceBoundary(text[index + 1])) {
|
|
413
|
+
value += character;
|
|
414
|
+
if (!started)
|
|
415
|
+
startsQuoted = false;
|
|
416
|
+
started = true;
|
|
417
|
+
continue;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
if ((character === "&" || character === "|")
|
|
421
|
+
&& command.some((token) => token.value === "[[")
|
|
422
|
+
&& !command.some((token) => token.value === "]]")) {
|
|
423
|
+
endWord();
|
|
424
|
+
continue;
|
|
425
|
+
}
|
|
294
426
|
// `2>&1` is one redirection, not a command ended by a backgrounding `&`.
|
|
295
427
|
// The `&` belongs to the word only while that word is still an operator
|
|
296
428
|
// awaiting its target.
|
|
@@ -392,7 +524,7 @@ function withoutRedirections(command) {
|
|
|
392
524
|
return kept;
|
|
393
525
|
}
|
|
394
526
|
/**
|
|
395
|
-
* Walk
|
|
527
|
+
* Walk the words that precede the program a command runs.
|
|
396
528
|
*
|
|
397
529
|
* Three kinds of word are not the program: a leading `NAME=value` assignment, a
|
|
398
530
|
* wrapper listed in `COMMAND_PREFIXES`, and -- only once a wrapper has been
|
|
@@ -401,16 +533,36 @@ function withoutRedirections(command) {
|
|
|
401
533
|
* command whose own first word is an option is still reported as written rather
|
|
402
534
|
* than silently re-pointed at one of its arguments.
|
|
403
535
|
*
|
|
404
|
-
* An option's separate value
|
|
405
|
-
*
|
|
406
|
-
*
|
|
536
|
+
* An option's separate value is skipped only when the prefix that introduced it
|
|
537
|
+
* is known to take one -- see {@link PREFIX_OPTIONS_WITH_OPERAND}, which is
|
|
538
|
+
* keyed by prefix because the same spelling differs by command (`sudo -u` takes
|
|
539
|
+
* a user, `env -u` a variable name, `nice -n` a number). Leaving a known
|
|
540
|
+
* operand in place let it be read as the program: `env -u parallel npm
|
|
541
|
+
* --version` set the spawning-wrapper flag from `parallel`, which is `-u`'s
|
|
542
|
+
* operand rather than a command, and audited `npm --version` as a publish.
|
|
543
|
+
*
|
|
544
|
+
* The value of an option NOT in that map is still left in place, because
|
|
545
|
+
* guessing wrong about an unknown option would move the reported program rather
|
|
546
|
+
* than merely widen the search. {@link commandCandidates} covers that case by
|
|
547
|
+
* offering it as a further reading.
|
|
548
|
+
*
|
|
549
|
+
* A {@link SPAWNING_WRAPPERS} wrapper (`xargs`, `parallel`) is consumed like any
|
|
550
|
+
* other prefix but also flagged: the program it names draws its arguments from
|
|
551
|
+
* stdin or a file rather than the command line, so a literal `publish` word is
|
|
552
|
+
* never present. That flag is what lets an auditor treat the argument list as
|
|
553
|
+
* unresolved without a parallel mechanism -- the prefix walk already knows the
|
|
554
|
+
* wrapper class.
|
|
407
555
|
*
|
|
408
556
|
* @param command - One simple command's tokens.
|
|
409
|
-
* @returns The
|
|
557
|
+
* @returns The program index and whether a spawning wrapper was consumed.
|
|
410
558
|
*/
|
|
411
|
-
function
|
|
559
|
+
function scanCommandPrefix(command) {
|
|
412
560
|
let index = 0;
|
|
413
561
|
let sawPrefix = false;
|
|
562
|
+
let spawned = false;
|
|
563
|
+
// Which prefix introduced the options being walked, so an option's operand is
|
|
564
|
+
// resolved against the command that actually defines it.
|
|
565
|
+
let lastPrefix;
|
|
414
566
|
while (index < command.length) {
|
|
415
567
|
const token = command[index];
|
|
416
568
|
if (!token.startsQuoted && /^[A-Za-z_][A-Za-z0-9_]*=/.test(token.value)) {
|
|
@@ -418,8 +570,16 @@ function skipCommandPrefix(command) {
|
|
|
418
570
|
continue;
|
|
419
571
|
}
|
|
420
572
|
const base = basename(token.value);
|
|
573
|
+
if (SPAWNING_WRAPPERS.has(base)) {
|
|
574
|
+
spawned = true;
|
|
575
|
+
sawPrefix = true;
|
|
576
|
+
lastPrefix = base;
|
|
577
|
+
index += 1;
|
|
578
|
+
continue;
|
|
579
|
+
}
|
|
421
580
|
if (COMMAND_PREFIXES.has(base)) {
|
|
422
581
|
sawPrefix = true;
|
|
582
|
+
lastPrefix = base;
|
|
423
583
|
index += 1;
|
|
424
584
|
continue;
|
|
425
585
|
}
|
|
@@ -430,28 +590,59 @@ function skipCommandPrefix(command) {
|
|
|
430
590
|
continue;
|
|
431
591
|
}
|
|
432
592
|
if (sawPrefix && !token.startsQuoted && token.value.startsWith("-")) {
|
|
593
|
+
// Consume the option's operand too when the prefix that introduced it
|
|
594
|
+
// takes one, so the operand is never mistaken for the program. `env -u
|
|
595
|
+
// parallel npm --version` must not read `parallel` as a spawning wrapper.
|
|
433
596
|
index += 1;
|
|
597
|
+
if (lastPrefix !== undefined && PREFIX_OPTIONS_WITH_OPERAND.get(lastPrefix)?.has(token.value) === true) {
|
|
598
|
+
index += 1;
|
|
599
|
+
}
|
|
434
600
|
continue;
|
|
435
601
|
}
|
|
436
|
-
//
|
|
437
|
-
// and reading `run:` as the program audits
|
|
438
|
-
//
|
|
439
|
-
//
|
|
440
|
-
//
|
|
441
|
-
//
|
|
602
|
+
// The YAML `run` key carries executable shell text as its value:
|
|
603
|
+
// `run: npm publish` runs npm, and reading `run:` as the program audits
|
|
604
|
+
// nothing. No other key is consumed: treating metadata such as
|
|
605
|
+
// `node-version: ${{ matrix.node-version }}` as shell would turn its value
|
|
606
|
+
// into a phantom unresolved command position. A list marker may precede
|
|
607
|
+
// the run key on the same line: `- run: npm publish`.
|
|
442
608
|
if (index === 0 && !token.startsQuoted && token.value === "-") {
|
|
443
609
|
sawPrefix = true;
|
|
444
610
|
index += 1;
|
|
445
611
|
continue;
|
|
446
612
|
}
|
|
447
|
-
if (index <= 1 && !token.startsQuoted &&
|
|
613
|
+
if (index <= 1 && !token.startsQuoted && token.value === "run:") {
|
|
448
614
|
sawPrefix = true;
|
|
449
615
|
index += 1;
|
|
450
616
|
continue;
|
|
451
617
|
}
|
|
452
|
-
return index;
|
|
618
|
+
return { index, spawned };
|
|
453
619
|
}
|
|
454
|
-
return index;
|
|
620
|
+
return { index, spawned };
|
|
621
|
+
}
|
|
622
|
+
/**
|
|
623
|
+
* Walk past the words that precede the program a command runs.
|
|
624
|
+
*
|
|
625
|
+
* @param command - One simple command's tokens.
|
|
626
|
+
* @returns The index of the program word, or the command's length when there is none.
|
|
627
|
+
*/
|
|
628
|
+
function skipCommandPrefix(command) {
|
|
629
|
+
return scanCommandPrefix(command).index;
|
|
630
|
+
}
|
|
631
|
+
/**
|
|
632
|
+
* Whether a command's program is reached through a spawning wrapper.
|
|
633
|
+
*
|
|
634
|
+
* `xargs npm` and `parallel npm` name a publisher whose arguments arrive on
|
|
635
|
+
* stdin (or via `-a`/`--arg-file`), so the scanner can never see a literal
|
|
636
|
+
* `publish` word. The wrapper was already consumed by the prefix walk; this
|
|
637
|
+
* surfaces the flag it set, so an auditor treats the argument list as
|
|
638
|
+
* unresolved the way `$CMD` makes the program unresolved -- without a separate
|
|
639
|
+
* pipe-or-stdin detector.
|
|
640
|
+
*
|
|
641
|
+
* @param input - One simple command's tokens.
|
|
642
|
+
* @returns True when a spawning wrapper precedes the program word.
|
|
643
|
+
*/
|
|
644
|
+
export function spawnedAsCommand(input) {
|
|
645
|
+
return scanCommandPrefix(withoutRedirections(input)).spawned;
|
|
455
646
|
}
|
|
456
647
|
/**
|
|
457
648
|
* Name the program a command runs, or nothing when it runs none.
|
|
@@ -475,20 +666,23 @@ export function commandName(input) {
|
|
|
475
666
|
*
|
|
476
667
|
* `commandName` answers "what does this command run" and answers it once. That
|
|
477
668
|
* is right for reporting and wrong for auditing, because a wrapper's options
|
|
478
|
-
* are not all known
|
|
479
|
-
*
|
|
480
|
-
*
|
|
481
|
-
*
|
|
482
|
-
*
|
|
483
|
-
*
|
|
484
|
-
*
|
|
485
|
-
*
|
|
486
|
-
*
|
|
487
|
-
*
|
|
488
|
-
*
|
|
489
|
-
*
|
|
490
|
-
*
|
|
491
|
-
*
|
|
669
|
+
* are not all known. The common ones are: {@link PREFIX_OPTIONS_WITH_OPERAND}
|
|
670
|
+
* enumerates the value-taking options of each prefix, and the prefix walk
|
|
671
|
+
* consumes those operands, so `sudo -u root npm publish` no longer offers a
|
|
672
|
+
* reading starting at `root`. That precision is what stops an operand being
|
|
673
|
+
* mistaken for the program.
|
|
674
|
+
*
|
|
675
|
+
* That map cannot be exhaustive, though, and each omission would be a publish
|
|
676
|
+
* that disappears from the audit. So once a wrapper has been consumed, every
|
|
677
|
+
* later word is ALSO offered as a possible program, with the words after it as
|
|
678
|
+
* its arguments. An auditor asking "does any publish here lack an attestation"
|
|
679
|
+
* then cannot miss one behind a wrapper option nobody has enumerated:
|
|
680
|
+
* `sudo --zzz npm publish` is still found.
|
|
681
|
+
*
|
|
682
|
+
* The cost is noise, never a miss. For a gate whose failure mode is an
|
|
683
|
+
* unattested release, a spurious finding an operator dismisses is the cheaper
|
|
684
|
+
* error -- but only for options nobody knows about, which is why enumerating
|
|
685
|
+
* the ones we do know is worth doing rather than relying on noise alone.
|
|
492
686
|
*
|
|
493
687
|
* A command with no wrapper yields exactly one reading, so ordinary commands
|
|
494
688
|
* are unaffected.
|
|
@@ -842,6 +1036,18 @@ export function literalScalarAssignments(segment) {
|
|
|
842
1036
|
if (segment.includes("$(") || segment.includes("`"))
|
|
843
1037
|
return assignments;
|
|
844
1038
|
const commands = tokenizeCommands(segment);
|
|
1039
|
+
const direct = commands.length === 1 ? commands[0] : undefined;
|
|
1040
|
+
if (direct !== undefined && direct.length > 1 && commandName(direct) === undefined) {
|
|
1041
|
+
// An assignment-only simple command persists every binding. In contrast,
|
|
1042
|
+
// the same words before a real command are only that command's environment
|
|
1043
|
+
// and must not enter the parent shell's scalar map.
|
|
1044
|
+
for (const token of direct) {
|
|
1045
|
+
const match = /^([A-Za-z_][A-Za-z0-9_]*)=(.*)$/u.exec(token.value);
|
|
1046
|
+
if (match === null || token.startsQuoted || token.unresolved === true || /[$`"'(){};&|<>#]/u.test(match[2]))
|
|
1047
|
+
continue;
|
|
1048
|
+
assignments.set(match[1], match[2]);
|
|
1049
|
+
}
|
|
1050
|
+
}
|
|
845
1051
|
for (let commandIndex = 0; commandIndex < commands.length; commandIndex += 1) {
|
|
846
1052
|
const command = commands[commandIndex];
|
|
847
1053
|
let index = 0;
|
package/dist/shell-scan.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-scan.js","sourceRoot":"","sources":["../shell-scan.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shell-scan.js","sourceRoot":"","sources":["../shell-scan.ts"],"names":[],"mappings":"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"}
|
package/manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pm-ops",
|
|
3
|
-
"version": "2026.9.
|
|
3
|
+
"version": "2026.9.7",
|
|
4
4
|
"description": "Multi-repo fleet operations for pm-cli",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"@types/node": "^26.2.0",
|
|
76
76
|
"@unbrained/pm-cli": "2026.8.31",
|
|
77
77
|
"c8": "^12.0.0",
|
|
78
|
-
"pm-changelog": "^2026.
|
|
78
|
+
"pm-changelog": "^2026.9.2"
|
|
79
79
|
},
|
|
80
80
|
"keywords": [
|
|
81
81
|
"pm-cli",
|