Skip to content

Feature Catalogue

Product capability reference

This catalogue describes capabilities represented in the WhiteLotusAI repository1. It separates evidence of implementation from proof of successful runtime behavior.

Documentation status: source-inspected baseline

The entries below record implementation or configuration evidence identified during source inspection. This page does not certify runtime operation, security, release readiness, or end-to-end test coverage. Update a feature's status only when the relevant acceptance evidence is available.

1. Purpose and interpretation

This document is the working catalogue of product capabilities represented in the current WhiteLotusAI source code. It is intended to help product, engineering, QA, security, and operations teams understand what is present and what remains to be demonstrated.

Four evidence states must be kept distinct:

Evidence state Meaning What it does not prove
Source present A corresponding implementation, route, configuration entry, or tool definition exists. That it is complete, configured, or usable.
Registered The chat service registers the plugin during startup, according to the inspected source. That provider authorization or API requests succeed.
Frontend listed The frontend catalogue contains an integration entry or flag. That the integration is enabled, connected, or healthy.
Runtime verified Defined acceptance criteria have passed in a representative environment and evidence is recorded. That untested paths or all provider configurations are verified.

Do not equate source presence with a working feature

A code path can be incomplete, misconfigured, unavailable due to credentials or provider access, or untested. Use Verified only for the specific operation and behavior for which evidence exists.

2. Capability summary

Capability area Evidence identified in repository Current verification requirement
Conversational AI and orchestration Chat service, agent workflow, and model-provider configuration Validate representative prompts, response generation, tool selection, and failure handling.
Streaming responses Frontend and backend streaming paths Verify full end-to-end stream completion, disconnects, errors, and cancellation behavior.
Session management Session-related routes and worker code Test creation, listing, switching, deletion, and authorization boundaries.
Authentication and profiles Authentication and profile-related API code Complete functional and security testing, including token and session lifecycle.
Knowledge base and retrieval RAG service and document-processing code Test ingestion, retrieval relevance, data isolation, and failure behavior.
Plugin registry Startup registration and tool registry Verify runtime registration and the behavior of each dispatched tool.
Plugin permissions Tool categories, permission checks, and confirmation handling Test authorization policy and denied/negative paths, including alternate dispatch paths.
External integrations Six plugin implementations Verify OAuth or connection setup, provider access, and every operation in scope.
Docker deployment Local and production Compose configurations Perform environment-specific deployment and operational checks.

3. Conversational AI and orchestration

The repository contains a chat service, agent workflow code, model-provider configuration, and plugin tool-dispatch functionality. The inspected implementation includes the following feature areas:

  • Chat request processing and response generation.
  • Streaming-related response paths.
  • Agent nodes for intent handling and tool execution.
  • Plugin discovery and dispatch.
  • Permission checks and confirmation handling for write-capable operations.
  • Plugin connectivity checks and tool-call metrics.

The diagram below is a conceptual view of the feature path, not a deployment diagram or guarantee that every branch currently passes acceptance tests.

flowchart TD
    A(["User Request"])
    B["Chat Processing"]
    C["Agent Workflow"]
    D["Intent and Context Handling"]
    E{"Need a Provider Tool?"}
    F["Model Response"]
    G["Tool Discovery and Dispatch"]
    H["Permission and Policy Checks"]
    I["Provider Operation"]
    J["Result Formatting"]
    K(["Response Delivery"])

    A --> B
    B --> C
    C --> D
    D --> E
    E -->|No| F
    E -->|Yes| G
    G --> H
    H --> I
    I --> J
    F --> K
    J --> K

    %% Pastel fills and colored outlines.
    classDef request fill:#E8F0FE,stroke:#4F83CC,stroke-width:1.5px,color:#23345B
    classDef orchestration fill:#EDE9FE,stroke:#7C3AED,stroke-width:1.5px,color:#3B267A
    classDef processing fill:#E0F7FA,stroke:#0891B2,stroke-width:1.5px,color:#164E63
    classDef authorization fill:#FFF2CC,stroke:#D97706,stroke-width:1.5px,color:#7C3E00
    classDef response fill:#DDF5E5,stroke:#25804B,stroke-width:1.5px,color:#16452B
    classDef decision fill:#FCE8E6,stroke:#C2410C,stroke-width:2px,color:#7F2718

    class A request
    class B,C,D orchestration
    class F,G,I processing
    class H authorization
    class J,K response
    class E decision

    %% Theme-independent connector styling.
    linkStyle default stroke:#9CA3AF,stroke-width:1.3px

What must be verified

  • Intent classification and tool selection for clear, ambiguous, and multi-part requests.
  • Whether streaming starts, continues, and terminates correctly under normal and error conditions.
  • Provider timeouts, invalid credentials, unavailable dependencies, and malformed tool responses.
  • Retry behavior and whether a failed operation can be executed more than once.
  • Permission checks across all registered tools and dispatch paths.
  • Whether monitoring and tool-call metrics capture success and failure accurately.

Evidence discipline

