Skip to content

Adopt SQLite project unit test harness#692

Open
brandonpayton wants to merge 4 commits into
mainfrom
integration/kad-wtb-sqlite-testing
Open

Adopt SQLite project unit test harness#692
brandonpayton wants to merge 4 commits into
mainfrom
integration/kad-wtb-sqlite-testing

Conversation

@brandonpayton

@brandonpayton brandonpayton commented Jun 13, 2026

Copy link
Copy Markdown
Member

Summary

Completes the SQLite project-unit testing epic handoff for kad-wtb after adopting useful work from external PR #5 and recording the current Node/browser validation state.

Earlier child work for the harness and base validation has already reached main. This PR now carries the four remaining unique integration commits over main: browser SQLite memory-cap stability work, the SharedFS open-unlink/rename-over fix, browser fault/crash classification artifacts, and browser LIKE timing classification artifacts.

Adopted brandonpayton/kandelo-agentic-dev PR #5 Scope

Across the kad-wtb epic, the adopted scope includes:

  • scripts/run-sqlite-project-unit-tests.sh, the combined SQLite project-unit wrapper around the official SQLite runner.
  • Porting-guide documentation for the SQLite project-unit harness.
  • Preserved Node and browser full-run artifacts under test-runs/.
  • Browser demo-runner fixes for accidental default syscall tracing and partial artifact snapshotting.
  • The current target of SQLite official full on both hosts; the larger all permutation is tracked separately by kad-29m.

This PR and the child work avoid skipping or xfail-ing upstream SQLite tests as a substitute for runtime fixes.

Validation Status

PR branch: integration/kad-wtb-sqlite-testing
Base: main
Current head: 92cd50563d8ad1110827032f9fd0fb7c0f7ad960
GitHub mergeability after rebase: mergeable; review required; checks pending.

Node:

  • Original full run initialized but wedged after a host Mach-O executable was passed to WebAssembly.compile().
  • kad-36g is closed: examples/run-example.ts now constrains exec fallback so arbitrary host files outside KERNEL_CWD are not resolved as guest programs unless they are explicit .wasm candidates.
  • Acceptance probe after the fix advanced the Node full runner to named SQLite failures without reproducing the Mach-O compile wedge.

Browser:

  • Original full snapshot reached SQLite execution with 58 completed jobs, 4 failed jobs, and preserved testrunner.db artifacts before page reload/navigation.
  • kad-wtb.10 is closed with browser memory/test harness stability work included in this PR.
  • kad-wtb.12 is closed: focused browser savepoint6.test passed after preserving unlinked SharedFS inodes until last close. The SharedFS fix is included in this PR.
  • kad-wtb.13 is closed: focused Node/browser like.test reruns classify the original like-14.2 symptom as timing-threshold behavior, not a string/collation semantic mismatch. The classification artifacts are included in this PR.
  • kad-wtb.11 is closed as a classification: isolated sysfault.test passes; writecrash.test and walfault.test are narrowed to browser process teardown / executable materialization and munmap trap behavior rather than the original generic crash snapshot. The classification report is included in this PR.

Gate verification was recorded on the rebased child branches before merge: cargo test -p kandelo --target aarch64-apple-darwin --lib, cd host && npx vitest run, scripts/run-libc-tests.sh, scripts/run-posix-tests.sh, and scripts/dev-shell.sh bash scripts/check-abi-version.sh all passed in the closing notes for the latest child work. This PR-opening bead only created and updated the GitHub handoff; it did not add new source changes beyond rebasing the integration head onto current main.

Known Remaining Blocker

  • kad-wtb.9 remains open/hooked: focused browser sort4.test still exposes the threaded-sorter crash/stall shape. The latest notes say the browser no longer traps OOB after positioned-I/O work, but the direct runner times out at sort4-2.3; the next focus is browser thread worker startup/channel handoff after late SQLite sorter clones.

Artifacts

  • Node full snapshot: test-runs/gastown-sqlite-node-full-pr5/
  • Browser full snapshot: test-runs/gastown-sqlite-browser-full-pr5-snapshot/
  • Epic synthesis: test-runs/gastown-sqlite-epic-synthesis/summary.md
  • Focused follow-up artifacts in this PR: test-runs/kad-wtb13-like-* and test-runs/gastown-sqlite-browser-full-pr5-snapshot/browser-fault-recheck.md
  • Focused savepoint6 artifact recorded by kad-wtb.12: test-runs/kad-wtb.12-savepoint6-focused-after-fix

Related

@brandonpayton brandonpayton force-pushed the integration/kad-wtb-sqlite-testing branch from 93ef2b4 to 92cd505 Compare June 13, 2026 12:47
@github-actions

Copy link
Copy Markdown

Phase B-1 matrix build status — pr-692-staging

ABI v15. 6 built, 0 failed, 6 total.

Package Arch Status Sha
kandelo-sdk wasm32 built bb590098
lamp wasm32 built 1bffff45
rootfs wasm32 built 992f6fe4
wordpress wasm32 built 6c61b817
shell wasm32 built 3192a681
node-vfs wasm32 built f0d638b2

Auto-generated; replaced on each push. Raw data in the publish-status workflow artifact.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant