# WSC-MVC A small, WSC-first MVC framework for Classic ASP on IIS: VBScript Windows Script Components registered as COM, dispatched by a single thin `Default.asp` bootstrap. See `SPEC.md` for the full contract, `IMPLEMENTATION_PLAN.md` for milestone status, and `docs/` for architecture, decisions, and test evidence — those are the authoritative, kept-current docs; this file is just an orientation map. ## Layout Two separate IIS sites sharing only the framework components: - `public/` — the production site's IIS physical path. `GET /` and `GET /hello` both reach the hello route. - `test-app/public/` — a separate site where `GET /` and `GET /self-test` return the JSON test harness, so diagnostics aren't reachable on the production site/port. See `docs/ARCHITECTURE.md`. - `Framework/` — shared WSC components, registered once via COM and used by both sites. - `Controllers/` — production-owned controllers; `test-app/Controllers/` — test-app-owned controllers. Neither app can activate the other's routes, including through direct `Default.asp?route=...` requests. None of these source folders is served over HTTP. - `logs/`, `test-app/logs/` — each site's own runtime log, written by the app, never served over HTTP. - `tests/`, `tools/`, `docs/` — test scripts, deployment/registration tooling, and documentation. Never served over HTTP. ## Deploy and register (on the target Windows/IIS host) ```powershell powershell -File tools\Register-Components.ps1 powershell -File tools\Setup-Site.ps1 powershell -File tools\Setup-Site.ps1 -SiteName WscMvcTests -PoolName WscMvcTests -PhysicalPath \test-app\public -Port 8091 ``` Both `Setup-Site.ps1` invocations are idempotent — safe to re-run after any deploy. ## Test ```powershell cscript //nologo tests\Test-Components.vbs # WSH smoke test, no IIS needed powershell -File tests\Test-Http.ps1 -BaseUrl http://localhost:8090 -TestBaseUrl http://localhost:8091 ``` ```bash ./tests/run-self-test.sh http://:8091 # test-app site, plain curl+JSON, any CLI ``` ## Status M0–M2 gated PASS with real test evidence on Windows/IIS; see `docs/TEST-RESULTS.md`. Next milestone: M3 (explicit route table) per `IMPLEMENTATION_PLAN.md`.