Implement JQHTML function cache ID system and fix bundle compilation Implement underscore prefix for system tables Fix JS syntax linter to support decorators and grant exception to Task system SPA: Update planning docs and wishlists with remaining features SPA: Document Navigation API abandonment and future enhancements Implement SPA browser integration with History API (Phase 1) Convert contacts view page to SPA action Convert clients pages to SPA actions and document conversion procedure SPA: Merge GET parameters and update documentation Implement SPA route URL generation in JavaScript and PHP Implement SPA bootstrap controller architecture Add SPA routing manual page (rsx:man spa) Add SPA routing documentation to CLAUDE.md Phase 4 Complete: Client-side SPA routing implementation Update get_routes() consumers for unified route structure Complete SPA Phase 3: PHP-side route type detection and is_spa flag Restore unified routes structure and Manifest_Query class Refactor route indexing and add SPA infrastructure Phase 3 Complete: SPA route registration in manifest Implement SPA Phase 2: Extract router code and test decorators Rename Jqhtml_Component to Component and complete SPA foundation setup 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Framework Verification Test
Meta-test that verifies the testing framework itself works correctly.
What it verifies
- Test environment helpers load correctly
test_mode_enter()successfully switches to test database.envis modified to userspade_test.envbackup is created- Database reset script works
- Migrations run successfully on test database
test_db_query()helper works- Test mode cleanup/restore works via trap
Prerequisites
rspade_testdatabase existsrspadeuser has access torspade_test- Laravel is configured normally (using
rspadedatabase)
How to run
./run_test.sh # Full test with database reset
./run_test.sh --skip-reset # Skip database reset (faster)
What happens
- Loads test environment helpers
- Resets test database (unless --skip-reset)
- Enters test mode (switches to rspade_test)
- Runs 5 verification checks
- Exits test mode (restores original database)
- Outputs PASS or FAIL
Expected output
[SETUP] Testing framework verification...
[SETUP] Resetting test database...
[DB RESET] Dropping rspade_test database...
[DB RESET] Creating rspade_test database...
[DB RESET] Running migrations...
[DB RESET] Database reset complete
[TEST ENV] Entering test mode...
[TEST ENV] Test mode active (using rspade_test database)
[TEST] Verifying framework components...
[TEST] ✓ Environment switched to test database
[TEST] ✓ Test database accessible
[TEST] ✓ Migrations ran successfully
[TEST] ✓ Environment backup created
[TEST] ✓ Database query helper works
PASS: Framework Verification
[TEST ENV] Exiting test mode...
[TEST ENV] Test mode exited (restored original database)
Known limitations
- Database reset is slow (~5-10 seconds with migrations)
- Future: Use database snapshots for faster reset