Files
ImpTune/.planning/REQUIREMENTS.md
T

79 lines
4.3 KiB
Markdown

# Requirements: ImpTune v1.1 — Hardening & Validation
**Defined:** 2026-04-13
**Core Value:** Generate a complete, working printer deployment package (script + drivers + icon) in minutes instead of manually scripting each printer setup.
**Milestone goal:** Close every open concern from v1.0 — real-world runtime validation, UX tech debt, and Nyquist-compliant validation track — to ship a confidence release.
> No new product features. Pure quality, validation, and rollout milestone. REQ-IDs continue numbering from v1.0 categories.
## v1.1 Requirements
### Real-World Runtime Validation (RTVAL)
- [ ] **RTVAL-01**: A generated `.intunewin` package is uploaded to a real Microsoft Intune tenant and accepted (no format errors), with byte-level conformance confirmed against tenant ingestion
- [ ] **RTVAL-02**: A generated install script runs successfully under SYSTEM context on a real Intune-managed Windows endpoint, with `pnputil` driver staging and `$PSScriptRoot` path resolution verified
- [ ] **RTVAL-03**: Generated detect script returns the expected exit code on a real endpoint after install (Intune detection rule succeeds)
- [ ] **RTVAL-04**: Uninstall script removes the printer cleanly under SYSTEM context on a real endpoint
- [ ] **RTVAL-05**: A signed-off RUNTIME-VALIDATION.md report records tenant, device, OS build, driver vendor(s) tested, screenshots/logs, and any issues found
### UX Tech Debt (UX)
- [ ] **UX-01**: After a new driver is uploaded on the printer form, the DriverDesc dropdown refreshes automatically (no manual page reload) — verified live in browser
- [ ] **UX-02**: PRNT-03 Alpine.js IP→port auto-derivation is verified live in a real browser session, with the verification recorded in VALIDATION.md
- [ ] **UX-03**: The printer detail page exposes direct download links for each generated script (install / uninstall / detect) in addition to the package export buttons
### Nyquist Validation Track (NYQ)
- [ ] **NYQ-01**: All 7 v1.0 phases have a Nyquist-compliant `VALIDATION.md` (one observable check per success criterion, evidence cited, no hand-wavy "code looks right" entries)
- [ ] **NYQ-02**: A `.planning/milestones/v1.0-VALIDATION-INDEX.md` aggregates per-phase validation status with pass/fail and links to evidence
- [ ] **NYQ-03**: Any validation gaps surfaced during the Nyquist pass that block real usage are tracked as defects and either fixed in v1.1 or explicitly deferred with rationale
### Real-World Rollout (RWR)
- [ ] **RWR-01**: ImpTune is deployed in its single Docker container to at least one real MSP environment serving real printers
- [ ] **RWR-02**: At least one real printer deployment package generated by the deployed instance is pushed to endpoints (via Intune or NinjaRMM) end-to-end
- [ ] **RWR-03**: Structured user feedback is captured from the deploying technician (what worked, what blocked, what's missing) in a `.planning/feedback/v1.1-rollout.md` document
- [ ] **RWR-04**: Feedback items are triaged into: fix-in-v1.1, defer-to-v1.2, won't-do (with reasoning) — recorded in the same feedback document
## Future Requirements
Carried forward from v1.0 Out of Scope — no change.
## Out of Scope
| Feature | Reason |
|---------|--------|
| New product features (auth, monitoring, API push, mobile UI, i18n, audit log) | v1.1 is hardening-only; new capability work waits for v1.2+ |
| Refactoring storage / DB schema | v1.0 schema stable, no migration churn warranted |
| Performance optimization | No reported bottleneck; premature |
| Rewriting v1.0 phases that already pass real-world validation | Only fix what real-world validation breaks |
## Traceability
| Requirement | Phase | Status |
|-------------|-------|--------|
| RTVAL-01 | TBD | Pending |
| RTVAL-02 | TBD | Pending |
| RTVAL-03 | TBD | Pending |
| RTVAL-04 | TBD | Pending |
| RTVAL-05 | TBD | Pending |
| UX-01 | TBD | Pending |
| UX-02 | TBD | Pending |
| UX-03 | TBD | Pending |
| NYQ-01 | TBD | Pending |
| NYQ-02 | TBD | Pending |
| NYQ-03 | TBD | Pending |
| RWR-01 | TBD | Pending |
| RWR-02 | TBD | Pending |
| RWR-03 | TBD | Pending |
| RWR-04 | TBD | Pending |
**Coverage:**
- v1.1 requirements: 15 total
- Mapped to phases: 0 (roadmap pending)
- Unmapped: 15 ⚠️
---
*Requirements defined: 2026-04-13*
*Last updated: 2026-04-13 after initial definition*