Skip to content

v0.8.0 - Bash Parity Remediation, Control Flow & Robust Compound Lexing

Choose a tag to compare

@UberMetroid UberMetroid released this 02 Oct 14:43
· 24 commits to main since this release

openOODA Sovereign Shell (oosh) v0.8.0

Core Technical Remediation & Bash Parity Improvements:

  1. Scripting & Control Flow:
    • Added full POSIX positional parameter handling for scripts ($0, $#, $@, $*, $1..$N).
    • Sourced scripts now run without premature abort on exit code != 0, matching standard shell semantics.
    • Sourced ~/.ooshrc maintains full persistent session and environment state across REPL iterations.
    • Native support for for loops, while loops, if/else conditionals, case ... in ... esac branching, subshells (...), and function declarations with argument passing.
  2. Lexing, Parsing & Expansion:
    • Block-aware, comment-aware, and quote-aware compound splitters for ;, \n, &&, and || without premature splitting inside loop/conditional headers, blocks, comments, or shebang lines.
    • Resolved apostrophe expansion bug (\') so variables following escaped apostrophes expand correctly.
    • Subshell command substitution $() with nested quote and parenthesis depth tracking.
  3. Pipelines & Redirection:
    • Builtin pipelines and redirections wired natively via anonymous kernel streams and direct file capabilities, completely eliminating insecure world-readable /tmp files.
    • Prefix commands like rune correctly route pipelines without swallowing subsequent tokens.
    • External pipes and stderr-to-stdout redirects (2>&1) handled cleanly with full exit code propagation.
  4. Interactive UX & Line Editing:
    • Multi-match tab completion with Longest Common Prefix (LCP) and directory path completion for slash-prefixed tokens.
    • Terminal redraw uses ANSI screen erase (\x1b[J) to prevent visual wrap artifacts across lines.
  5. Quality Assurance & Verification:
    • 100% adherence to openOODA House Laws: Page Rule 16-256 lines per file, <= 8 files per directory, and Academy 4-element docstrings.
    • All smoke tests and E2E Tiers 1-5 (180 automated tests) passed.