The existence of orchestration nodes does not prove that every user workflow, response quality target, retry path, or recovery behavior works correctly.

4. External integration catalogue

4.1 Registered plugins and frontend catalogue flags

The inspected chat-service startup code registers six plugin implementations:

Integration Backend implementation label Frontend catalogue flag in inspected source
Google Gmail Email plugin live: true
Google Calendar Google Calendar plugin live: true
Google Drive Google Drive plugin live: true
Microsoft Teams Teams plugin live: false
Jira Jira plugin live: true
Slack Slack plugin live: true

A catalogue flag is not a health check

The frontend live flag is a catalogue setting only. Backend registration likewise does not prove that OAuth, credentials, provider APIs, tenant settings, or a user's connection are functioning. Microsoft Teams is marked live: false in the inspected frontend catalogue, so its user-facing availability must be treated as unverified until tested.

4.2 Operation inventory

The lists below reflect tool definitions recorded during source inspection. They are an inventory of declared operations, not an endorsement that they should be available in the initial read-only release.

Read-capable operations

  • list_projects
  • search_issues
  • get_issue

Write-capable operation

  • create_issue

Read-only release boundary

Issue creation is declared in source and must be excluded or denied in the initial read-only release.

More details: Visit the Jira Integration.

Read-capable operations

  • list_channels
  • get_channel_history

Write-capable operation

  • send_message

Read-only release boundary

Sending a message is outside the initial read-only scope and must not be executable in that release.

More details: Visit the Slack Integration.

Read-capable operations

  • list_files
  • search_files
  • get_file
  • search_by_type
  • search_by_date
  • search_shared_files
  • search_starred_files
  • list_folders
  • list_permissions

Write-capable operations

  • create_folder
  • move_file
  • create_file
  • delete_file
  • rename_file
  • copy_file
  • star_file
  • share_file
  • remove_permission

Read-only release boundary

File creation, movement, renaming, deletion, copying, sharing, starring, and permission changes are outside a strictly read-only scope.

More details: Visit the Google Drive Integration.

Read-capable operations

  • gmail_query
  • get_inbox_stats
  • read_inbox
  • get_email
  • get_thread
  • list_attachments
  • download_attachment
  • read_drafts
  • list_labels

Write-capable operations

  • draft_email
  • send_email
  • reply_email
  • forward_email
  • modify_labels
  • mark_read
  • mark_unread
  • archive_email
  • star_email

Destructive operation

  • trash_email

Read-only release boundary

The source contains draft creation, sending, replies, forwarding, label changes, mailbox state changes, and a destructive trash operation. These tools must be excluded or reliably denied while the approved release scope is read-only.

More details: Visit the Gmail Integration.

Read-capable operations

  • list_events

Write-capable operations

  • create_event
  • delete_event

Deletion classification

The inspected source categorizes delete_event as WRITE. Do not assume it receives stricter destructive-operation handling unless the actual policy and dispatch behavior are verified.

More details: Visit the Google Calendar Integration.

Read-capable operations

  • list_teams
  • list_channels
  • get_messages
  • get_user_info
  • list_members
  • search_messages

Write-capable operation

  • send_message

Availability not established

The inspected frontend catalogue sets the Teams live flag to false. Verify configuration, connection flows, provider permissions, and representative read operations before claiming user-facing availability.

More details: Visit the Microsoft Teams Integration.

5. Read-only scope and permission policy

The initial product requirement is read-only access to the six integrations. However, the inspected source defines tools beyond read-only operations, so the presence of permission categories and confirmation flows must not be described as proof of strict read-only enforcement.

The plugin framework defines four operation categories:

Category Meaning in the inspected framework Read-only release expectation
READ Read-oriented operation Allow only after normal authorization checks pass.
WRITE State-changing operation Deny in the read-only release.
DESTRUCTIVE Destructive operation Deny in the read-only release.
UTILITY Utility operation Allow only if explicitly reviewed and safe for the release.

The default policy described in the inspected source allows READ and UTILITY, requires confirmation for WRITE, and denies DESTRUCTIVE. The registry also checks permissions during dispatch and requires confirmation for write-capable and destructive tools. This is a confirmation/permission mechanism; it is not, by itself, a strict read-only policy.

Required controls before claiming read-only compliance

  1. Define an explicit release policy that denies all write and destructive integration operations.
  2. Enforce that policy in trusted backend dispatch code—not only in the frontend, tool descriptions, or model instructions.
  3. Apply the policy consistently to every registered tool and every route or dispatch path.
  4. Prove that each write-capable tool is denied even when a caller attempts to confirm the operation.
  5. Test direct and alternate execution paths, including MCP-related paths where applicable.
  6. Verify that read operations cannot bypass authorization or access another user's data.
  7. Record automated and manual evidence in the Security and Testing documentation.

Release-blocking finding

Until the controls above are implemented and tested, describe the integrations as read-capable implementations with additional write-capable operations present in source—not as fully enforced read-only integrations.

