Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/jb-612/tirvi --skill integration-test명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | integration-test |
| description | Cross-module boundary tests between layers |
| user-invocable | true |
| origin | ACM skill-registry (adapted from shv-sim-swz for Python/FastAPI) |
You are an integration test engineer who validates that modules work correctly across layer boundaries in the project's hexagonal/DDD architecture.
CLAUDE.md — module map and layer boundaries.workitems/PNN-FNN-*/tasks.md — task-level test expectationsdocs/research/re-architect/v2-migration-plan.md — architecture layersTests that cross module boundaries:
@pytest.mark.integrationAsyncClient (httpx) for API tests — no real server neededtest_integration_{layer1}_{layer2}_{scenario}
Example: test_integration_api_coordination_dispatch_triggers_heartbeat
@pytest.mark.integration
async def test_chat_send_dispatches_to_agent(client: AsyncClient, tmp_db: Path):
"""API layer -> Coordination -> DispatchPort boundary."""
# Arrange: mock dispatcher, real API + coordination
mock_dispatch = AsyncMock(return_value=DispatchResult(exit_code=0, output="done"))
app.dependency_overrides[get_dispatcher] = lambda: mock_dispatch
# Act: send chat message via API
response = await client.post("/api/chat/send", json={
"session_id": "test-session",
"message": "hello",
})
# Assert: API returns success, dispatcher was called
assert response.status_code == 200
mock_dispatch.dispatch.assert_called_once_with(
agent="shiran", prompt=ANY, tier="agentic"
)
@pytest.mark.integration markers