docs(roadmap): rebuild tracker references after the GitHub loss
The roadmap and README cited issue numbers from the deleted GitHub tracker and carried stale XSTS figures (0/39/0/26 and 0/43/0/31 against the enforced 0/8/0/4). Recreate the load-bearing issues on Codeberg (#3 production-readiness epic, #4 and #5 gate trackers, #6 performance, #7 Xalan burn-down), cite them, correct every baseline figure to the test ratchet, mark shipped work (located diagnostics, the differential harness) as done, and note that pre-migration numbers in the historical narrative refer to the lost tracker. Closes #2
This commit is contained in:
parent
6c2810d71a
commit
f7d8fa16d1
10
CHANGELOG.md
10
CHANGELOG.md
@ -7,7 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
Nothing yet.
|
||||
### Changed
|
||||
|
||||
- Rebuild the issue tracker on Codeberg after the GitHub tracker loss: the
|
||||
production-readiness epic, both XSTS gate trackers, the performance epic,
|
||||
and the Xalan burn-down are recreated with current dated statuses, and
|
||||
`docs/roadmap.md` and `README.md` now cite the new numbers. The stale
|
||||
baseline figures in both documents are corrected to the enforced ratchet
|
||||
in `Tests/XSTSSuiteTests.swift` (0 / 8 / 0 / 4); shipped items (located
|
||||
diagnostics, the schema differential harness) no longer show as open.
|
||||
|
||||
## [0.4.8] - 2026-07-05
|
||||
|
||||
|
||||
35
README.md
35
README.md
@ -73,9 +73,12 @@ are all shipped (summarized above). The beyond-parity libxml2 conformance audit
|
||||
output encodings, streaming validation, the last encodings, the analysis
|
||||
findings, and the first W3C-suite pass) are all **complete**. Feature parity is
|
||||
done; the remaining distance is **production readiness for IDE use**, tracked under
|
||||
epic **#167** (schema authority, differential oracle, located diagnostics). Conformance
|
||||
suite maintenance (**#122**, closed) leaves **#130** (XSLT xalan burn-down) as the only
|
||||
active runner work; see `docs/roadmap.md`.
|
||||
epic [#3](https://codeberg.org/Mihaela/PureXML/issues/3) (schema authority,
|
||||
differential oracle, located diagnostics). Conformance suite maintenance is
|
||||
closed, leaving [#7](https://codeberg.org/Mihaela/PureXML/issues/7) (XSLT xalan
|
||||
burn-down) as the only active runner work; see `docs/roadmap.md`. Issue numbers
|
||||
in the historical narrative below refer to the pre-migration tracker that was
|
||||
lost with the GitHub repository.
|
||||
|
||||
```mermaid
|
||||
flowchart TB
|
||||
@ -102,19 +105,19 @@ flowchart TB
|
||||
BaseURI["#138 per-entity base URIs: complete"]:::done
|
||||
Epic122["#122 conformance suite maintenance: complete (#130 survivor)"]:::epic
|
||||
XSTS["#129 XSTS runner shipped; gates #145-#148 at 0/39/0/26"]:::review
|
||||
XSLTTS["#130 XSLT 1.0 suite (xalan-test): ~126 baseline failures"]:::review
|
||||
XSLTTS["#7 XSLT 1.0 suite (xalan-test): 26 pinned baseline failures"]:::review
|
||||
Parity100["Behavioral parity closed: #141 top-level params, #142 public streaming, #143 XPath budget, #144 WASI runtime proof, pl/ru sort collation"]:::done
|
||||
Epic139["#139 faster than libxml2, measured + streaming (benchmarks in docs/benchmarks.md; quadratics killed; unsafe authorized)"]:::epic
|
||||
Epic139["#6 faster than libxml2, measured + streaming (benchmarks in docs/benchmarks.md; quadratics killed; unsafe authorized)"]:::epic
|
||||
Audit140["#140 XSLT validation-framework audit"]:::todo
|
||||
Epic139 --> Parity100
|
||||
Epic139 --> Audit140
|
||||
RNGTS["#131 RELAX NG spec suite: complete, one documented class"]:::done
|
||||
C14NTS["#132 C14N spec vectors: complete"]:::done
|
||||
Epic167["#167 production readiness for IDE use (v0.2.0)"]:::epic
|
||||
Oracle171["#171 schema differential harness"]:::todo
|
||||
Epic167["#3 production readiness for IDE use"]:::epic
|
||||
Oracle171["schema differential harness (shipped)"]:::done
|
||||
CrossDoc161["#161 cross-document composition"]:::todo
|
||||
Gates145["#145-#148 XSTS gates: burn-down to 0"]:::review
|
||||
Loc169["#169 located schema diagnostics"]:::todo
|
||||
Gates145["#4 / #5 XSTS gates: burn-down 8 and 4 to 0"]:::review
|
||||
Loc169["located schema diagnostics (shipped)"]:::done
|
||||
Epic195["#195 xsi:type and substitution-group derivation correctness"]:::epic
|
||||
Epic105 --> Epic121
|
||||
Epic105 --> Epic122
|
||||
@ -142,7 +145,7 @@ flowchart TB
|
||||
|
||||
## Status
|
||||
|
||||
**Current focus:** production readiness for IDE use ([#167](https://codeberg.org/Mihaela/PureXML/issues/167)). XSTS settled baselines (valid schemas rejected / invalid schemas accepted / valid instances rejected / invalid instances accepted), enforced in `Tests/XSTSSuiteTests.swift`: **0 / 39 / 0 / 26**. See [`docs/roadmap.md`](docs/roadmap.md) for milestones and open tasks.
|
||||
**Current focus:** production readiness for IDE use ([#3](https://codeberg.org/Mihaela/PureXML/issues/3)). XSTS settled baselines (valid schemas rejected / invalid schemas accepted / valid instances rejected / invalid instances accepted), enforced in `Tests/XSTSSuiteTests.swift`: **0 / 8 / 0 / 4**. See [`docs/roadmap.md`](docs/roadmap.md) for milestones and open tasks.
|
||||
|
||||
PureXML is a working, dependency-free XML library today: parse, emit, validate,
|
||||
query, and stream documents on macOS, Linux, Windows, and WASM. The test suite
|
||||
@ -221,11 +224,13 @@ beyond-parity audit epics (**#71**, its parser-breadth sub-epic **#74**) and the
|
||||
parity-frontier epic (**#105**) are closed.
|
||||
|
||||
The remaining distance is **production readiness for IDE use**, tracked under epic
|
||||
**#167**: driving the XSTS conformance buckets toward zero (currently
|
||||
**0 / 39 / 0 / 26**), located schema diagnostics (#169), the schema differential
|
||||
oracle (#171), and cross-document composition (#161). The one active runner
|
||||
burn-down is **#130** (the XSLT 1.0 xalan suite). See
|
||||
[`docs/roadmap.md`](docs/roadmap.md).
|
||||
[#3](https://codeberg.org/Mihaela/PureXML/issues/3): driving the XSTS conformance
|
||||
buckets toward zero (currently **0 / 8 / 0 / 4**, gates
|
||||
[#4](https://codeberg.org/Mihaela/PureXML/issues/4) and
|
||||
[#5](https://codeberg.org/Mihaela/PureXML/issues/5)); located schema diagnostics
|
||||
and the schema differential oracle are shipped. The one active runner burn-down
|
||||
is [#7](https://codeberg.org/Mihaela/PureXML/issues/7) (the XSLT 1.0 xalan
|
||||
suite). See [`docs/roadmap.md`](docs/roadmap.md).
|
||||
|
||||
## Usage
|
||||
|
||||
|
||||
@ -1,40 +1,56 @@
|
||||
# Roadmap
|
||||
|
||||
Living index of open work. **Pin [#167](https://codeberg.org/Mihaela/PureXML/issues/167)** on GitHub for the checklist view. Released **v0.4.8** (2026-07-05); pre-1.0 until the production-readiness gates in `docs/production-readiness.md` are earned.
|
||||
Living index of open work. **Pin [#3](https://codeberg.org/Mihaela/PureXML/issues/3)**
|
||||
(production readiness for IDE use) for the checklist view. Released **v0.4.8**
|
||||
(2026-07-05); pre-1.0 until the production-readiness gates in
|
||||
`docs/production-readiness.md` are earned.
|
||||
|
||||
The tracker was rebuilt on Codeberg after the original issue history was lost
|
||||
with the GitHub repository; pre-migration issue numbers cited in older
|
||||
changelog entries and commit messages refer to that lost tracker.
|
||||
|
||||
## 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.
|
||||
1. **[#4](https://codeberg.org/Mihaela/PureXML/issues/4)**: drive invalid
|
||||
schemas accepted from 8 to 0. The remainder routes through
|
||||
`ParticleRestriction.violation`'s deliberate under-approximation
|
||||
(`docs/release-hurdles.md`, Part 1).
|
||||
2. **[#5](https://codeberg.org/Mihaela/PureXML/issues/5)**: drive invalid
|
||||
instances accepted from 4 to 0 (contested-spec and policy-dependent tail,
|
||||
`docs/xsts-deviations.md`).
|
||||
3. Proven (not capped) interactive resource bounds beyond the content matcher
|
||||
(`docs/release-hurdles.md`, Part 2; the graph-structured-stack matcher's
|
||||
linear bound is already count-asserted).
|
||||
|
||||
Parallel: **#130** (XSLT suite), **#139** (performance epic; tasks [#175](https://codeberg.org/Mihaela/PureXML/issues/175)–[#178](https://codeberg.org/Mihaela/PureXML/issues/178)).
|
||||
|
||||
**M1 done:** #171 schema differential harness (closed; opt-in; 231 XSTS oracle disagreements pinned) + generative fuzz + validation framework (#92).
|
||||
Parallel: **[#7](https://codeberg.org/Mihaela/PureXML/issues/7)** (Xalan XSLT
|
||||
suite burn-down, 26 pinned failures),
|
||||
**[#6](https://codeberg.org/Mihaela/PureXML/issues/6)** (performance epic,
|
||||
live table in `docs/benchmarks.md`).
|
||||
|
||||
## XSTS gates (current enforced baselines)
|
||||
|
||||
These mirror the ratchet asserted in `Tests/XSTSSuiteTests.swift`; update both together.
|
||||
These mirror the ratchet asserted in `Tests/XSTSSuiteTests.swift`; update both
|
||||
together.
|
||||
|
||||
| Gate | Now | Issue |
|
||||
|---|---|---|
|
||||
| Valid schemas rejected | 0 | [#148](https://codeberg.org/Mihaela/PureXML/issues/148) |
|
||||
| Invalid schemas accepted | 43 | [#145](https://codeberg.org/Mihaela/PureXML/issues/145) |
|
||||
| Valid instances rejected | 0 | [#146](https://codeberg.org/Mihaela/PureXML/issues/146) |
|
||||
| Invalid instances accepted | 31 | [#147](https://codeberg.org/Mihaela/PureXML/issues/147) |
|
||||
| Valid schemas rejected | 0 | at floor, enforced by the ratchet |
|
||||
| Invalid schemas accepted | 8 | [#4](https://codeberg.org/Mihaela/PureXML/issues/4) |
|
||||
| Valid instances rejected | 0 | at floor, enforced by the ratchet |
|
||||
| Invalid instances accepted | 4 | [#5](https://codeberg.org/Mihaela/PureXML/issues/5) |
|
||||
|
||||
Gates are **metric trackers**, not implementation tasks. Pick up **task** issues; ratchet baselines in `Tests/XSTSSuiteTests.swift` when counts fall.
|
||||
Gates are **metric trackers**, not implementation tasks. Ratchet baselines in
|
||||
`Tests/XSTSSuiteTests.swift` when counts fall; a rising count is a regression.
|
||||
|
||||
## 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 |
|
||||
| M1: Trust the oracle | Reference differentials + fuzz | done (schema determinism, facet-value, and instance differentials all land opt-in) |
|
||||
| M2: Schema compiles correctly | #4 to 0 | #4 |
|
||||
| M3: Instances validate correctly | #5 to 0 | #5 |
|
||||
| M4: IDE-ready diagnostics | Located errors, proven bounds | located diagnostics done; bounds under #3 |
|
||||
| M5: 1.0 | All gates at 0 | #3, #6, #7 |
|
||||
|
||||
## Labels
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user