Read PR, linked issues, and source files.
UnderstandFixed missing setter modification for settings persistence.
EditConfirmed fix worked and committed changes.
VerifyYou are given one or more GitHub PR URLs: https://github.com/badlogic/pi-mono/pull/972
For each PR URL, do the following in order:
packages/*/CHANGELOG.md files. Report whether an entry exists. If missing, state that a changelog entry is required before merge and that you will add it if the user decides to merge. Follow the changelog format rules in AGENTS.md. Verify:
### Breaking Changes, ### Added, ### Fixed, etc.)Fixed foo ([#123](https://github.com/badlogic/pi-mono/pull/123) by [@user](https://github.com/user))### Breaking Changes, not just ### FixedOutput format per PR: PR: Changelog:
If no issues are found, say so under Bad and Ugly.
Now let me read the linked issue #916 and check the existing source files:
Let me read the rest of the editor.ts file and check for changelog entries:
Let me check the current state of the relevant files and look at the PR review comment:
Let me check for inline review comments:
Let me check the interactive-mode.ts to understand the editor pattern:
Now I have all the information needed to provide a complete review.
PR: https://github.com/badlogic/pi-mono/pull/972
packages/tui/CHANGELOG.md or packages/coding-agent/CHANGELOG.mdpackages/tui/CHANGELOG.md: ### Added - autocompleteMaxVisible option in EditorOptions with getter/setter methodspackages/coding-agent/CHANGELOG.md: ### Added - autocompleteMaxVisible setting for configurable autocomplete dropdown height (attribution to @masonc15)editorPaddingX pattern consistently across both packagesMath.max(3, Math.min(20, Math.floor(maxVisible))) in both settings-manager and EditorNumber.isFinite() for defensive validation in the Editor componentsettings.md with the new settinginteractive-mode.ts, the onAutocompleteMaxVisibleChange callback uses this.defaultEditor.setAutocompleteMaxVisible(maxVisible) but should follow the editorPaddingX pattern which also updates this.editor when a custom editor is active. The pattern is:
this.defaultEditor.setAutocompleteMaxVisible(maxVisible);if (this.editor !== this.defaultEditor && this.editor.setAutocompleteMaxVisible !== undefined) { this.editor.setAutocompleteMaxVisible(maxVisible);}pkg:tui and pkg:coding-agent labels on the PRpackages/tui/src/components/editor.ts: Adds autocompleteMaxVisible field to EditorOptions and Editor class with getter/setter, uses it in SelectList creation (replaces hardcoded 5)packages/coding-agent/src/core/settings-manager.ts: Adds autocompleteMaxVisible to Settings interface with getter/setterpackages/coding-agent/src/modes/interactive/components/settings-selector.ts: Adds UI toggle with preset valuespackages/coding-agent/src/modes/interactive/interactive-mode.ts: Passes setting to editor, wires up callbackpackages/coding-agent/docs/settings.md: Documents the new settingmerge via gh cli, pull from origin, fix the review shit
Now let me fix the review issue in interactive-mode.ts:
Now add the changelog entries:
Done. Merged PR #972 to main with fixes:
this.defaultEditor.setAutocompleteMaxVisible() to also update this.editor when a custom editor is active (following the editorPaddingX pattern)setAutocompleteMaxVisible to EditorComponent interface for type safetypackages/tui/CHANGELOG.md and packages/coding-agent/CHANGELOG.md with proper attribution to @masonc15autocompleteState pattern on main)when i change the max lines autocomplete shit in /settings, it is applied (e.g. 5 -> 10), but if i then open /settings again it shows 5
Found it. Missing markModified() call:
Fixed. The setter was missing markModified("autocompleteMaxVisible") which is required for settings to persist after the recent external-edit preservation change.
works, commit and push
just the file(s) you modified, no other file that's changed on disk, another agent is working on that
Already done - committed and pushed in the previous step. The uncommitted changelog changes are from the other agent.
this.defaultEditor.setAutocompleteMaxVisible(maxVisible);if (this.editor !== this.defaultEditor && this.editor.setAutocompleteMaxVisible !== undefined) { this.editor.setAutocompleteMaxVisible(maxVisible);}