Skip to content

perf(test): consolidate service integration targets - #2181

Open
limityan wants to merge 1 commit into
GCWing:mainfrom
limityan:yanzhn/service-test-targets-pr18
Open

perf(test): consolidate service integration targets#2181
limityan wants to merge 1 commit into
GCWing:mainfrom
limityan:yanzhn/service-test-targets-pr18

Conversation

@limityan

@limityan limityan commented Aug 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • switch services-core and services-integrations to reviewed explicit integration-test targets
  • group only tests that share the same owner, feature closure, platform, process, and failure domain
  • extend the existing core-boundary checker so future leaves cannot silently narrow coverage through feature/cfg topology
  • refresh the compile/dependency governance document and focused owner commands without adding CI jobs

Architecture and behavior

  • no runtime code, dependency, product feature, or CI workflow changes
  • session_write_lock_contracts remains an independent executable because it launches an abnormal-exit child through current_exe
  • MCP Streamable HTTP remains independent from DTO/cache/vault contracts because it owns loopback TCP, SSE, timeout, and cleanup failure semantics
  • Remote SSH keeps the lightweight disabled-provider contracts only when remote-ssh-concrete is absent; the exact negative gate is guarded
  • 13 moved test bodies are byte-identical; only their target/module roots changed

Build evidence

Scope Before After Result
services-core integration targets 20 13 tests unchanged
services-integrations integration targets 13 12 tests unchanged
selected local-storage + MCP + base SSH targets 16 8 8 fewer linked executables
local-storage EXE / PDB 25.2 / 135.7 MiB 19.2 / 91.9 MiB fewer artifacts
base SSH EXE / PDB 3.9 / 53.5 MiB 2.8 / 43.8 MiB fewer artifacts

Windows single-run A/B did not show a distinguishable cold-build or owner-rebuild speedup, so this PR does not claim compile-time improvement. It does reduce link targets and artifacts. Module filters reduce executed tests, not compilation/linking of the grouped target, and grouping intentionally trades some process-level isolation only within the same failure domain.

Validation

  • pnpm run check:core-boundaries:test — 69/69
  • pnpm run check:core-boundaries
  • services-core grouped local-storage targets — 58/58
  • MCP targets kept independent — 43/43 + 2/2
  • Remote SSH target — 11/11 with base feature, 9/9 with concrete provider
  • changed Rust files pass rustfmt --check
  • git diff --check gcwing/main...HEAD
  • rebased on gcwing/main@c6badb778

Cross-platform and packaging matrices remain with the existing CI; no duplicate test job was added.

AI-assisted: yes. Testing level: fully tested for the changed Windows owner scope; cross-platform CI pending.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant