Reorganize userspace/ into base/ and tests/userspace/#873
Conversation
Split the flat userspace/ directory so base system crates (init, vibix_abi, vibix_libc, vibix_libc_defs, ld_vibix, lib) live under base/ and test/demo binaries (hello, hello_dyn, std_hello, pjdfstest_runner, repro_fork, shell_pipeline) live under tests/userspace/. This gives base system components first-class status and keeps test fixtures out of the install surface as the real base system grows. Updates workspace members, inter-crate path deps, xtask build paths, CI workflow paths, library/std dep path, and RFC 0009 path references. Closes #872 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
✅ Files skipped from review due to trivial changes (2)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThis PR reorganizes the ChangesDirectory Structure Reorganization
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@Cargo.toml`:
- Around line 19-28: Docs still reference old userspace/... locations; update
those references to the new workspace layout by finding and replacing
occurrences of the legacy "userspace/" paths in documentation (e.g., inspect
dst-478-investigation.md and fork-loop.md for lines mentioning userspace/) with
the appropriate new targets such as "base/..." or "tests/userspace/..." (match
each reference to the corresponding new package like "base/init",
"base/vibix_abi", "tests/userspace/hello", etc.) and verify links render
correctly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 4b76c9c5-23bc-47f6-96a2-0e9444f6015b
📒 Files selected for processing (52)
.github/workflows/smoke-soak.ymlCargo.tomlbase/init/Cargo.tomlbase/init/link.ldbase/init/src/main.rsbase/ld_vibix/Cargo.tomlbase/ld_vibix/link.ldbase/ld_vibix/src/elf.rsbase/ld_vibix/src/main.rsbase/ld_vibix/src/reloc.rsbase/ld_vibix/src/serial.rsbase/lib/ld-musl-x86_64.so.1base/vibix_abi/Cargo.tomlbase/vibix_abi/src/alloc.rsbase/vibix_abi/src/errno.rsbase/vibix_abi/src/fs.rsbase/vibix_abi/src/futex.rsbase/vibix_abi/src/lib.rsbase/vibix_abi/src/process.rsbase/vibix_abi/src/stdio.rsbase/vibix_abi/src/syscall.rsbase/vibix_abi/src/thread.rsbase/vibix_libc/Cargo.tomlbase/vibix_libc/src/errno.rsbase/vibix_libc/src/fcntl.rsbase/vibix_libc/src/helpers.rsbase/vibix_libc/src/lib.rsbase/vibix_libc/src/stat.rsbase/vibix_libc/src/unistd.rsbase/vibix_libc_defs/Cargo.tomlbase/vibix_libc_defs/src/lib.rsdocs/RFC/0009-std-on-vibix.mdlibrary/std/Cargo.tomltests/fixtures/ext2_image.sha256tests/userspace/hello/Cargo.tomltests/userspace/hello/link.ldtests/userspace/hello/src/main.rstests/userspace/hello_dyn/Cargo.tomltests/userspace/hello_dyn/link.ldtests/userspace/hello_dyn/src/main.rstests/userspace/pjdfstest_runner/Cargo.tomltests/userspace/pjdfstest_runner/link.ldtests/userspace/pjdfstest_runner/src/main.rstests/userspace/repro_fork/Cargo.tomltests/userspace/repro_fork/link.ldtests/userspace/repro_fork/src/main.rstests/userspace/shell_pipeline/Cargo.tomltests/userspace/shell_pipeline/link.ldtests/userspace/shell_pipeline/src/main.rstests/userspace/std_hello/Cargo.tomltests/userspace/std_hello/src/main.rsxtask/src/main.rs
Address CI failures (rustfmt line-length, ext2 hash drift) and CodeRabbit review finding (stale userspace/ paths in docs/repros and docs/design). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Closes #872
Summary
userspace/tobase/userspace/totests/userspace/Test plan
cargo xtask build— passescargo xtask test— host unit tests + QEMU integration tests pass (blocking_sync::rwlock_concurrent_readers flake is preexisting blocking_sync rwlock test fails on main: readers serialised — rwlock didn't grant shared access #791)cargo xtask smoke— all 42 markers present