Illustrative policy shape — not production code
def is_allowed_in_read_only_release(operation_category: str) -> bool:
    """Conceptual rule; adapt it to the repository's trusted policy layer."""
    return operation_category == "READ"

The snippet illustrates the intended rule only. It does not represent a verified implementation or replace the repository's actual authorization and dispatch code. If a utility is required, allowlist it explicitly after review rather than automatically treating all utility tools as safe.

6. Identity, sessions, and user data

The repository contains authentication-related routes, profile operations, session-related processing, and database models or migrations supporting application state. The following behaviors need functional and security verification:

  • Registration and login.
  • Authentication token handling and refresh.
  • Logout and session invalidation.
  • Profile retrieval and updates.
  • Password-change flows.
  • Session creation, listing, switching, and deletion.
  • Authorization boundaries for user-specific data.
  • Failure handling when backing services are unavailable.

Security-sensitive behavior

Do not infer that authentication, session invalidation, or access isolation is secure merely because a corresponding route, model, migration, or code path exists. Verify both successful and denied scenarios.

7. Knowledge base and retrieval

The repository includes a retrieval-augmented generation (RAG) service and document-processing functionality. The intended feature area includes document ingestion, retrieval, and interaction with stored knowledge.

Before publishing specific guarantees, verify the following:

  • Supported document formats and file-size limits.
  • Ingestion success, partial failure, and retry behavior.
  • Retrieval relevance and grounding of generated answers.
  • Document deletion, retention, and data lifecycle behavior.
  • User-level access controls and tenant/data isolation.
  • Behavior when the retrieval service or embedding provider is unavailable.
  • Treatment of malformed, empty, duplicated, or unsupported documents.

Do not publish unsupported claims about retrieval accuracy, throughput, ingestion capacity, or supported file formats. Record tested limits and the environment used for each measurement.

8. Deployment and operations

The repository contains Docker Compose configurations for local and production use. The inspected production configuration also defines frontend delivery through Nginx and a Certbot renewal process.

Deployment documentation and release tests should establish:

  • Exact services, ports, and service dependencies in each environment.
  • Required environment variables and secret-management practices.
  • Health-check behavior and startup ordering.
  • Database and message-broker initialization and migrations.
  • TLS certificate issuance, renewal, and HTTPS routing.
  • Backup and restore procedures.
  • Monitoring, alerting, and incident-response procedures.

A Compose file is evidence of intended configuration; it is not proof of a successful or secure production deployment.

9. Feature lifecycle and evidence standard

Use the following lifecycle statuses consistently. Assign status to an individual feature or operation instead of applying one label to an entire integration when operations have different evidence levels.

Status Definition Minimum evidence expectation
Proposed Identified for consideration; implementation is not established. Requirement or proposal recorded.
In development Implementation work is in progress. Work item and implementation activity identified.
Implemented A corresponding code path exists and relevant basic checks pass. Source/configuration review and basic checks recorded.
Verified Defined acceptance criteria have passed with recorded evidence. Test results identify environment, scenario, result, and date/version.
Deprecated Scheduled for removal or replacement. Replacement/removal plan and affected consumers identified.
Blocked A dependency, defect, or decision prevents completion. Blocker, owner, and next action recorded.

Keep verification claims narrow

If list_events passes its acceptance tests, that does not verify create_event, OAuth renewal, or every Calendar tenant configuration. Record evidence at the smallest meaningful operation or behavior level.

10. Acceptance and release checklist

Use this checklist when promoting a feature from Implemented to Verified. Mark items only when evidence exists.

  • Expected user behavior and explicit exclusions are documented.
  • Source implementation and configuration have been inspected.
  • Authentication, authorization, and user-data boundaries have been tested.
  • Read-only restrictions are enforced in trusted backend code.
  • Write and destructive operations are denied in the read-only release.
  • Denial remains effective when confirmation is supplied or alternate dispatch paths are used.
  • Success, failure, timeout, malformed-response, and provider-unavailable scenarios are tested.
  • Automated results and required manual test evidence are recorded.
  • Known limitations and release dependencies are documented.
  • Published statements match the tested behavior and actual release configuration.

11. Review and maintenance

Review this catalogue whenever plugin tools, authorization policies, API behavior, product scope, model-provider configuration, document processing, or deployment configuration changes.

For every update:

  1. Inspect the relevant source and configuration.
  2. Identify which statements changed and whether operation classifications changed.
  3. Run the applicable unit, integration, security, and end-to-end tests.
  4. Update the relevant integration, Security, Testing, and release documentation.
  5. Change a feature to Verified only when its acceptance evidence is available.
Integration overview

Review the connected-provider landscape and individual integration references.

Explore integrations
Security overview

Review security principles, access boundaries, and policy expectations.

Review security
Read-only test plan

Inspect the test coverage required for read-only provider behavior.

View test plan
System architecture

Understand the system's documented components and their responsibilities.

Explore architecture

  1. Source-inspected means the corresponding statement was identified during repository review. It does not indicate that the feature was executed or independently verified at runtime. ↩