Skip to content

Regressions

Each defect of the audits (docs/archive/2026-07/BUGS.md) has a row. A row with the status test has a test that names the ID. A row with the status resolved names the change that removed the defect. The test spec-coverage.test.ts checks each test row.

ID Status Evidence
V-001 V-0012 tests pass The others axis exists (@mark1russell7/vex builder tests)
V-002 V-0021 tests pass The plain and lifted NDVector domains are independent (@mark1russell7/vex-domains)
V-003 V-0031 tests pass A domain does not change its class (@mark1russell7/vex domain tests)
V-004 V-0043 tests pass An unknown key gives #REF!
V-005 V-0052 tests pass other outside a pair gives #REF!
V-006 V-0061 tests pass Bindings exist only in the expression, through let and with()
V-007 V-0071 tests pass A literal of the wrong kind gives #VALUE!
V-008 V-0082 tests pass Inherited members are not ops
V-009 V-0092 tests pass An op that throws in a reduction gives an error, not an exception
V-010 V-0103 tests pass Chains are immutable
V-011 resolved MultiChain is gone. fork() makes a record of branches.
V-012 V-0121 tests pass No value type is any
V-013 V-0131 tests pass Strictness exists only for list ops, with one rule
V-014 resolved createDSL is gone. vex() is the only entry point.
V-015 resolved The old strict-mode code is gone with @vex/legacy.
V-016 V-0165 tests pass The law checker finds the false claim of the old Color.add, and the new Color.add is commutative
V-017 V-0171 tests pass NDVector keeps non-finite components, and the domain check reports them
V-018 V-0181 tests pass Division by zero gives #NUM!
V-019 V-0191 tests pass A position outside a grid gives #REF!
V-020 resolved The Expr type lists each kind, and the interpreter switch is exhaustive (Oxlint switch-exhaustiveness-check).
V-021 V-0211 tests pass @mark1russell7/vex imports no domain package
V-022 V-0222 tests pass A value is not undefined
V-023 resolved applyUsing is gone. Arguments are expressions.
V-024 resolved methodReturns is gone. The builder reads return types from the method signatures.
V-025 resolved Optional and Result are the public types of the core, with documented fields.
V-026 resolved The two P exports and the Biblo schema are gone. Paths are references.
V-027 V-0271 tests pass The methods of Vec2 are on the prototype
V-028 resolved The dead code is gone with @vex/legacy.
V-029 resolved The traversal reductions use the list ops of the interpreter, with one pass.
V-030 resolved TypeScript is a dependency of each package (P0).
V-031 resolved pnpm test runs vitest run (P0).
V-032 resolved The packages have main and the workspace build. The npm build is part of phase P5.
V-033 resolved Each package has its own tsconfig.json with src as the root (P0).
V-034 resolved The stale files are gone (P0).
V-035 resolved The submodules are gone. Funk is vendored (P0).
V-036 resolved CI runs typecheck, Oxlint, tests and ste-lint (P0).
V-037 resolved The new suites replace the old tests.
V-038 V-0382 tests pass String and array values pass as literals
V-039 V-0391 tests pass The ops section does not record build
V-040 V-0402 tests pass origin() goes back to the start
V-041 V-0413 tests pass A chain is not a thenable
V-042 V-0422 tests pass The others axis evaluates the base at the origin and the body at each target