Repository navigation
Use shared forms for all advertised session settings - #1748
Merged
Merged
Conversation
|
debt-src at 35bddb6 blocks on 23 lines: Warn-only, never blocks (4) |
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
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.
One declaration per configuration field
Focused evidence: 79 Core cases passed; the remaining original gate case exposed an existing user-notice fallback, which is repaired and passed unchanged separately. All 10 advertisement/model-picker cases passed. No CI wait or full-suite claim. An earlier native-bearing attempt stopped during pinned-Pi preparation, so it supplies no native-run result. The migrated native editor/queue consumer was read, not rerun.
Rule policy is a configuration record
RuleGateSettings owns mode, read batch, prompt count and context-refresh thresholds. DealRecord inherits those fields; both CLI addresses inherit the same fields and writer. The native thread menu offers the existing deal through the normal command form. Reading/audit evidence survives edits; widening and re-dealing preserve policy. Invalid bounds are rejected from those annotations at the writer.
Stored session fields supply catalog presentation
Thread inherits ThreadSettings. Model, thinking and service-tier catalog implementations inherit their low field roles; labels, help and current values derive from the actual fields. Three handwritten current-value getters and three copied presentation declarations are gone. Dynamic catalog acquisition, cancellation/auth invalidation and actual native write effects remain with their existing owners. Decoder choice capability selects finite editors; record payloads and flag combinations remain unrestricted.
Every ACP advertisement reaches the shared form
Paired Toad PR: #1748
The session menu uses ObjectState/FormBridge like preferences and command dialogs. Unknown select fields and booleans need no new frontend class. The projected fields retain their original advertisement and writer; duplicate ids and ambiguous built-in roles refuse. Model search/recents/provider setup are a form editor using the original shared picker. Editing leaves the form open; thinking is edited there instead of a second ad-hoc popup. Hidden forms remain lazy and refresh from their retained source when reopened.
Original gate failure repaired at its owner
UserThreadRole replaced a task's empty user-fact answer with a default, turning Core notices into human prompts. TaskAttachment now owns the default; OwnerNotice's empty override survives. The original assertion was retained and passed.
Assumed: built-in ACP roles must be unambiguous when queried; arbitrary external field identity and value remain supplied by the actual advertisement. Native thread gate editing requires an existing dealt session and never fabricates one. Local preferences and served session policy keep their distinct storage and authority.