Repository navigation
fix: transfer parked service fixes, cursor hover and section ranges - #5
Merged
Merged
Conversation
P6 places a parameter synthesized for an undeclared URI variable at its resource's key, so the authored view counted it as written there and the outline listed a `uriParameters` section nobody wrote. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`missing-description` placed the API at its fragment's root node, which only a parse retaining the YAML trees has: the language service keeps none for the default rules, so the finding sat at an unknown position and its suppression directive could not apply. It now reads the `title` in force from the model, the one an Overlay or Extension wrote when it replaced it. The lint command therefore keeps the text, which suppression reads, and the trees only when an enabled rule needs them (`Linter.requires_source`). No benchmark workload runs this path: `unwrap+lint` enables every ruleset, which includes a source-sensitive rule. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A worker failure on either side was reported as "not comparable", so a broken current tree read like a feature the base revision lacks. The base side may still be unavailable, and B then completes its rounds; a failure in B ends the command with status 1 and the worker's output. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`docs/12` § 5 said a service workload's first-use composition was avoidable only by retaining the trees, which § 5.2 and the recovery plan no longer hold; § 5.2 already says how to read parse, first-use and warm costs. The `docs/21` § 5 latency paragraph quoted a 2026-09-28 run and a compose cache no longer planned. Dated measurements belong in `docs/reports/`, which `docs/README.md` now describes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The overlay loader hands the parse a buffer's encoded bytes, so each snapshot retained its own decoded copy of every open file beside the buffer's. Where the two are equal the snapshot now keeps the buffer's string; a buffer with a leading BOM keeps the parse's BOM-free text. `bench ab HEAD --bench service-session --config unwrap`, 5 rounds: time within noise (107.5 %); peak 35.62 -> 35.31 MB (-0.9 %); retained 27.81 -> 27.50 MB (-1.1 %). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The first hover in a file sorted every key the grammar walk yields and scanned each type value for built-in tokens, an index kept for the snapshot's lifetime (15,203 keys and 2.6 MB on the hover corpus). Hover now reads only the keys enclosing the cursor, `syntax.keys_at`, one per mapping level found by binary search, and the built-in tokens of the one type value the cursor is in. A token's offset is taken as its column where the scalar's one-line span is its text or its text in quotes, instead of splitting the file to compare. Over the TCK, the path reaches every key the walk yields. `bench ab HEAD --bench hover --bench service-session --config unwrap`, 5 rounds: - hover: time within noise (16.2 %); peak unchanged; retained 26.29 -> 23.71 MB (-9.8 %). - service-session: 1260.5 -> 1142.8 ms (-9.3 %, noise 7.4 %); peak unchanged; retained 27.50 -> 24.87 MB (-9.6 %). `bench linearity --bench hover`: time 0.992, peak 0.992, retained 0.998. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The dated report holds the scope, reach and measurements; the recovery plan's execution record and docs/15 now name accurate authored section ranges as the remaining candidate, recorded by the parser. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The model kept no position for a section key, so the outline spanned a section's entries and selected the first, omitted an empty section, named a `schemas:` table `types`, and placed what an Extension restated under a master resource at its first entry. Decoders now record each section key an entity wrote in its own file in `Raml.written_sections`, by file: the root's tables and settings, a type's `facets:`, a resource's `uriParameters:`, a method's and a `describedBy:`'s parameter groups and `body:`, a response's `headers:` and `body:`. Each Overlay or Extension document's root keys and resource paths are recorded from its own tree before the merge, which keeps the master's key. A key is recorded only inside its owner's span, and not under a method or response a template wrote, which no outline lists. `bench ab HEAD --config unwrap`, 5-7 rounds: time within noise on endpoints, templates, large, service-navigation and service-session. Retained: endpoints 17.48 -> 17.77 MB (+1.65 %, inside the reported noise; 2,000 response `body:` keys), templates unchanged, large +0.3 %, service-navigation +0.5 %, service-session +0.3 %. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The dated report holds the scope, the rejected first measurement and the final one; docs/15 and the recovery plan's execution record name the retained-allocation trade-off and that no Stage C candidate remains. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
missing-descriptionfinding at itstitlefrom the model; thelintcommand keeps YAML trees only when an enabled rule needs them.bench abwhen this tree's worker fails, rather than reporting "not comparable".docs/12anddocs/21; describedocs/reports/indocs/README.md.syntax.keys_at) instead of a whole-file key index.Raml.written_sectionsand place outline sections at them: empty sections,schemas:, and an Extension's owntypes:and restated resources.Performance and acceptance
service-session: retained -1.1%, peak -0.9%, time within noise.service-session-9.3% time (7.4% noise), retained -9.6%;hoverretained -9.8%, time within noise. Hover linearity: time 0.992, retained 0.998.endpoints,templates,large,service-navigation,service-session. Retainedendpoints+1.65% (inside the reported noise),large+0.3%, service workloads up to +0.5%; this trade-off is accepted.Reports:
docs/reports/2026-10-11/service-cursor-hover.md,docs/reports/2026-10-11/service-section-ranges.md.Verification
🤖 Generated with Claude Code