Skip to content

UR-Nexus 1.68.18

Choose a tag to compare

@github-actions github-actions released this 31 Jul 03:29
  • The shell is presentational and imports only ink and useTerminalSize. A first
    version read live state itself (settings, provider registry, app state, git),
    and importing it from REPL changed REPL's module graph enough to flip a
    command from hidden to visible — caught by commandRegistryIntegrity, which
    passed with the REPL edit stashed and failed with it applied. Loading a module
    is not free here; some register on load. Session values now arrive as props
    from a caller that already holds them.

  • Reconstructed three more stub type files, clearing 177 further errors:
    keybindings/types.ts (six empty interfaces), ink/cursor.ts, and
    commands/plugin/unifiedTypes.ts. Same defect as the MCP types in 1.68.14 —
    an empty interface means "has no members" to TypeScript, not "shape unknown",
    so every property access on one was an error and the consuming files carried
    @ts-nocheck as a result.

  • KeybindingBlock.bindings is keyed by chord string, not an array. A first
    attempt typed it ParsedBinding[], which made every entry in the default
    binding table an error — the declaration form ('ctrl+d': 'app:exit') and the
    parsed form (chord resolved into keystrokes) are different shapes, and
    conflating them broke a file that had been fine.

  • KeybindingAction is a string rather than a union of known actions:
    defaultBindings.ts assembles entries conditionally from feature flags, so a
    value missing from a union would turn a working binding into an error.

  • Suppression list: 140 -> 132. Eight keybinding and ink files came off.

  • Totals for the sweep so far: 223 -> 132 files, 868 -> 563 errors, and almost
    none of it file-by-file. Four stub files accounted for 258 errors on their
    own.