feat: add action_type and focal_node_id to AI chat message API

- Add VALID_ACTION_TYPES literal and action_type/focal_node_id fields to
  AIChatMessageRequest schema
- Add tree_id field to AIChatStartRequest schema for editor-embedded sessions
- Update send_message() signature with action_type and focal_node_id params
- Update start_chat_session() signature with tree_id param
- Pass new params through endpoints to service functions
- All new params have defaults so existing behavior is unchanged

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
chihlasm
2026-03-06 23:23:11 -05:00
parent cfd6ebff63
commit 41b7cd86b8
3 changed files with 31 additions and 1 deletions

View File

@@ -95,6 +95,7 @@ async def create_session(
user_id=current_user.id,
account_id=current_user.account_id,
db=db,
tree_id=data.tree_id,
)
except Exception as e:
logger.exception("AI chat session start failed: %s", e)
@@ -168,7 +169,9 @@ async def post_message(
try:
ai_content, tree_update, new_phase, metadata = await send_message(
session, data.content, db
session, data.content, db,
action_type=data.action_type or "open_chat",
focal_node_id=data.focal_node_id,
)
except Exception as e:
logger.exception("AI chat message failed: %s", e)