test: aggressive second-pass volume reduction (backend + frontend)#16
Merged
Conversation
…itle/pin/reasoning variants vitest 88 cases (5046 LOC) → 51 cases (3078 LOC), node --test 3/3 PASS. - page.test.tsx (23→13): merge thread hydration variants, collapse 4 ai-title cases into success/failure pair, single pin/unpin reorder case, split reasoning vs tool_start fallback into 2 focused cases, fold send/resume failure into one error-pathway case - sse-reducer.test.ts (17→11): collapse status/route/tool/purity variants into single sequential transitions; FINAL_RESPONSE_STREAM_OWNERSHIP 3 cases preserved verbatim - hooks/*.test.ts: 8 cases (4 files × 2) → 4 (1 per hook), consolidated into lifecycle walks - workspace-state.test.ts (5→3), markdown.test.ts (5→1), dashboard (4→2), auth-flow (9→8 — fold admin-hidden into profile-saves), components (10→7) Preserved regressions: V-001 HITLPanel interrupt banner, trend.png attachment timing (PR #8/#15), FINAL_RESPONSE_STREAM_OWNERSHIP contract, auth+chat smoke, 401 redirect pathways, supported-file upload smoke, historical-view tool overlay suppression. lint clean, build PASS, vitest 54 passed (51 + 3 mjs node --test). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…licate consolidation Cut 224 → 184 cases (-40), 54 → 47 files (-7) by removing tests that violate the CLAUDE.md Core-only policy: Files removed (8 single-case files with redundant coverage): - test_dynamic_tools.py (duplicated by test_team_subgraphs) - test_memory_service.py (projection edge case, not a regression fix) - test_rope_validation.py (293 LOC end-to-end already covered by test_response_collector + test_chat_turn_lifecycle) - test_thread_profile_service.py (covered by test_thread_api) - test_thread_suggested_query_service.py (covered by test_thread_api) - test_thread_title_service.py (covered by test_thread_api) - test_user_profile_service.py (covered by test_patch_api) Per-file consolidations (parametrize + bundle): - test_api.py: dropped resume duplicate of supervisor-text dropping; removed trivial _serialize_value helper test - test_event_processor.py: bundled status/route/text/reasoning/tool builders; dropped trivial display_name + utc_timestamp + constant-range tests - test_llm_router.py: parametrized parse_failed + layer_limit pairs; merged strip-content into invalid-goto case - test_state_schema.py: removed trivial append_route_history concat test - test_supervisor.py: dropped dispatch_limit (covered by llm_router) and invalid_cross_graph_route (covered by router_safeguards) - test_team_subgraphs.py: bundled per-team source-grep + prompt-kit loops - test_thread_api.py: dropped 404 path (other endpoints cover) - test_thread_service.py: removed CRUD wrappers + trivial _derive_status - test_trace_service.py: removed trivial get_thread_traces wrapper - test_event_processor.py: bundled tool start/end/error and text+reasoning - test_chat_analytics_service.py: removed mark_first_token (latency already covered by finalize_turn test) - test_security_service.py: removed trivial header-extraction helper - test_memory_api.py: removed 404 paths + plain CRUD smoke for settings - test_personalization_instruction_service.py: removed update-returns-None CRUD wrapper Absolute preserves untouched: - test_router_safeguards.py (11) — plan §4.0 P3 - test_response_collector.py (10) — FINAL_RESPONSE_STREAM_OWNERSHIP - routing_eval/ — golden dataset - test_chat_turn_lifecycle.py — 4 turn-kind lifecycle cases - test_workflow_graph.py, test_admin_user_service.py, test_chat_api_coding_flow.py, test_workspace_manager.py, test_error_handling.py — kept per task instruction 184 pytest cases, 0 failures, 0 skips. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
backend pytest: 224 → 184 (-40, -17.9%) / 54 → 47 files
frontend vitest: 88 → 54 (PASS, 51 vitest + 3 node-test) / LOC 5,046 → 3,115 (-38%)
이전 PR #15(1차 축소)에 이어 사용자의 추가 축소 요청에 응답한 2차. 회귀 차단 핵심은 모두 보존하고, 단일 case 파일·중복 variant·trivial helper sanity만 정리.
Backend 변경 (79404d1)
8 파일 삭제 — 회귀 보호 가치 없음 (다른 파일이 cover):
케이스 통합 (parametrize 또는 sibling merge):
Frontend 변경 (140866a)
중복 variant 통합:
summary,authMePayload,stubCsrfCookie) 추출로 fetchMock 보일러플레이트 축소절대 보존 확인
test_router_safeguards.py(plan §4.0 P3 11 cases),test_response_collector.py(FINAL_RESPONSE_STREAM_OWNERSHIP 10), routing_eval/, lifecycle 4, PR fix(data-science): restore chart/PNG output + sharper LLM handoff #10/fix(data-science): make _safe_pyplot_savefig CJK/race-tolerant (S-E) #11/fix(supervisor): multi-turn follow-up turn handoff + savefig nesting #14 회귀 fixVerification
🤖 Generated with Claude Code