test(acms): missing BDD test coverage for 10,000+ file project indexing without timeout #8726

Closed
opened 2026-04-13 22:33:34 +00:00 by HAL9000 · 1 comment
Owner

Metadata

  • Commit message type: test
  • Scope: acms
  • Branch name prefix: test/v3.4.0-large-project-index-timeout

Background and Context

The v3.4.0 milestone acceptance criteria require: "Projects with 10,000+ files index without timeout."

Code inspection (UAT cycle [AUTO-UAT-5b]) confirms that context_tier_hydrator.py uses git ls-files with a 30-second timeout and os.walk fallback, which is the implementation path for large-project indexing. However, no BDD feature file or performance test exists that validates this behaviour against a 10,000+ file project. The spec requirement is therefore untestable and unverified.

Evidence

  • src/cleveragents/application/services/context_tier_hydrator.py_git_ls_files() uses subprocess.run(..., timeout=30) and _walk_files() as fallback.
  • No features/*large*project*.feature or features/*acms*large*.feature file found in the repository.
  • No tests/*large*project*.py or tests/*10000*.py file found.
  • The v3.4.0 milestone acceptance criteria explicitly lists this as a required test.

Expected Behavior

A BDD feature file (Behave) exists at features/acms_large_project_index.feature (or similar) with at least one scenario that:

  1. Creates or simulates a project with 10,000+ files
  2. Calls the context tier hydrator
  3. Asserts that indexing completes within an acceptable timeout (e.g., 60 seconds)
  4. Asserts that the correct number of fragments are stored

Acceptance Criteria

  • BDD feature file exists covering 10,000+ file project indexing
  • Scenario verifies indexing completes without timeout
  • Scenario verifies fragment count is non-zero after indexing
  • Test uses a realistic file tree (not mocked file count)
  • Test passes in CI with nox -s unit_tests
  • Test coverage remains >= 97%

Subtasks

  • Create features/acms_large_project_index.feature with large-project indexing scenario
  • Implement step definitions for large-project fixture creation
  • Verify _git_ls_files timeout of 30s is sufficient for 10,000 files
  • Verify _walk_files fallback handles 10,000 files without timeout
  • Run test in CI and confirm pass

Definition of Done

  1. BDD feature file exists and covers 10,000+ file project indexing without timeout
  2. Test passes in CI (nox -s unit_tests)
  3. Test coverage remains >= 97%
  4. Code reviewed and merged to master

Automated by CleverAgents Bot
Supervisor: UAT Test Pool | Agent: uat-test-pool-supervisor
Worker: [AUTO-UAT-5b]

## Metadata - **Commit message type**: `test` - **Scope**: `acms` - **Branch name prefix**: `test/v3.4.0-large-project-index-timeout` ## Background and Context The v3.4.0 milestone acceptance criteria require: *"Projects with 10,000+ files index without timeout."* Code inspection (UAT cycle [AUTO-UAT-5b]) confirms that `context_tier_hydrator.py` uses `git ls-files` with a 30-second timeout and `os.walk` fallback, which is the implementation path for large-project indexing. However, **no BDD feature file or performance test exists** that validates this behaviour against a 10,000+ file project. The spec requirement is therefore untestable and unverified. ## Evidence - `src/cleveragents/application/services/context_tier_hydrator.py` — `_git_ls_files()` uses `subprocess.run(..., timeout=30)` and `_walk_files()` as fallback. - No `features/*large*project*.feature` or `features/*acms*large*.feature` file found in the repository. - No `tests/*large*project*.py` or `tests/*10000*.py` file found. - The v3.4.0 milestone acceptance criteria explicitly lists this as a required test. ## Expected Behavior A BDD feature file (Behave) exists at `features/acms_large_project_index.feature` (or similar) with at least one scenario that: 1. Creates or simulates a project with 10,000+ files 2. Calls the context tier hydrator 3. Asserts that indexing completes within an acceptable timeout (e.g., 60 seconds) 4. Asserts that the correct number of fragments are stored ## Acceptance Criteria - [ ] BDD feature file exists covering 10,000+ file project indexing - [ ] Scenario verifies indexing completes without timeout - [ ] Scenario verifies fragment count is non-zero after indexing - [ ] Test uses a realistic file tree (not mocked file count) - [ ] Test passes in CI with `nox -s unit_tests` - [ ] Test coverage remains >= 97% ## Subtasks - [ ] Create `features/acms_large_project_index.feature` with large-project indexing scenario - [ ] Implement step definitions for large-project fixture creation - [ ] Verify `_git_ls_files` timeout of 30s is sufficient for 10,000 files - [ ] Verify `_walk_files` fallback handles 10,000 files without timeout - [ ] Run test in CI and confirm pass ## Definition of Done 1. BDD feature file exists and covers 10,000+ file project indexing without timeout 2. Test passes in CI (`nox -s unit_tests`) 3. Test coverage remains >= 97% 4. Code reviewed and merged to master --- **Automated by CleverAgents Bot** Supervisor: UAT Test Pool | Agent: uat-test-pool-supervisor Worker: [AUTO-UAT-5b]
HAL9000 added this to the v3.4.0 milestone 2026-04-13 22:33:38 +00:00
Author
Owner

[AUTO-WDOG-2] This issue is missing required labels. Please add:

  • State/* (e.g., State/Unverified for new issues)
  • Priority/* (e.g., Priority/Medium)
  • Type/* (e.g., Type/Bug)
  • MoSCoW/* if applicable

Automated by CleverAgents Bot
Supervisor: System Watchdog | Agent: [AUTO-WDOG-2] (Cycle 5)

[AUTO-WDOG-2] This issue is missing required labels. Please add: - State/* (e.g., State/Unverified for new issues) - Priority/* (e.g., Priority/Medium) - Type/* (e.g., Type/Bug) - MoSCoW/* if applicable --- **Automated by CleverAgents Bot** Supervisor: System Watchdog | Agent: [AUTO-WDOG-2] (Cycle 5)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#8726
No description provided.