docs(todo): drop completed backlog items
The shared-dispatch refactor and the allocation-free `bind_document` change have landed, so their backlog entries no longer describe work to be done.
This commit is contained in:
@@ -1,20 +1 @@
|
||||
# TODO
|
||||
|
||||
- Unify the schema dispatch shared by validation and navigation.
|
||||
`child_schemas` (`src/schema/matcher.rs`) re-implements the property and
|
||||
item dispatch that `check_object` and `check_array` already encode: the
|
||||
same `properties` lookup, `patternProperties` loop with the
|
||||
unsupported-regex fallback, `additionalProperties` fall-through, and
|
||||
`prefixItems`/`items` cascade. The copies have already drifted once
|
||||
(`check_array` accepts a boolean `items` schema, `child_schemas` ignores
|
||||
it). Extract shared helpers that yield the subschemas applying to a given
|
||||
key or index, and have both validation and completion consume them.
|
||||
|
||||
- Make `SchemaStore::bind_document` (`src/schema/store.rs`) allocation-free
|
||||
in the steady state. It runs on every change and clones `doc.uri` and the
|
||||
detected URL to re-insert a `doc_schema` entry that is almost always
|
||||
unchanged. When the URL is already in `auto_attempted` it clones the URL
|
||||
again for an insert that always fails, and clones `doc.uri` for a `waiting`
|
||||
insert that is a no-op after the first change. Look entries up first and
|
||||
only insert when the detected URL differs or the document is not yet
|
||||
recorded, so a keystroke does lookups without allocations.
|
||||
|
||||
Reference in New Issue
Block a user