Migration: v0.17 → v0.18¶
v0.18 is the Protégé Desktop parity gate: last-mile fidelity, fixtures, migration docs, and honesty about remaining gaps before the 1.0 push.
Scope: v0.18_SCOPE.md · Assessment: ONTOCODE_0.18_PROTEGE_PARITY_ASSESSMENT.md on GitHub.
What changed¶
Reasoner lifecycle¶
- Start opens the Reasoner panel and classifies.
- Synchronize reindexes the workspace, then classifies.
- Classify runs classification only.
- Consistency classifies and reports consistency messaging.
- Stop cancels the in-flight client LSP request and ignores late results (the server may still finish CPU-bound classify work).
Explanations¶
- Stale banner wires to catalog fingerprint (
content_hash/indexed_at) when the catalog changes while the Explanation panel stays open. - Re-run regenerates a fresh explanation.
Layout persistence¶
- Serializers still keep webview tabs across reload.
- Restored tabs offer Reopen panel, which re-runs the last saved command + args (entity IRI, graph context, etc.) instead of a dead recovery-only page.
Scale / a11y¶
- Graph truncation messaging is clearer for large ontologies.
- Explanation, Reasoner, and restore chrome gain basic ARIA / focus-visible affordances.
Fixtures & docs¶
- Expanded
examples/protege-roundtrip/coverage intests/protege_roundtrip.rs(people, chains, annotations, classify workflow, broken-import regression). - Protégé migration guide refreshed for v0.18 with an honest desktop known-gap list.
Breaking changes¶
None known in v0.18.0. Behavior changes are additive (cancel, reopen, stale UX).
Upgrade notes¶
- Update CI pins:
cargo install ontocore-cli --locked --version 0.18.2(or stay on an earlier0.18.xuntil you take the latest patch notes). - Re-read known-limitations — OWL/XML write-back and semantic undo remain v1.0.
- If you relied on Stop being UI-only, note that Stop now cancels the client request.