一键导入
test-infrastructure
Core test infrastructure patterns for monorepo Vitest setup including global configuration, mocking patterns, and test standards
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Core test infrastructure patterns for monorepo Vitest setup including global configuration, mocking patterns, and test standards
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | test-infrastructure |
| description | Core test infrastructure patterns for monorepo Vitest setup including global configuration, mocking patterns, and test standards |
| allowed-tools | ["Read","Write","Edit","Bash"] |
| triggers | ["vitest setup","test configuration","test infrastructure setup","test mocking patterns","test cleanup","test standards","monorepo testing","vitest config","test utilities","test environment"] |
===TEST_INFRASTRUCTURE=== META: TYPE::SKILL VERSION::1.0 STATUS::ACTIVE COMPRESSION_TIER::AGGRESSIVE DOMAIN::ATHENA[quality]⊕HEPHAESTUS[craftsmanship]
§1::PRIMARY_SOURCE_MANDATORY_FIRST
SOURCE::.hestai/state/context/test-context/RULES.md PRINCIPLE::"POC-proven pattern post-it note - ALWAYS consult BEFORE infrastructure decisions"
CONTAINS::[ file_organization[co-located_tests], test_types[unit_vs_integration], TDD_discipline[RED->GREEN->REFACTOR], vitest_configuration, browser_api_polyfills, test_cleanup_patterns, coverage_targets[diagnostic≠blocking], TRACED_protocol ]
§2::DETAILED_DOCUMENTATION
TEST_STANDARDS::.hestai/state/context/test-context/STANDARDS.md->[file_naming[src/X.test.ts], coverage_thresholds[70%_min+80%_aspirational+90%_critical], test_categorization[unit/integration/e2e], violation_detection]
MOCKING_PATTERNS::.hestai/state/context/test-context/MOCKING-PATTERNS.md->[vitest_shared_config, testing_library_setup, supabase_client_mocking[unit], shared_utilities, mock_factories]
§3::POC_REFERENCE_WHEN_NEEDED
POC_INFRASTRUCTURE::/Volumes/HestAI-Projects/eav-ops/eav-apps/scripts-web/src/test/ FILES::[ setup.ts::"Global Vitest setup (BroadcastChannel polyfill, conditional mocks, cleanup)", factories.ts::"Test data factories" ]
§4::CORE_PATTERNS_POC_PROVEN
PATTERN_1::BROWSER_API_POLYFILLS::[ STUB::BroadcastChannel_for_supabase_auth, BECAUSE::"Node.js BroadcastChannel incompatible with Supabase Auth MessageEvent", IMPLEMENTATION::custom_EventTarget_stub_in_setup.ts, EVIDENCE::POC_src/test/setup.ts:41-71 ]
PATTERN_2::REALTIME_CLEANUP::[ PATTERN::afterAll[disconnect_realtime+removeAllChannels], BECAUSE::"Prevents CI hangs from orphaned WebSocket connections", CODE::"afterAll(async()=>{if(isIntegrationTest){await testSupabase.realtime.disconnect(); testSupabase.removeAllChannels()}})", EVIDENCE::POC_src/test/setup.ts:212-222 ]
PATTERN_3::CONDITIONAL_MOCK_SCOPE::[ FLAG::VITEST_INTEGRATION=true[real_supabase] VERSUS unset[mocked], BECAUSE::"Unit tests (mocked, fast) vs Integration tests (real DB, RLS validation)", CODE::"const isIntegrationTest=process.env.VITEST_INTEGRATION==='true'; if(!isIntegrationTest){vi.mock('@workspace/shared/client',...)}", EVIDENCE::POC_src/test/setup.ts:94-111 ]
§5::DIRECTORY_STRUCTURE_THREE_TIER
TIER_3::VITEST_TEST_INFRASTRUCTURE::[ packages/shared/src/test/::[ setup.ts::"Global Vitest setup (imported by vitest.config)", factories.ts::"Test data factories", vitest.config.base.ts::"Shared Vitest config" ], apps//src/test/-factories.ts::"App-specific test data", PURPOSE::vitest_infrastructure_utilities[NOT_test_files] ]
TIER_4::COLOCATED_TEST_FILES::[ PATTERN::src/components/Header.tsx+Header.test.tsx, PATTERN::src/core/state/useScriptMutations.tsx+useScriptMutations.test.tsx, PURPOSE::individual_test_files_next_to_source ]
§6::VITEST_CONFIGURATION
SHARED_BASE::packages/shared/src/test/vitest.config.base.ts::[ test::{globals:true, environment:jsdom, setupFiles:['./src/test/setup.ts']}, coverage::{provider:v8, reporter:[text,html], exclude:[**/.config.ts, **/.d.ts, /test/]} ]
APP_CONFIG::apps/*/vitest.config.ts->mergeConfig(baseConfig,{test:{app_specific_overrides}})
§7::COVERAGE_PHILOSOPHY_POC_PROVEN
PRINCIPLE::"Coverage is DIAGNOSTIC METRIC, not blocking gate"
RATIONALE::[ coverage_validates_tests_exist[NOT_tests_good], can_achieve_100%_with_bad_assertions, encourages_coverage_theater[tests≠behavior_validation] ]
TARGETS::[ 70%::minimum[aspirational≠blocking], 80%+::recommended[project_health_indicator], 90%+::critical_paths[auth+mutations+RLS]->enforced_via_code_review ]
SOURCE::.hestai/state/context/test-context/RULES.md
§8::TURBOREPO_CONFIGURATION
PIPELINE::[ typecheck::{dependsOn:[^typecheck]}, lint::{dependsOn:[^lint,typecheck]}, test::{dependsOn:[^test,lint], outputs:[coverage/]}, build::{dependsOn:[^build,test], outputs:[dist/]} ]
QUALITY_GATE_SEQUENCE::typecheck->lint->test->build[ALL_BLOCKING]
§9::AGENT_CONSULTATION
CONSULT::[ test-methodology-guardian::"TDD workflow alignment, RED->GREEN->REFACTOR compliance", technical-architect::"Test harness architecture decisions, shared utilities structure", universal-test-engineer::"Actual test writing (delegate, don't implement)" ]
§10::KNOWLEDGE_BASE_REFERENCES
PRIMARY::.hestai/state/context/test-context/RULES.md[POC_proven_patterns]->CONSULT_FIRST
DOCUMENTATION::[ .hestai/state/context/test-context/STANDARDS.md, .hestai/state/context/test-context/MOCKING-PATTERNS.md ]
POC_REFERENCE::/Volumes/HestAI-Projects/eav-ops/eav-apps/scripts-web/src/test/
NORTH_STAR::.hestai/north-star/000-UNIVERSAL-EAV_SYSTEM-D1-NORTH-STAR.md[I7:TDD_RED_discipline, I8:production_grade_quality]
§11::WISDOM
CORE_RULE::"POC-proven patterns are post-it notes - consult BEFORE infrastructure decisions" INTEGRATION::[test-ci-pipeline, test-coverage, supabase-test-harness] RELATED_SKILLS::[testing, test-coverage]
===END===
Supabase test harness patterns including local Supabase setup, test user creation via Auth Admin API, RLS testing, migration testing (db_reset), seed sequences, rate limiting, and environment detection. Use when setting up Supabase testing infrastructure, creating test users, troubleshooting Supabase test failures, or implementing RLS validation. Triggers on: supabase test setup, test user creation, supabase local testing, RLS testing, migration testing, supabase test harness, auth test helpers.
Supabase operational knowledge for migrations, RLS optimization, MCP tool benchmarks, and ADR-003 compliance. Use when validating database migrations, optimizing Row-Level Security policies, checking MCP tool performance, or ensuring Supabase operational standards. Triggers on: migration validation, RLS patterns, Supabase benchmarks, ADR-003, database state tracking, schema governance.
LLM-native structured communication format. Teaches OCTAVE syntax rules, canonical forms, and warning prevention for zero-error .oct.md authoring.
Advanced semantic vocabulary, holographic contracts, and structural patterns for OCTAVE. REQUIRES octave-literacy. Extends literacy with mythology, archetype annotation, v6 contracts, and anti-pattern rules.
Workflow for transforming prose into semantic OCTAVE structures. Covers tier selection, transformation phases, loss accounting, and decision rules. REQUIRES octave-literacy.
Strategic oversight mode for the Holistic Orchestrator. Episodic State Machine pattern with ho-liaison advisory (via pal_clink), run_debate escalation, and oa-router delegation. REPLACES holistic-orchestration when loaded.