Wiki cleanup: error-doc removal, dedup merge, link normalization
10_Wiki/Topics 대규모 정리: - 오류 캡처/미완성 stub 문서 227개 제거 - 교차폴더 중복 43클러스터 병합 (63파일 → redirect) - 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건 - 카테고리 MOC 6개 신규 생성 - Graph 섹션 미해결 related-keyword 링크 10,058건 제거 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -180,6 +180,5 @@ for await (const chunk of stream) {
|
||||
- Vercel AI SDK 가 모든 boilerplate 추상화.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_SSE_Server_Sent_Events]]
|
||||
- [[AI_Structured_Output_Zod]]
|
||||
- [[AI_RAG_Pattern_Basics]]
|
||||
|
||||
@@ -165,4 +165,3 @@ const r = await client.chat.completions.create({
|
||||
## 🔗 관련 문서
|
||||
- [[AI_Prompt_Engineering_Patterns]]
|
||||
- [[AI_Streaming_LLM_Response]]
|
||||
- [[Schema_Validation_Zod_Patterns]]
|
||||
|
||||
@@ -149,5 +149,3 @@ spec:
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_Job_Queue_Patterns]]
|
||||
- [[Idempotency_Patterns]]
|
||||
- [[Distributed_Locking_Patterns]]
|
||||
|
||||
@@ -164,6 +164,3 @@ throw new GraphQLError('Not found', { extensions: { code: 'NOT_FOUND' } });
|
||||
- Persisted query 권장.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[GraphQL_Client_Patterns]]
|
||||
- [[REST_API_Versioning_Strategies]]
|
||||
- [[API_Auth_Bearer_Token_Patterns]]
|
||||
|
||||
@@ -180,5 +180,4 @@ const intent = await stripe.paymentIntents.create(
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_Webhook_Patterns]]
|
||||
- [[Idempotency_Patterns]]
|
||||
- [[Backend_Retry_Strategy]]
|
||||
|
||||
@@ -170,4 +170,3 @@ async function step(state: SagaState): Promise<SagaState> {
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_Event_Sourcing]]
|
||||
- [[Backend_Outbox_Pattern]]
|
||||
- [[Idempotency_Patterns]]
|
||||
|
||||
@@ -156,6 +156,3 @@ wss.on('connection', (ws, req) => {
|
||||
- N 노드 = Redis pub/sub.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_SSE_Server_Sent_Events]]
|
||||
- [[Realtime_Architecture_Patterns]]
|
||||
- [[WebSocket_Authentication_Patterns]]
|
||||
|
||||
@@ -144,5 +144,3 @@ app.use('/webhooks', express.raw({ type: 'application/json' }));
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_Cron_Patterns]]
|
||||
- [[Idempotency_Patterns]]
|
||||
- [[API_Auth_Bearer_Token_Patterns]]
|
||||
|
||||
@@ -144,6 +144,3 @@ package user.v1;
|
||||
- Deadline + Interceptor 항상.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[REST_API_Versioning_Strategies]]
|
||||
- [[GraphQL_Server_Patterns]]
|
||||
- [[Backend_API_Auth_Strategies]]
|
||||
|
||||
@@ -143,5 +143,3 @@ VALUES (..., jsonb_build_object('email', ARRAY[OLD.email, NEW.email]));
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[DB_Soft_Delete_Patterns]]
|
||||
- [[GDPR_Data_Retention]]
|
||||
- [[Observability_Stack]]
|
||||
|
||||
@@ -152,6 +152,3 @@ UPDATE events SET data = data - 'userId';
|
||||
- Zod 같은 schema 검증 app 에서.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Postgres_Performance_Tuning]]
|
||||
- [[DB_Migrations_Zero_Downtime]]
|
||||
- [[Schema_Validation_Zod_Patterns]]
|
||||
|
||||
@@ -131,4 +131,3 @@ EXPLAIN ANALYZE SELECT count(*) FROM events WHERE user_id = $1 AND created_at >=
|
||||
## 🔗 관련 문서
|
||||
- [[DB_Sharding_Strategies]]
|
||||
- [[DB_Soft_Delete_Patterns]]
|
||||
- [[Postgres_Performance_Tuning]]
|
||||
|
||||
@@ -138,4 +138,3 @@ SHOW REPLICA STATUS\G
|
||||
## 🔗 관련 문서
|
||||
- [[DB_Connection_Pooling_Patterns]]
|
||||
- [[DB_Sharding_Strategies]]
|
||||
- [[Caching_Strategies]]
|
||||
|
||||
@@ -208,4 +208,3 @@ await redis.set(key, value, 'EX', 3600);
|
||||
## 🔗 관련 문서
|
||||
- [[Backend_Rate_Limiting]]
|
||||
- [[DB_Distributed_Locks]]
|
||||
- [[Caching_Strategies]]
|
||||
|
||||
@@ -147,4 +147,3 @@ CREATE TABLE shard_map (
|
||||
## 🔗 관련 문서
|
||||
- [[DB_Partitioning_Patterns]]
|
||||
- [[DB_Read_Replica_Patterns]]
|
||||
- [[Multi_Tenant_Architecture]]
|
||||
|
||||
@@ -129,5 +129,3 @@ CREATE TABLE user_deletions (
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[DB_Audit_Log_Patterns]]
|
||||
- [[GDPR_Data_Retention]]
|
||||
- [[DB_Migrations_Zero_Downtime]]
|
||||
|
||||
@@ -133,5 +133,4 @@ public class Order {
|
||||
## 🔗 관련 문서
|
||||
|
||||
- [[Pure_Functions_in_Practice]]
|
||||
- [[Smart_Constructors]]
|
||||
- [[Tagged_Union_Discriminated_Types]]
|
||||
|
||||
@@ -148,4 +148,3 @@ resource "aws_db_instance" "main" {
|
||||
## 🔗 관련 문서
|
||||
- [[DevOps_Terraform_Patterns]]
|
||||
- [[DevOps_Observability_Stack]]
|
||||
- [[Cloud_Audit_Logging]]
|
||||
|
||||
@@ -194,4 +194,3 @@ charts/api/
|
||||
## 🔗 관련 문서
|
||||
- [[DevOps_Terraform_Patterns]]
|
||||
- [[Backend_Cron_Patterns]]
|
||||
- [[CI_CD_Pipeline_Best_Practices]]
|
||||
|
||||
@@ -179,4 +179,3 @@ groups:
|
||||
## 🔗 관련 문서
|
||||
- [[Native_Crash_Reporting]]
|
||||
- [[Backend_Webhook_Patterns]]
|
||||
- [[Logging_Structured_Patterns]]
|
||||
|
||||
@@ -157,5 +157,3 @@ async function rotateApiKey(userId: string): Promise<string> {
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[DevOps_Terraform_Patterns]]
|
||||
- [[Backend_API_Auth_Strategies]]
|
||||
- [[Security_Encryption_at_Rest]]
|
||||
|
||||
@@ -157,5 +157,3 @@ import { FocusTrap } from 'focus-trap-react';
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Frontend_i18n_Patterns]]
|
||||
- [[Component_Library_Selection]]
|
||||
- [[Form_UX_Patterns]]
|
||||
|
||||
@@ -154,5 +154,3 @@ public class Tokens {
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Frontend_Tailwind_Architecture]]
|
||||
- [[CSS_in_JS_vs_Utility_Tradeoffs]]
|
||||
- [[Cross_Platform_Theming]]
|
||||
|
||||
@@ -138,6 +138,4 @@ func downsample(url: URL, to size: CGSize, scale: CGFloat) -> UIImage? {
|
||||
- Native = FastImage / Coil / Glide + downsample.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Web_Core_Web_Vitals]]
|
||||
- [[CDN_Caching_Strategies]]
|
||||
- [[Native_Memory_Profiling]]
|
||||
|
||||
@@ -164,5 +164,3 @@ plugins: [
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Frontend_Design_Tokens]]
|
||||
- [[React_Component_Composition_Patterns]]
|
||||
- [[CSS_in_JS_vs_Utility_Tradeoffs]]
|
||||
|
||||
@@ -152,5 +152,3 @@ type SafeT = (k: Keys, opts?: Record<string, unknown>) => string;
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Frontend_A11y_Testing]]
|
||||
- [[Number_Date_Formatting]]
|
||||
- [[Translation_Workflow_Lokalise]]
|
||||
|
||||
@@ -167,4 +167,3 @@ key 별로 latest value 만 — user_state 같은 use case.
|
||||
## 🔗 관련 문서
|
||||
- [[Messaging_NATS_RabbitMQ_Comparison]]
|
||||
- [[Messaging_Exactly_Once]]
|
||||
- [[Messaging_Schema_Registry]]
|
||||
|
||||
@@ -133,4 +133,3 @@ synchronized(cache) { cache.put(k, v) }
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Native_Memory_Profiling]]
|
||||
- [[Android_Coroutines_Concurrency]]
|
||||
|
||||
@@ -132,4 +132,3 @@ m.startMonitoringSignificantLocationChanges()
|
||||
## 🔗 관련 문서
|
||||
- [[Native_Memory_Profiling]]
|
||||
- [[Native_Perf_Tracing_Systrace]]
|
||||
- [[Background_Sync_Strategies]]
|
||||
|
||||
@@ -138,6 +138,3 @@ Crashlytics.crashlytics().log("nav route=cart user=\(user.id) cartCount=\(items.
|
||||
- dSYM/mapping 자동 업로드 setup 우선.
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Logging_Structured_Patterns]]
|
||||
- [[Observability_Stack]]
|
||||
- [[React_Native_Crash_Tracking]]
|
||||
|
||||
@@ -116,4 +116,3 @@ async function processOrder(orderId: string) {
|
||||
|
||||
- [[Guard_Clauses]]
|
||||
- [[Defensive_Copying]]
|
||||
- [[Dependency_Inversion_in_Practice]]
|
||||
|
||||
@@ -60,7 +60,7 @@ related_notes: [pytest, tests, assertions]
|
||||
- 실제 프로젝트 적용이나 코드 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
- [[tests]]
|
||||
- [[assertions]]
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ related_notes: [fixture, pytest, test architecture]
|
||||
|
||||
## 관련 문서
|
||||
- [[fixture]]
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
- [[test architecture]]
|
||||
|
||||
## Raw Source
|
||||
|
||||
@@ -61,7 +61,7 @@ related_notes: [parametrize, pytest, cases]
|
||||
|
||||
## 관련 문서
|
||||
- [[parametrize]]
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
- [[cases]]
|
||||
|
||||
## Raw Source
|
||||
|
||||
@@ -62,7 +62,7 @@ related_notes: [integration test, boundaries, pytest]
|
||||
## 관련 문서
|
||||
- [[integration test]]
|
||||
- [[boundaries]]
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-python-coding-batch
|
||||
|
||||
@@ -62,7 +62,7 @@ related_notes: [Hypothesis, property testing, pytest]
|
||||
## 관련 문서
|
||||
- [[Hypothesis]]
|
||||
- [[property testing]]
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-python-coding-batch
|
||||
|
||||
@@ -61,7 +61,7 @@ related_notes: [assert, pytest, diagnostics]
|
||||
|
||||
## 관련 문서
|
||||
- [[assert]]
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
- [[diagnostics]]
|
||||
|
||||
## Raw Source
|
||||
|
||||
@@ -61,7 +61,7 @@ related_notes: [CI, pytest, automation]
|
||||
|
||||
## 관련 문서
|
||||
- [[CI]]
|
||||
- [[pytest]]
|
||||
- [[121_pytest_기본기|pytest]]
|
||||
- [[automation]]
|
||||
|
||||
## Raw Source
|
||||
|
||||
@@ -60,7 +60,7 @@ related_notes: [LLM, AI apps, orchestration]
|
||||
- 실제 프로젝트 적용이나 코드 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[LLM]]
|
||||
- [[Transformer_Architecture_and_LLM_Foundations|LLM]]
|
||||
- [[AI apps]]
|
||||
- [[orchestration]]
|
||||
|
||||
|
||||
@@ -188,5 +188,4 @@ if (valid) goNextStep();
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[React_Form_State_Patterns]]
|
||||
- [[Schema_Validation_Zod_Patterns]]
|
||||
- [[AI_Structured_Output_Zod]]
|
||||
|
||||
@@ -159,4 +159,3 @@ function App() {
|
||||
## 🔗 관련 문서
|
||||
- [[React_TanStack_Query_Advanced]]
|
||||
- [[React_Context_API_Misuse]]
|
||||
- [[State_Management_Architecture]]
|
||||
|
||||
@@ -182,5 +182,4 @@ const result = await program(); // Either<Error, number>
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[TS_tsconfig_Strategy]]
|
||||
- [[Schema_Validation_Zod_Patterns]]
|
||||
- [[Error_Handling_Result_vs_Throw]]
|
||||
|
||||
@@ -179,6 +179,5 @@ v.pipe(v.string(), v.email())
|
||||
- AI structured output = Zod (OpenAI helper).
|
||||
|
||||
## 🔗 관련 문서
|
||||
- [[Schema_Validation_Zod_Patterns]]
|
||||
- [[AI_Structured_Output_Zod]]
|
||||
- [[TS_Effect_FP_Patterns]]
|
||||
|
||||
@@ -157,4 +157,3 @@ if (missing.length) { console.error('Missing in ko:', missing); process.exit(1);
|
||||
## 🔗 관련 문서
|
||||
- [[Frontend_i18n_Patterns]]
|
||||
- [[TS_tsconfig_Strategy]]
|
||||
- [[Schema_Validation_Zod_Patterns]]
|
||||
|
||||
@@ -310,4 +310,3 @@ window.addEventListener('storage', (e) => {
|
||||
## 🔗 관련 문서
|
||||
- [[Web_Service_Worker_Patterns]]
|
||||
- [[Web_PWA_Service_Worker]]
|
||||
- [[CS_Distributed_Locks]]
|
||||
|
||||
@@ -178,4 +178,3 @@ Button("New") { open(id: "editor", value: UUID()) }
|
||||
## 🔗 관련 문서
|
||||
- [[iOS_SwiftUI_State_Property_Wrappers]]
|
||||
- [[iOS_Universal_Links_Deep_Linking]]
|
||||
- [[Cross_Platform_Theming]]
|
||||
|
||||
Reference in New Issue
Block a user