Skip to content

Add non-invasive CAVE integration spike (docs + adapter scaffold + tests)#145

Closed
akgohain wants to merge 1 commit intomainfrom
codex/add-cave-integration-spike-documentation-sc8oj1
Closed

Add non-invasive CAVE integration spike (docs + adapter scaffold + tests)#145
akgohain wants to merge 1 commit intomainfrom
codex/add-cave-integration-spike-documentation-sc8oj1

Conversation

@akgohain
Copy link
Copy Markdown
Collaborator

Motivation

  • Provide a lightweight, non-invasive spike that documents how this app could integrate with CAVE-compatible pipelines without changing runtime behavior.
  • Surface input/output contracts, mapping rules, and deployment/auth/network TODOs so implementation can proceed safely behind a non-default path.

Description

  • Add a spike document at docs/integrations/cave-integration-spike.md that describes target use case, adapter input/output contracts, artifact→CAVE concept mapping, proposed opt-in flow, TODOs for auth/network/deploy, and actionable next steps.
  • Add an inert adapter scaffold at server_api/workflow/cave_adapter.py defining typed dataclasses (WorkflowArtifact, CavePayload, CaveResult) and an interface class CaveWorkflowAdapter whose methods build_payload and parse_result deliberately raise NotImplementedError.
  • Add contract tests in tests/test_cave_adapter_contract.py that explicitly load the adapter module to verify it produces no side effects on import and that adapter methods remain stubbed.
  • Ensure the adapter is opt-in and does not alter any existing routes, startup behavior, or runtime paths.

Testing

  • Ran python -m pytest -q tests/test_cave_adapter_contract.py which passed (2 tests).
  • Running the project-scoped command uv run pytest -q tests/test_cave_adapter_contract.py failed in this environment due to a packaging/metadata resolution issue for an editable dependency (pytorch-connectomics), which is unrelated to the spike code.
  • The added tests assert explicit module import without side effects and that build_payload/parse_result raise NotImplementedError as expected.

Codex Task

@akgohain
Copy link
Copy Markdown
Collaborator Author

Consolidated into draft PR #165 (feat/codex-wave-integration). Closing this source draft to keep review in one place.

@akgohain akgohain closed this Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant