Newer
Older
cortex-hub / ai-hub / integration_tests / API_COVERAGE.md

Integration Test API Coverage & Todo List

This document tracks which core system backend endpoints are covered natively by the E2E Integration Test Suite (run_integration_tests.sh).

Todo Works

  • Parse mapping of remaining APIs from all markdown files in docs/api_reference/ to complete the checklist.
  • Build a generic test_audio.py integration spec (Targeting STT and TTS routing).
  • Build a test_agent_nodes_sandbox.py spec for deep sandbox edge cases to ensure workspace restrictions work.
  • Fully map coverage for the /models endpoints to test_provider_config.py.
  • Write missing tests for /users/me/profile endpoints.
  • Review /skills and /knowledge mapping against test_browser_llm.py which only touches standard capability mapping.

Covered APIs

Agent Nodes (/nodes & /fs)

Covered by:

  • integration_tests/test_node_registration.py (Node Lifecycle)
  • integration_tests/test_file_sync.py (Cross-Nodes File System Integrity Validation)
  • POST /nodes/admin (Register Node)
  • GET /nodes/admin (List All Nodes)
  • GET /nodes/admin/{node_id} (Get Node Detail)
  • PATCH /nodes/admin/{node_id} (Update Node Config)
  • POST /nodes/admin/{node_id}/access (Grant Group Access)
  • DELETE /nodes/admin/{node_id}/access/{group_id} (Revoke Group Access)
  • GET /nodes/admin/{node_id}/config.yaml (Download config)
  • GET /nodes/provision/{node_id} (Fetch provision script)
  • GET /nodes/admin/{node_id}/download (Download ZIP)
  • DELETE /nodes/admin/{node_id} (Deregister Node)
  • POST /nodes/admin/mesh/reset (Emergency Reset)
  • GET /nodes/ (List Accessible Nodes)
  • GET /nodes/{node_id}/status (Online Check)
  • GET /nodes/{node_id}/terminal (Terminal History)
  • POST /nodes/{node_id}/dispatch (Dispatch Command)
  • POST /nodes/{node_id}/cancel (Cancel Task)
  • PATCH /nodes/preferences (Update User DB Prefs)
  • GET /nodes/preferences (Get User DB Prefs)
  • POST /nodes/validate-token (Internal Validator)
  • GET /nodes/{node_id}/fs/ls (List Dir)
  • GET /nodes/{node_id}/fs/cat (Read File)
  • POST /nodes/{node_id}/fs/touch (Create File/Dir)
  • GET /nodes/{node_id}/fs/download (Download File stream)
  • POST /nodes/{node_id}/fs/upload (Upload File stream)
  • POST /nodes/{node_id}/fs/rm (Delete File/Dir)

Users / Auth (/users)

Covered roughly by integration_tests/test_login.py

  • POST /users/login/local (Perform Day 1 Local Login)
  • Check full coverage against api_reference/users.md for remaining methods

Sessions (/sessions)

Covered roughly by integration_tests/test_llm_chat.py and test_browser_llm.py

  • POST /sessions (Create Inference Session)
  • POST /sessions/{id}/chat (Inference Streaming Chat via Server-Sent Events)
  • DELETE /sessions/{id} (Archive Session and Wipe Linked Storage)
  • Check full coverage against api_reference/sessions.md

LLM / Provider Config (/users/me/config & /models)

Covered roughly by integration_tests/test_provider_config.py

  • POST /users/me/config/verify_llm (Config validation proxy ping before save)
  • PUT /users/me/config (Apply Provider Key Update)
  • GET /users/me/config (Get Personal Setting Mapping)
  • GET /users/me/config/models (Get Models for Provider)

Audio Pipeline (STT & TTS)

Covered by integration_tests/test_audio.py

  • GET /speech/voices (List available TTS voices)
  • POST /speech (Generate speech from text)
  • POST /stt/transcribe (Transcribe audio to text)