Refusals name the file or field by label, never by host path (#1873).
organization and cli refusals now say business file acme.json, role file chief.json, the system config MOSAIC_CONFIG names and similar, where they used to quote absolute paths.
Raw filesystem and git errors in org-service, org document reads, --vars and console stop are rewritten to cannot <syscall> <label> (<CODE>). The code, syscall and delete-receipt fields stay on the error.
hosts.mjs names the refused command's basename. Console stop from another checkout says so without quoting that checkout's entry path.
The T1-owned files (role.mjs, organization-config.mjs) change only the readJsonFile label arguments.
New path-redaction sentinel tests in cli and organization fail on BASE. The json-redaction pins follow the new texts.
Deferred, because those lines belong to other lanes' files: organization-config checkStat and the other ${file} sites, role.mjs:156-160 and :197, resolve.mjs:47, credentials.mjs, org-registry.mjs, cli/config.mjs, cli.mjs:520, launcher.mjs, and discord's own refusals. The list is in the lane report.
Lane: Opus. Review: Sol, changes 6 (3 P2, 3 P3), all fixed in one round at the sites it named. Lane gate on the final tree at e588fb32c: 3660/0. Case 1 gave 57/0 on both BASE and HEAD.
Refusals name the file or field by label, never by host path (#1873).
- organization and cli refusals now say `business file acme.json`, `role file chief.json`, `the system config MOSAIC_CONFIG names` and similar, where they used to quote absolute paths.
- Raw filesystem and git errors in org-service, org document reads, `--vars` and console stop are rewritten to `cannot <syscall> <label> (<CODE>)`. The code, syscall and delete-receipt fields stay on the error.
- hosts.mjs names the refused command's basename. Console stop from another checkout says so without quoting that checkout's entry path.
- The T1-owned files (role.mjs, organization-config.mjs) change only the `readJsonFile` label arguments.
- New path-redaction sentinel tests in cli and organization fail on BASE. The json-redaction pins follow the new texts.
Deferred, because those lines belong to other lanes' files: organization-config `checkStat` and the other `${file}` sites, role.mjs:156-160 and :197, resolve.mjs:47, credentials.mjs, org-registry.mjs, cli/config.mjs, cli.mjs:520, launcher.mjs, and discord's own refusals. The list is in the lane report.
Lane: Opus. Review: Sol, changes 6 (3 P2, 3 P3), all fixed in one round at the sites it named. Lane gate on the final tree at e588fb32c: 3660/0. Case 1 gave 57/0 on both BASE and HEAD.
PR #1916 rule: a refusal names the field or file, never a config value
or a host path. readJsonFile's three refusals and parseJsonFileText now
name the file by its `what` label only. Callers whose label alone is
ambiguous add a name that already passed a strict pattern (business id,
role name, org id, turn id, project key) or a fixed path under the data
root. Exit codes, refusal codes and check order are unchanged.
organization: util, access, project, config-command, library-seats,
org-service deleteOrg receipt, agent-levels regex; T1 files role.mjs and
organization-config.mjs change only the readJsonFile label.
cli: access lock, accounts owner, host state/lock, notifier journal,
notify-config, run-evidence, dev-fixture, git-socket, org-bus, org-console.
discord: turn record label names the turn id.
Sentinel tests (sk-test-NOT-A-SECRET-1234 as a path component) cover each
changed refusal and fail on BASE; old path pins updated.
Sol review (org-redact5, changes 6):
- org-service: Node filesystem errors become "cannot <syscall> <label> (<CODE>)";
code, syscall, deleteStep and deleteReceipt stay. git failures name the verb
and exit code, never git's stderr.
- org-console: consoleStop names "another checkout", not the entry path. Exit 3.
- config-command: the system config is named by where it came from. Exit 3.
- cli org: documents and raw fs errors are named by kind and code. Exit 2.
- instances: --vars file named by flag and kind. Exit 4.
- hosts: a refused command is named by the basename refusedCommand matched.
- role.mjs (T1): the change is back to the readJsonFile label only.
Sentinel tests for each; pins in last-values, rename-b-commands, org-recovery.
The review round changed the config-command relay and the org document
refusal to name the file by label. cli/tests/json-redaction.test.mjs still
required the host path in those two CLI refusals. They now require the
label and the path's absence. The direct scripts/mosaic-config.mjs checks
and the loadSystem check (PL1, deferred) still require the path.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Refusals name the file or field by label, never by host path (#1873).
business file acme.json,role file chief.json,the system config MOSAIC_CONFIG namesand similar, where they used to quote absolute paths.--varsand console stop are rewritten tocannot <syscall> <label> (<CODE>). The code, syscall and delete-receipt fields stay on the error.readJsonFilelabel arguments.Deferred, because those lines belong to other lanes' files: organization-config
checkStatand the other${file}sites, role.mjs:156-160 and :197, resolve.mjs:47, credentials.mjs, org-registry.mjs, cli/config.mjs, cli.mjs:520, launcher.mjs, and discord's own refusals. The list is in the lane report.Lane: Opus. Review: Sol, changes 6 (3 P2, 3 P3), all fixed in one round at the sites it named. Lane gate on the final tree at
e588fb32c: 3660/0. Case 1 gave 57/0 on both BASE and HEAD.