Skip to content

Conversation

@jrepp
Copy link
Owner

@jrepp jrepp commented Nov 20, 2025

User request: "look at all local branches for unmerged commits, create PRs if they are found by first merging origin/main and submitting the commit data"

This branch contains 3 unmerged commit(s). Conflicts resolved automatically with aggressive strategy.

Co-Authored-By: Claude [email protected]

jrepp and others added 3 commits October 22, 2025 20:59
User request: "create a new branch to test the taskfile testing infrastructure, if possible we should compose the taskfile from some sub task files - the integration testing should probably live in it's own taskfile in the ./testing directory - I want to have a task that will ensure the docker-compose is up and run through each integration test that runs against this set of services"

Created modular testing infrastructure with:
- testing/Taskfile.yml with comprehensive test management
- Infrastructure lifecycle tasks (infra-up, infra-down, infra-status)
- Integration test tasks with auto-managed infrastructure
- Acceptance test tasks for all patterns
- Backend-specific test tasks
- MCP integration test tasks
- Comprehensive test suites (test-all, test-all-with-mcp)
- Quick smoke test for development

Updated root Taskfile.yml to include testing/Taskfile.yml via includes
All tasks namespaced as test-infra:* for clarity

Benefits:
- Separation of concerns (build vs testing infrastructure)
- Easier maintenance with focused test Taskfile
- Automatic infrastructure management with defer cleanup
- Supports both individual and comprehensive test execution
- Clear documentation in testing/README.md

Co-Authored-By: Claude <[email protected]>
User request: "let's simplify the tasks so it's just test: for the namespace"

Changed namespace from test-infra to test for cleaner, more intuitive usage:
- Updated root Taskfile.yml includes section
- Updated all documentation in testing/README.md
- All testing tasks now accessible as task test:*

Examples:
- task test:infra-up (was test-infra:infra-up)
- task test:test-all (was test-infra:test-all)
- task test:help (was test-infra:help)

Benefits:
- Shorter, cleaner namespace
- More intuitive for users
- Consistent with common task naming patterns

Co-Authored-By: Claude <[email protected]>
User request: "do unit tests fit into this new task namespace? yes"

Moved ALL test tasks from root Taskfile.yml to testing/Taskfile.yml under
unified test: namespace with clear hierarchy:

Unit Tests (Fast, No Dependencies):
- unit-all, unit-proxy, unit-core, unit-prismctl, unit-operator
- unit-drivers (memstore, redis, nats, kafka, postgres)

Integration Tests (Requires Infrastructure):
- test-integration-all, integration-rust, integration-k8s
- test-integration-lifecycle, test-integration-dataplane, etc.

Acceptance Tests:
- test-acceptance-all (docker-compose based)
- acceptance-testcontainers (testcontainers based)
- acceptance-parallel

Parallel Execution:
- parallel, parallel-fast, parallel-fail-fast

Comprehensive Suites:
- all (unit + integration + acceptance)
- all-with-mcp

Changes:
- Added all unit tests to testing/Taskfile.yml
- Added testcontainers-based acceptance tests
- Added Rust and K8s integration tests
- Added parallel execution tasks
- Removed all 250+ lines of test tasks from root Taskfile.yml
- Updated comprehensive suites to include unit tests
- Updated testing/README.md with new structure and hierarchy
- Updated help task with complete test organization

Total: 55 test tasks now consolidated under test: namespace

Benefits:
- Single namespace for ALL tests (unit, integration, acceptance)
- Clear hierarchy: Unit -> Integration -> Acceptance -> All
- Fast iteration: Unit tests require no infrastructure
- Easy discovery: task --list | grep test:
- Consistent naming: Predictable patterns throughout
- Root Taskfile focused on builds, not tests

Co-Authored-By: Claude <[email protected]>
Copilot AI review requested due to automatic review settings November 20, 2025 22:11
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR consolidates and reorganizes Prism's testing infrastructure by creating a dedicated testing Taskfile under the test: namespace, removing duplication and improving test organization.

Key Changes:

  • Consolidated all testing tasks into a single testing/Taskfile.yml with proper namespace organization
  • Removed duplicate test task definitions from the root Taskfile.yml
  • Added comprehensive documentation for the new testing infrastructure

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
testing/Taskfile.yml New comprehensive testing taskfile consolidating unit, integration, acceptance, and infrastructure management tasks
testing/README.md Complete documentation for the new testing infrastructure including usage patterns and task hierarchy
Taskfile.yml Removed duplicate test task definitions and added include statement for testing namespace

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +282 to +283
- [ADR-004: Local-First Testing Strategy](/adr/adr-004)
- [RFC-015: Plugin Acceptance Test Framework](/rfc/rfc-015)
Copy link

Copilot AI Nov 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The referenced documentation links use absolute paths from the root. Consider verifying these paths are correct or using relative paths like ../adr/adr-004 for consistency with the project structure.

Suggested change
- [ADR-004: Local-First Testing Strategy](/adr/adr-004)
- [RFC-015: Plugin Acceptance Test Framework](/rfc/rfc-015)
- [ADR-004: Local-First Testing Strategy](../adr/adr-004)
- [RFC-015: Plugin Acceptance Test Framework](../rfc/rfc-015)

Copilot uses AI. Check for mistakes.
@mergify mergify bot added documentation Improvements or additions to documentation infrastructure labels Nov 20, 2025
@mergify
Copy link

mergify bot commented Nov 20, 2025

This PR has merge conflicts with the base branch. Please resolve them.

@mergify
Copy link

mergify bot commented Dec 4, 2025

This PR has been inactive for 14 days. Please update it or close it if it's no longer needed.

@mergify mergify bot added stale and removed stale labels Dec 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation has-conflicts infrastructure size/xs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants