Skip to content

Fix Pi Villani UI status and approval copy#415

Merged
mmprotest merged 1 commit into
mmprotest/implement-pi-integration-as-external-adapterfrom
mmprotest/fix-pi-villani-ui-copy-issues
Jun 29, 2026
Merged

Fix Pi Villani UI status and approval copy#415
mmprotest merged 1 commit into
mmprotest/implement-pi-integration-as-external-adapterfrom
mmprotest/fix-pi-villani-ui-copy-issues

Conversation

@mmprotest

Copy link
Copy Markdown
Owner

Motivation

  • Reduce repetitive and noisy UI statuses (e.g. repeated "Villani is make plan..." / "Villani is thinking...") by updating when meaningful state changes occur instead of on every model/proxy heartbeat.
  • Make approval UI clear and Villani-styled while preserving literal command/file details so approval prompts are informative and avoid generic or leaking values like [object Object] or Pending approval.

Description

  • Added an approval copy category and approval-specific phrases in integrations/pi-villani/src/render.ts via VILLANI_COPY and VillaniCopyCategory updates.
  • Introduced a throttled status manager with nextVillaniStatus, shouldUpdateStatus, resetVillaniStatusManager, and currentStatusFallback to suppress repeated rotations and only change status on category/detail/time transitions.
  • Reworked reduceVillaniUiState and renderState to use nextVillaniStatus(...) and avoid re-rendering identical status strings, and kept stream_text assistant output literal via cleanAssistantText.
  • Replaced hardcoded status strings and updated approval flow in integrations/pi-villani/src/index.ts to use Villani-style titles and messages (approvalTitle, approvalLead, approvalMessage), set the approval widget to Villaniclearance required, and use nextVillaniStatus("approval", requestId) for approval status updates.
  • Updated tests and added new unit tests in integrations/pi-villani/src/*.test.ts to cover throttling, approval copy, widget content, and preservation of literal assistant stream text.

Testing

  • Ran the integration test suite with npm test inside integrations/pi-villani, and all tests passed (93 tests, 0 failures).
  • Existing rendering and approval unit tests were updated/extended and executed successfully (see integrations/pi-villani/src/render.test.ts and integrations/pi-villani/src/extension.test.ts).

Codex Task

@mmprotest mmprotest merged commit 304a100 into mmprotest/implement-pi-integration-as-external-adapter Jun 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant