learning_ai_invt_trdg/docs/CHAT_BOT_CAPABILITY_AUDIT.md
2026-05-07 06:48:29 +00:00

9.1 KiB

Chat / Bot Capability Audit

Reviewed on 2026-05-07 against the current main branch.

This audit is separate from the completed UI migration roadmap. It assesses the functional maturity of:

  • trading bot/runtime
  • realtime socket integration
  • Trade Plans automation
  • reconciliation / operational tooling
  • chat / AI assistant capabilities

Executive Summary

The app has real bot and chat functionality today. It is not a mock product.

Current maturity estimate:

Subsystem Completion Notes
Trading bot/runtime 80-85% Real execution, state recovery, order lifecycle, and user-scoped broker credentials exist.
Realtime web integration 85-90% Socket-driven state and health flows are implemented and tested.
Trade Plans automation 85% Buy/exit automation, portfolio linkage, lifecycle toasts, and setup history are in place.
Reconciliation / ops 75-80% Strong operational depth exists, but manual-review and quarantine paths are still prominent.
Chat / AI assistant 60-70% Real assistant exists, but it is still mostly profile-generation/config assistance, not a full trading copilot.
Overall product maturity 75-80% The product is functional and substantial, but not yet “quiet”, fully unified, or deeply assistant-driven.

What Exists Today

1. Trading runtime is real

Evidence:

Implemented behavior includes:

  • authenticated trading APIs
  • live trading loop
  • manual trader/profile routing
  • order and position lifecycle tracking
  • user-scoped Alpaca credential usage
  • health tracking and loop telemetry

Conclusion:

  • this is not a toy bot shell
  • execution/runtime infrastructure is one of the stronger parts of the app

2. Realtime web state is real

Evidence:

Implemented behavior includes:

  • authenticated socket connection
  • runtime symbol/order/history/alert updates
  • health and reconciliation metrics in app state
  • tested event application behavior

Conclusion:

  • realtime state propagation is substantially implemented
  • this is a strong, working foundation for trading/ops UX

3. Trade Plans are a real workflow

Evidence:

Implemented behavior includes:

  • short-term buy plans
  • profit-exit attachment to existing holdings
  • concurrent same-symbol setup support
  • long-term conversion / resume exit management
  • portfolio linkage
  • setup-level runtime events
  • setup activity history and timeline

Conclusion:

  • Trade Plans are feature-complete enough for real use
  • remaining work is mostly refinement, not existence

4. Reconciliation and ops tooling are deep

Evidence:

Implemented behavior includes:

  • reconciliation cycles
  • parity / backfill / coverage / repair services
  • health metrics and watchdog signals
  • admin reconciliation audit UI
  • operational event surfaces

Conclusion:

  • the platform has real operational depth
  • the remaining issue is not missing machinery; it is reducing how often users/admins need it

5. Chat assistant is real, but narrower

Evidence:

Implemented behavior includes:

  • authenticated /api/chat
  • LLM provider fallback chain
  • deterministic local fallback if AI output fails
  • profile create/update/explain intent
  • draft editing and apply flow in the UI
  • quick actions for common profile prompts

Conclusion:

  • this is a real assistant workflow
  • but it is still mostly “profile configuration assistant”, not a broad product copilot

Major Gaps

1. Chat is not yet a full portfolio / execution / reconciliation copilot

Current state:

  • chat can generate or modify profiles
  • chat is not yet deeply integrated into:
    • portfolio explanation
    • trade-fire reasoning
    • exit-block diagnosis
    • reconciliation guidance
    • post-trade review

Impact:

  • the product has strong underlying runtime data, but the assistant does not yet exploit it fully

Priority:

  • highest

2. Explanation surfaces are still shallow

Evidence:

Current state:

  • explanation logic is heuristic and limited
  • comments in code explicitly note simplified behavior

Impact:

  • users can see state, but not always the most useful “why” behind it

Priority:

  • high

3. Reconciliation maturity is strong, but still noisy

Current state:

  • there are many reconciliation and quarantine paths
  • this is good operationally, but it usually means the user/admin experience is still noisy

Impact:

  • reliability is protected
  • clarity and quietness can still improve

Priority:

  • high

4. Error surfaces are still uneven

Examples:

  • user-facing flows still rely on thrown messages in several places
  • some UI/runtime areas still log directly with console.error

Impact:

  • technically functional
  • not fully product-polished

Priority:

  • medium

5. Chat lacks deeper action verbs

Current state:

  • assistant handles create_profile, update_profile, explain
  • it does not clearly own richer actions like:
    • explain current position
    • explain why no trade fired
    • inspect blocked exit
    • summarize reconciliation anomalies
    • propose fix without leaving chat

Impact:

  • user expectation of “AI trading assistant” is only partially met

Priority:

  • highest

Phase A: Make chat a real copilot

  1. Add assistant intents for:
    • explain current holding
    • explain why a symbol/profile did not enter
    • explain why an exit is blocked
    • summarize reconciliation issues
    • suggest safe next actions
  2. Feed live runtime context into /api/chat:
    • holdings
    • active profiles
    • recent orders
    • recent operational events
    • reconciliation health summary
  3. Return structured action types, not only free text:
    • explain_position
    • explain_blocker
    • summarize_reconciliation
    • recommend_profile_change

Phase B: Improve explanation quality outside chat

  1. Replace heuristic-only explanation paths with lifecycle-aware reasoning
  2. Reuse the same explanation contracts in:
    • Portfolio
    • Trade Plans
    • Overview
    • Chat

Phase C: Quiet the ops layer

  1. Reduce quarantine/manual-review frequency
  2. Improve user-facing messages for blocked trades/exits
  3. Add clearer reconciliation state summaries for admins and end users

Phase D: Polish error UX

  1. unify user-safe error formatting
  2. reduce raw thrown-message exposure
  3. reduce console-noise paths in stable workflows

The chat/bot experience should be considered “substantially complete” when:

  • chat can explain active positions and blocked actions using live runtime context
  • chat can explain “why nothing happened” for a profile or symbol
  • Trade Plans, Portfolio, and Chat share consistent lifecycle reasoning
  • reconciliation remains available but becomes rarer and quieter
  • user-facing errors are product-grade instead of raw internal messages

Bottom Line

The app already has real bot functionality and a real assistant.

The biggest remaining gap is not “build chat from scratch.” It is:

  • turning the current assistant from a profile generator into a true trading copilot

That is the highest-value next product move because the runtime, socket state, Trade Plans, and reconciliation foundations are already in place.