- README, roadmap: XSTS status quad and gates table now read the enforced 0/43/0/31 (Tests/XSTSSuiteTests.swift); test count 986/169 to 1448/258; encoding list and the remaining-work section reflect shipped reality; check-all expansion lists the validation and changelog gates - GEMINI.md, onboarding-antigravity.md: valid-schemas-rejected 1 to 0 and the pinned baselines updated to current - SECURITY.md: complete the reporting address - Parsing.InputEncoding: doc comment lists the full shipped encoding set - Schema.XSDParserUnion: guard the localName interpolation with ?? "" to match the same line and silence an optional-interpolation warning (internal dedup key, behavior preserving) - CHANGELOG: Unreleased entries for the above
54 lines
2.5 KiB
Markdown
54 lines
2.5 KiB
Markdown
# Roadmap
|
||
|
||
Living index of open work. **Pin [#167](https://github.com/mihaelamj/PureXML/issues/167)** on GitHub for the checklist view. Released **v0.2.0** (2026-06-16); pre-1.0 until the production-readiness gates in `docs/production-readiness.md` are earned.
|
||
|
||
## Current focus (priority order)
|
||
|
||
1. **#161**: cross-document schema composition (`include`/`import`/`redefine`): chameleon include + cross-container reference checks landed; attg/schZ XSTS burn-down still open.
|
||
2. **#158 / #159**: Particle Valid Restriction/Extension completion.
|
||
3. **#169**: located schema diagnostics (line/column).
|
||
4. **#172–#174**: instance-validation cluster tasks.
|
||
|
||
Parallel: **#130** (XSLT suite), **#139** (performance epic; tasks [#175](https://github.com/mihaelamj/PureXML/issues/175)–[#178](https://github.com/mihaelamj/PureXML/issues/178)).
|
||
|
||
**M1 done:** #171 schema differential harness (closed; opt-in; 231 XSTS oracle disagreements pinned) + generative fuzz + validation framework (#92).
|
||
|
||
## XSTS gates (current enforced baselines)
|
||
|
||
These mirror the ratchet asserted in `Tests/XSTSSuiteTests.swift`; update both together.
|
||
|
||
| Gate | Now | Issue |
|
||
|---|---|---|
|
||
| Valid schemas rejected | 0 | [#148](https://github.com/mihaelamj/PureXML/issues/148) |
|
||
| Invalid schemas accepted | 43 | [#145](https://github.com/mihaelamj/PureXML/issues/145) |
|
||
| Valid instances rejected | 0 | [#146](https://github.com/mihaelamj/PureXML/issues/146) |
|
||
| Invalid instances accepted | 31 | [#147](https://github.com/mihaelamj/PureXML/issues/147) |
|
||
|
||
Gates are **metric trackers**, not implementation tasks. Pick up **task** issues; ratchet baselines in `Tests/XSTSSuiteTests.swift` when counts fall.
|
||
|
||
## Milestones
|
||
|
||
| Milestone | Exit criteria | Key issues |
|
||
|---|---|---|
|
||
| M1: Trust the oracle | Reference differential + fuzz | ~~#171~~ (closed), fuzz |
|
||
| M2: Schema compiles correctly | #145 to 0 | #161, #158, #159 |
|
||
| M3: Instances validate correctly | #146, #147 to 0 | #172, #173, #174 |
|
||
| M4: IDE-ready diagnostics | Located errors, proven bounds | #169 |
|
||
| M5: 1.0 | All gates at 0 | #148 (closed at floor), #130, #139 |
|
||
|
||
## Labels
|
||
|
||
| Label | Meaning |
|
||
|---|---|
|
||
| `epic` | Grouping issue |
|
||
| `gate` | XSTS outcome metric |
|
||
| `task` | Implementation work |
|
||
| `area-schema` / `area-instance` / `area-infra` / `area-xslt` / `area-perf` | Subsystem |
|
||
| `priority-P0` / `P1` / `P2` | Critical path vs parallel |
|
||
|
||
## Related docs
|
||
|
||
- `docs/production-readiness.md`: the bar for IDE authority
|
||
- `docs/schema-validity-burndown.md`: schema-side burn-down protocol
|
||
- `docs/xsts-deviations.md`: deviation taxonomy and documented floors
|