Skip to content

Comments

fix(ui): resolve chat bounce, dashboard viewer, helper proposals, and YAML parsing#31

Merged
dimakis merged 1 commit intomainfrom
fix/chat-bounce-helpers-proposals-dashboard
Feb 14, 2026
Merged

fix(ui): resolve chat bounce, dashboard viewer, helper proposals, and YAML parsing#31
dimakis merged 1 commit intomainfrom
fix/chat-bounce-helpers-proposals-dashboard

Conversation

@dimakis
Copy link
Owner

@dimakis dimakis commented Feb 14, 2026

Summary

  • Chat bounce: Remove framer-motion layout prop from MessageBubble and ChatInput; use instant scroll during streaming, smooth only for new messages
  • Dashboard viewer: Use ha_url_remote (respecting url_preference) for iframe URL; propagate list_dashboards errors as 502 with frontend warning
  • Helper proposals: Add action_type="helper" to seek_approval with deploy handler for all 8 HA create_* methods; document in architect prompt
  • YAML parsing: Extract parse_ha_yaml() / detect_proposal_type() from schema internals; add yaml_content field to ProposalCreate; simplify frontend to a single raw YAML POST

Test plan

  • Unit tests added for helper proposal creation (3 tests), deployment (1 test), YAML parsing (4 tests), type detection (4 tests), endpoint yaml_content (2 tests), dashboard 502 (1 test)
  • All existing tests still pass (2756 total)
  • make ci-local passes (format, lint, mypy, bandit, pytest)

Made with Cursor

… YAML parsing

- Remove framer-motion layout prop from MessageBubble and ChatInput to
  stop bounce during streaming and typing. Use instant scroll for
  streaming updates, smooth only for new messages.

- Dashboard iframe now uses ha_url_remote (respecting url_preference)
  instead of the backend-internal ha_url. list_dashboards errors
  propagate as 502 with a frontend warning instead of silent empty list.

- Add action_type="helper" to seek_approval so the architect can propose
  input helper creation (input_boolean, input_number, etc.) through the
  HITL approval flow. Includes deploy handler dispatching to all 8 HA
  create_* methods and updated architect system prompt.

- Extract public parse_ha_yaml() and detect_proposal_type() from
  src/schema/core.py. Add yaml_content field to ProposalCreate so the
  backend handles all YAML parsing via the canonical pipeline. Simplify
  frontend handleCreateProposal from 70 lines to a single raw YAML POST,
  eliminating the silent catch that created empty proposals.

Co-authored-by: Cursor <cursoragent@cursor.com>
@dimakis dimakis merged commit e4b0bd8 into main Feb 14, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant