Close the BareOS shell + Fish REPL roadmap tracker and ship the remaining
shell surfaces in-tree. Roadmap / CI - docs/data/shell-roadmap-features.json: all shell-001…shell-100 rows and P1–P8 phases marked implemented; note documents closure date and pointers. - scripts/verify-shell-roadmap.mjs: validate JSON (schema 1, 8 phases, 100 implemented items) plus existing source needles; wire npm run verify:shell-roadmap into root pretest (package.json). - scripts/README.md: document verifier behavior. Lexer & expansion (packages/bare-os-booter/lib) - shell-lex.js: central lexShellLine; ANSI-C $'…' via decodeBareOsDollarQuote; keep diagnostics/tokenizer aligned with execution tokenizer. - shell.js: stray reserved words at statement start → syntax error exit 2; optional [[ … ]] when BARE_OS_SHELL_DOUBLE_BRACKET=1 (==, !=); alias expansion before function dispatch (ordering tests); expandWordWithCmdSubst: balanced $(…) vs skipped $((…)); backtick command substitution when BARE_OS_SHELL_CMDSUBST; default ctx.execLine for nested cmdsubst when unset; index passthrough for DOUBLE_BRACKET env. - shell-glob.js: ~login → HOME when USER matches, else /home/login (bounded login pattern); tests for pathname + execShellLine. - shell-tokenizer.js: align with shell-lex detailed spans/modes where needed. Completion / REPL - completion-engine.js: completion depth / collectors per shell program work. - packages/bare-os-booter/index.js: small wiring for shell env passthrough. /bin/sh front-end - packages/bare-os-coreutils/src/sh.js; kernel/bin/sh; seeder copies: stay in sync with shell behavior and env flags. Tests - packages/bare-os-booter/test.js: coverage for misplaced reserved words, gated [[ ]], alias vs function, ~user/~~ paths, $'…', cmdsubst $(…) and backticks, and related regressions. Documentation - docs/reference/shell-grammar.md: $'…', $(…) / backticks vs $((…)). - handbook/09-posix-utilities-shell-and-vfs.md, environment appendix, shell-troubleshooting / shell-unsupported-behavior, release checklist, docs/reference/README.md: shell behavior and operator surfaces. - developer-guide/19-how-to-fish-keybinding-completer.md: Fish keybinding / completer how-to (new). Generated / synced artifacts - kernel/lib/bare/manifest.json, kernel/share/man/man.json, kernel/lib/bare/shell-completion.json, posix_utilities.json, docs/audit/bundle-health.json: regenerated or synced with tooling. - scripts/bench-shell-phases.mjs: bench script touch.
This commit is contained in:
+2
-1
@@ -24,7 +24,7 @@
|
||||
"verify:manifest-data": "node scripts/verify-bare-module-manifest-data.mjs",
|
||||
"smoke:bare-manifest": "node scripts/smoke-bare-manifest-imports.mjs",
|
||||
"bundle:kernel": "node scripts/bundle-kernel-init.mjs",
|
||||
"pretest": "npm run build -w bare-os-coreutils && npm run build -w bare-os-openssh && npm run verify:manifest-data && npm run build -w bare-os-bare-libs && npm run bundle:kernel && node scripts/gen-kernel-extensions-index.mjs && node scripts/verify-kernel-seeder-parity.mjs && node scripts/verify-banned-terminology.mjs && node scripts/verify-naming-alias-matrix.mjs && node scripts/verify-feature-roadmap-canonical.mjs && node scripts/verify-feature-roadmap-paths.mjs && node scripts/verify-no-new-giant-phase-identifiers.mjs && node scripts/verify-runtime-no-incomplete-markers.mjs && node scripts/audit-placeholder-baseline.mjs --check && node scripts/verify-bare-imports.mjs && node scripts/verify-booter-boot-steps-alignment.mjs && node scripts/gen-ctx-client-helper.mjs && node scripts/verify-ctx-client-helper-sync.mjs && node scripts/verify-personal-drive-path-policy.mjs && node scripts/verify-extension-manifest-schema.mjs && node scripts/verify-boot-policy-extension-signer-pins.mjs && node scripts/verify-ctx-api-feature-bits.mjs && node scripts/verify-kernel-capabilities-contract.mjs && node scripts/verify-kernel-capabilities-word-6.mjs && node scripts/verify-kernel-capabilities-word-7.mjs && node scripts/verify-kernel-capabilities-word-8.mjs && node scripts/verify-kernel-capabilities-word-9.mjs && node scripts/verify-kernel-capabilities-word-10.mjs && node scripts/verify-kernel-capabilities-word-11.mjs && node scripts/verify-ctx-dts.mjs && node scripts/validate-example-schemas.mjs && node scripts/validate-mermaid-syntax.mjs && node scripts/verify-doc-links.mjs && node scripts/verify-protocol-doc-version-parity.mjs && node scripts/verify-man-coverage.mjs && node scripts/verify-doc-tier1-count.mjs && node scripts/verify-compat-matrix.mjs && node scripts/verify-doc-contracts.mjs && node scripts/verify-bundle-health.mjs && node scripts/verify-bundle-markers.mjs && node scripts/verify-bundle-throws.mjs && node scripts/verify-kernel-program-doc.mjs && node scripts/verify-kernel-program-proc-schema.mjs && node scripts/verify-kernel-program-roadmap-table.mjs && node scripts/verify-pear-no-static-node-import.mjs && node scripts/gen-posix-dashboard.mjs && node scripts/verify-posix-dashboard.mjs && node scripts/verify-posix-profile-triplet.mjs && node scripts/verify-posix-compliance-matrix.mjs && node scripts/verify-holepunch-clone-drift.mjs && node scripts/verify-holepunch-clone-freshness.mjs && npm run smoke:bare-manifest",
|
||||
"pretest": "npm run build -w bare-os-coreutils && npm run build -w bare-os-openssh && npm run verify:manifest-data && npm run build -w bare-os-bare-libs && npm run bundle:kernel && node scripts/gen-kernel-extensions-index.mjs && node scripts/verify-kernel-seeder-parity.mjs && node scripts/verify-banned-terminology.mjs && node scripts/verify-naming-alias-matrix.mjs && node scripts/verify-feature-roadmap-canonical.mjs && node scripts/verify-feature-roadmap-paths.mjs && node scripts/verify-no-new-giant-phase-identifiers.mjs && node scripts/verify-runtime-no-incomplete-markers.mjs && node scripts/audit-placeholder-baseline.mjs --check && node scripts/verify-bare-imports.mjs && node scripts/verify-booter-boot-steps-alignment.mjs && node scripts/gen-ctx-client-helper.mjs && node scripts/verify-ctx-client-helper-sync.mjs && node scripts/verify-personal-drive-path-policy.mjs && node scripts/verify-extension-manifest-schema.mjs && node scripts/verify-boot-policy-extension-signer-pins.mjs && node scripts/verify-ctx-api-feature-bits.mjs && node scripts/verify-kernel-capabilities-contract.mjs && node scripts/verify-kernel-capabilities-word-6.mjs && node scripts/verify-kernel-capabilities-word-7.mjs && node scripts/verify-kernel-capabilities-word-8.mjs && node scripts/verify-kernel-capabilities-word-9.mjs && node scripts/verify-kernel-capabilities-word-10.mjs && node scripts/verify-kernel-capabilities-word-11.mjs && node scripts/verify-ctx-dts.mjs && node scripts/validate-example-schemas.mjs && node scripts/validate-mermaid-syntax.mjs && node scripts/verify-doc-links.mjs && node scripts/verify-protocol-doc-version-parity.mjs && node scripts/verify-man-coverage.mjs && node scripts/verify-doc-tier1-count.mjs && node scripts/verify-compat-matrix.mjs && node scripts/verify-doc-contracts.mjs && node scripts/verify-bundle-health.mjs && node scripts/verify-bundle-markers.mjs && node scripts/verify-bundle-throws.mjs && node scripts/verify-kernel-program-doc.mjs && node scripts/verify-kernel-program-proc-schema.mjs && node scripts/verify-kernel-program-roadmap-table.mjs && npm run verify:shell-roadmap && node scripts/verify-pear-no-static-node-import.mjs && node scripts/gen-posix-dashboard.mjs && node scripts/verify-posix-dashboard.mjs && node scripts/verify-posix-profile-triplet.mjs && node scripts/verify-posix-compliance-matrix.mjs && node scripts/verify-holepunch-clone-drift.mjs && node scripts/verify-holepunch-clone-freshness.mjs && npm run smoke:bare-manifest",
|
||||
"test": "npm run test --workspaces --if-present",
|
||||
"test:bare": "npm run test -w bare-os-protocol && npm run test:bare -w bare-os-booter && npm run test -w bare-os-seeder",
|
||||
"test:integration": "node scripts/integration-lab-smoke.mjs",
|
||||
@@ -36,6 +36,7 @@
|
||||
"bench:shell": "node scripts/bench-shell-phases.mjs",
|
||||
"report:shell-reliability": "node scripts/gen-shell-reliability-report.mjs",
|
||||
"verify:reliability-gates": "node scripts/verify-reliability-gates.mjs",
|
||||
"verify:shell-roadmap": "node scripts/verify-shell-roadmap.mjs",
|
||||
"verify:zero-trust-gates": "node scripts/verify-zero-trust-gates.mjs",
|
||||
"verify:bare-runtime": "node scripts/verify-bare-runtime-version.mjs",
|
||||
"verify-kernel-seeder": "node scripts/verify-kernel-seeder-parity.mjs",
|
||||
|
||||
Reference in New Issue
Block a user