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:
@@ -23,7 +23,6 @@ github_commit: applied
|
||||
- BLUF + Action Items 구조.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Meeting Notes]] (canonical)
|
||||
- Adjacent: [[BLUF (Bottom Line Up Front)]]
|
||||
|
||||
## 🕓 변경 이력
|
||||
|
||||
@@ -124,10 +124,6 @@ def fatigue_flag(rpe: int, srpe_load: int, acwr: float) -> bool:
|
||||
**기본값**: FIFA 11+ 2-3x/week.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Sports Medicine]] · [[Injury Prevention]]
|
||||
- 변형: [[FIFA 11+]] · [[PEP Program]] · [[KIPP]]
|
||||
- 응용: [[Return to Sport Testing]] · [[Neuromuscular Training]]
|
||||
- Adjacent: [[Biomechanics]] · [[Knee Valgus]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: structured risk-stratification, program selection, periodization advice.
|
||||
|
||||
@@ -125,10 +125,8 @@ python -m style_neutralizer **/*.py
|
||||
**기본값**: autoformat + LLM neutralization for adversarial; char n-gram TF-IDF + RF for detection.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Stylometry]] · [[Code Authorship Attribution]]
|
||||
- 변형: [[Mimicry Attack]] · [[Code Obfuscation]]
|
||||
- 응용: [[Malware Attribution]] · [[Anonymous OSS]]
|
||||
- Adjacent: [[Adversarial ML]] · [[Differential Privacy]]
|
||||
- 변형: [[Code Obfuscation]]
|
||||
- Adjacent: [[Differential Privacy]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: style neutralization, mimicry attack, defensive paraphrase.
|
||||
|
||||
@@ -112,7 +112,7 @@ session.requestReferenceSpace('viewer').then(viewerSpace => {
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[VR 엑서게임 (VR Exergaming)]] · [[HMD(Head-Mounted Display) 기반 엑서게임 환경]]
|
||||
- 변형: [[Digital Twins]] · [[Digital-Twin-Technology]]
|
||||
- 변형: [[Digital Twins]] · [[Digital Twins|Digital-Twin-Technology]]
|
||||
- 응용: [[Beat Saber 엑서게임 연구(Beat Saber Exergaming Study)]] · [[Remote-Rehabilitation]]
|
||||
- Adjacent: [[Visual-Effects-VFX]]
|
||||
|
||||
|
||||
@@ -117,10 +117,9 @@ Recent: deploys 4 (all green) · alerts 0 · SLO budget 99.4%
|
||||
**기본값**: ops/exec communication 은 BLUF; pedagogical/narrative 은 example-first.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Technical Writing]] · [[Incident Response]]
|
||||
- 변형: [[TL;DR]] · [[Inverted Pyramid]]
|
||||
- 응용: [[Postmortem]] · [[ADR]] · [[On-Call Runbook]]
|
||||
- Adjacent: [[Pyramid Principle]] · [[Minto]]
|
||||
- 부모: [[Technical Writing]]
|
||||
- 응용: [[Postmortem]] · [[ADR]]
|
||||
- Adjacent: [[Pyramid Principle]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: ask LLM to "rewrite as BLUF" — high-quality reflow.
|
||||
|
||||
@@ -140,10 +140,8 @@ fn morton3d(x: u32, y: u32, z: u32) -> u32 {
|
||||
**기본값**: SAH BVH2 for CPU; BVH8 + PLOC for GPU.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Acceleration Structure]] · [[Spatial Data Structure]]
|
||||
- 변형: [[KD-Tree]] · [[Octree]] · [[Grid]]
|
||||
- 응용: [[Ray Tracing]] · [[Collision Detection]] · [[Frustum Culling]]
|
||||
- Adjacent: [[SAH]] · [[Morton Code]] · [[OptiX]]
|
||||
- 변형: [[KD-Tree]] · [[Octree]]
|
||||
- 응용: [[Collision Detection]] · [[Frustum Culling]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: explain SAH math, generate boilerplate AABB/traversal code.
|
||||
|
||||
@@ -24,7 +24,6 @@ github_commit: pending
|
||||
- Draw call 절감 = 매 frame budget 의 핵심.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[BatchedMesh and InstancedMesh Performance]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
@@ -24,7 +24,6 @@ github_commit: pending
|
||||
- Energy expenditure 5-8 METs (Expert+ 난이도).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Beat Saber Exergaming]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
-1
@@ -24,7 +24,6 @@ github_commit: pending
|
||||
- Recovery timeline — typically 10-30 min for mild cases.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[VR Exergaming Aftereffects]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
@@ -122,10 +122,10 @@ console.log(metrics.find(m => m.name === "LayoutCount"));
|
||||
**기본값**: standards + feature detection; Blink-specific API only with fallbacks.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Browser Engine]] · [[Chromium]]
|
||||
- 변형: [[WebKit]] · [[Gecko]] · [[Servo]]
|
||||
- 응용: [[Electron]] · [[Puppeteer]] · [[Playwright]]
|
||||
- Adjacent: [[V8]] · [[Skia]] · [[LayoutNG]]
|
||||
- 부모: [[Chromium]]
|
||||
- 변형: [[WebKit]]
|
||||
- 응용: [[Electron]] · [[Playwright]]
|
||||
- Adjacent: [[V8]] · [[Skia]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: explain pipeline stage, generate web platform boilerplate.
|
||||
|
||||
@@ -120,10 +120,9 @@ perf stat -e branches,branch-misses ./bench
|
||||
**기본값**: write clear branchful code; branchless only when profiler shows misprediction hotspot.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[CPU Microarchitecture]] · [[Pipeline]]
|
||||
- 변형: [[TAGE]] · [[Perceptron Predictor]] · [[BTB]]
|
||||
- 응용: [[JIT Compilation]] · [[Branchless Programming]]
|
||||
- Adjacent: [[Spectre]] · [[Speculative Execution]] · [[cmov]]
|
||||
- 부모: [[Pipeline]]
|
||||
- 응용: [[JIT Compilation]]
|
||||
- Adjacent: [[Spectre]] · [[Speculative Execution]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: explain mispredict cost, generate branchless equivalents, suggest hints.
|
||||
|
||||
@@ -135,10 +135,9 @@ geo.computeBoundingSphere(); // required for frustum culling after vertex move
|
||||
**기본값**: static indexed BufferGeometry; switch to instanced/merged for >100 copies.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Three.js]] · [[WebGL Geometry]]
|
||||
- 변형: [[InstancedBufferGeometry]] · [[BatchedMesh]]
|
||||
- 응용: [[Custom Shader]] · [[GPGPU Particles]]
|
||||
- Adjacent: [[BufferAttribute]] · [[VBO]] · [[VAO]]
|
||||
- 부모: [[Three.js]]
|
||||
- 변형: [[BatchedMesh]]
|
||||
- Adjacent: [[BufferAttribute]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: generate procedural geometry boilerplate, debug attribute layout.
|
||||
|
||||
@@ -24,7 +24,6 @@ github_commit: pending
|
||||
- 임상: ADHD, dementia, TBI 의 attention/processing speed assessment.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[CANTAB 5-Choice RTI]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
@@ -126,9 +126,9 @@ else dst = (char*)to_space + free_;
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Garbage Collection]] · [[Memory Management]]
|
||||
- 변형: [[Mark-Sweep GC]] · [[Mark-Compact GC]] · [[Generational GC]]
|
||||
- 응용: [[V8 Engine]] · [[OCaml Runtime]] · [[Node.js]]
|
||||
- Adjacent: [[Bump Allocator]] · [[Forwarding Pointer]] · [[Write Barrier]]
|
||||
- 변형: [[Mark-Sweep]]
|
||||
- 응용: [[V8 Engine]] · [[Node.js]]
|
||||
- Adjacent: [[Write Barrier]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: GC 설명, runtime internals 분석, language implementation 설계 시.
|
||||
|
||||
@@ -139,10 +139,10 @@ chrome --js-flags="--max-old-space-size=8192"
|
||||
**기본값**: 매 3-snapshot technique (baseline → workload → after-gc → diff).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[V8 Engine]] · [[Chrome DevTools]]
|
||||
- 변형: [[Node.js Heap Profiling]] · [[Electron V8 Memory Cage]]
|
||||
- 부모: [[V8 Engine]] · [[Chrome DevTools 메모리 프로파일링|Chrome DevTools]]
|
||||
- 변형: [[Electron V8 Memory Cage]]
|
||||
- 응용: [[Memory Leak Detection]] · [[Performance Optimization]]
|
||||
- Adjacent: [[Garbage Collection]] · [[V8 Heap Spaces]]
|
||||
- Adjacent: [[Garbage Collection]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 leak 의 reproducibility 의 OK 의 case. 매 retainer chain 의 interpretation 의 LLM 의 강점.
|
||||
|
||||
@@ -133,10 +133,7 @@ struct StringObfPass : PassInfoMixin<StringObfPass> {
|
||||
**기본값**: Don't obfuscate — secrets belong server-side. Necessary 시 매 layered defense.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Software Security]] · [[Reverse Engineering]]
|
||||
- 변형: [[Virtualization Obfuscation]] · [[Whitebox Cryptography]]
|
||||
- 응용: [[DRM]] · [[Anti-Cheat]] · [[Malware Analysis]]
|
||||
- Adjacent: [[Symbolic Execution]] · [[Decompilation]] · [[Ghidra]] · [[IDA Pro]]
|
||||
- 응용: [[Malware Analysis]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Defense-in-depth context, malware analysis 학습, anti-tamper design.
|
||||
|
||||
@@ -122,10 +122,9 @@ def anonymize(src: str) -> str:
|
||||
**기본값**: 매 RF + AST n-gram 으로 baseline. Embedding 으로 boost.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Authorship Attribution]] · [[Software Forensics]]
|
||||
- 변형: [[Natural Language Stylometry]] · [[Binary Authorship Attribution]]
|
||||
- 응용: [[Plagiarism Detection]] · [[Malware Attribution]] · [[Supply Chain Security]]
|
||||
- Adjacent: [[Code Obfuscation]] · [[CodeBERT]] · [[AST]]
|
||||
- 부모: [[Authorship Attribution]]
|
||||
- 응용: [[Supply Chain Security]]
|
||||
- Adjacent: [[Code Obfuscation]] · [[AST]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Forensic context, plagiarism check, OSS contributor analysis.
|
||||
|
||||
@@ -132,9 +132,9 @@ joern> cpg.runScript("export-cpg.sc")
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[SAST]] · [[Static Analysis]]
|
||||
- 변형: [[AST]] · [[Control Flow Graph]] · [[Data Flow Analysis]]
|
||||
- 응용: [[Joern]] · [[CodeQL]] · [[Vulnerability Detection]]
|
||||
- Adjacent: [[DAST]] · [[SCA]] · [[DevSecOps Framework]]
|
||||
- 변형: [[AST]]
|
||||
- 응용: [[Joern]] · [[CodeQL]]
|
||||
- Adjacent: [[보안_및_시스템_신뢰성_표준|DAST]] · [[SCA_Fundamentals|SCA]] · [[DevSecOps Framework]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 Joern Scala query 의 draft, 매 CPG result 의 false positive triage, 매 custom sink/source 의 suggestion.
|
||||
|
||||
@@ -120,10 +120,9 @@ depends_on:
|
||||
**기본값**: Optimize for reader, not writer — 매 reduce extraneous, accept intrinsic.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Software Design]] · [[Cognitive Psychology]]
|
||||
- 변형: [[Intrinsic Load]] · [[Extraneous Load]] · [[Germane Load]]
|
||||
- 부모: [[Cognitive Psychology]]
|
||||
- 응용: [[Team Topologies]] · [[Hexagonal Architecture]] · [[Clean Code]]
|
||||
- Adjacent: [[Working Memory]] · [[Code Smell]] · [[Naming Things]]
|
||||
- Adjacent: [[Working Memory]] · [[Code Smell]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Code review, refactoring decision, team structure 설계, PR size 판단.
|
||||
|
||||
@@ -127,10 +127,9 @@ fn rename(node: &SyntaxNode, old: &str, new: &str) -> String {
|
||||
**기본값**: User-facing tool 이면 매 CST. Compiler internal pass 면 매 AST.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Parser]] · [[Compiler Frontend]]
|
||||
- 변형: [[AST]] · [[GLR Parser]] · [[PEG Parser]]
|
||||
- 응용: [[tree-sitter]] · [[rust-analyzer]] · [[Roslyn]] · [[Prettier]]
|
||||
- Adjacent: [[Lexer]] · [[LSP]] · [[Incremental Parsing]]
|
||||
- 부모: [[Parser]]
|
||||
- 변형: [[AST]]
|
||||
- 응용: [[Prettier]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Source-to-source transformation, IDE-grade tooling, codemods.
|
||||
|
||||
@@ -3,31 +3,25 @@ id: wiki-2026-0508-continuous-integration-지속적-통합-ci
|
||||
title: "Continuous Integration (지속적 통합, CI)"
|
||||
category: 10_Wiki/Topics
|
||||
status: duplicate
|
||||
canonical_id: ci-cd-pipeline
|
||||
duplicate_of: "[[CI_CD_Pipeline]]"
|
||||
aliases: [CI, 지속적 통합]
|
||||
canonical_id: wiki-2026-0508-continuous-integration-ci
|
||||
duplicate_of: "[[Continuous Integration (CI)]]"
|
||||
aliases: []
|
||||
source_trust_level: A
|
||||
confidence_score: 0.9
|
||||
verification_status: redirected
|
||||
tags: [duplicate, ci, devops]
|
||||
last_reinforced: 2026-05-10
|
||||
github_commit: applied
|
||||
tags: [duplicate]
|
||||
last_reinforced: 2026-05-20
|
||||
github_commit: pending
|
||||
---
|
||||
|
||||
# Continuous Integration (지속적 통합, CI)
|
||||
|
||||
> **이 문서는 [[CI_CD_Pipeline]] 의 중복본입니다.** CI/CD pipeline 통합 canonical 로 redirect.
|
||||
|
||||
## 핵심 요약
|
||||
- CI = 매 frequent integration + automated test on every commit.
|
||||
- 매 trunk-based + < 10min feedback loop + green main 이 핵심.
|
||||
> **이 문서는 [[Continuous Integration (CI)]] 의 중복본입니다.** Canonical 문서로 redirect.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[CI_CD_Pipeline]] (canonical)
|
||||
- Adjacent: [[Continuous Delivery (지속적 제공, CD)]] · [[Test_Automation]] · [[Engineering Metrics (DORA)]]
|
||||
- 부모: [[Continuous Integration (CI)]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | 중복 처리 — CI_CD_Pipeline 로 redirect |
|
||||
| 2026-05-20 | 중복 병합 — canonical 문서로 redirect |
|
||||
|
||||
@@ -124,10 +124,7 @@ weekly_metrics = {
|
||||
**기본값**: 매 weekly trio + 매 minimum 1 interview/week + 매 OST 의 living document.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Product Management]] · [[User Research]]
|
||||
- 변형: [[Continuous Delivery]] · [[Continuous Integration]]
|
||||
- 응용: [[Opportunity Solution Tree]] · [[Customer Interview]]
|
||||
- Adjacent: [[A/B Testing]] · [[Jobs to be Done]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 interview transcript 의 thematic coding, 매 OST 의 draft, 매 assumption 의 listing, 매 research synthesis.
|
||||
|
||||
@@ -3,30 +3,25 @@ id: wiki-2026-0508-continuous-integration
|
||||
title: Continuous Integration
|
||||
category: 10_Wiki/Topics
|
||||
status: duplicate
|
||||
canonical_id: continuous-integration-ci
|
||||
duplicate_of: "[[Continuous Integration (지속적 통합, CI)]]"
|
||||
aliases: [CI]
|
||||
canonical_id: wiki-2026-0508-continuous-integration-ci
|
||||
duplicate_of: "[[Continuous Integration (CI)]]"
|
||||
aliases: []
|
||||
source_trust_level: A
|
||||
confidence_score: 0.9
|
||||
verification_status: redirected
|
||||
tags: [duplicate, ci, devops]
|
||||
last_reinforced: 2026-05-10
|
||||
github_commit: applied
|
||||
tags: [duplicate]
|
||||
last_reinforced: 2026-05-20
|
||||
github_commit: pending
|
||||
---
|
||||
|
||||
# Continuous Integration
|
||||
|
||||
> **이 문서는 [[Continuous Integration (지속적 통합, CI)]] 의 중복본입니다.** Canonical 로 redirect.
|
||||
|
||||
## 핵심 요약
|
||||
- 영문 stub — Korean canonical 에 모든 substantive content.
|
||||
> **이 문서는 [[Continuous Integration (CI)]] 의 중복본입니다.** Canonical 문서로 redirect.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Continuous Integration (지속적 통합, CI)]] (canonical)
|
||||
- Adjacent: [[CI_CD_Pipeline]] · [[Continuous Delivery (지속적 제공, CD)]]
|
||||
- 부모: [[Continuous Integration (CI)]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | 중복 처리 — canonical 로 redirect |
|
||||
| 2026-05-20 | 중복 병합 — canonical 문서로 redirect |
|
||||
|
||||
@@ -141,10 +141,10 @@ gl.generateMipmap(gl.TEXTURE_2D_ARRAY);
|
||||
**기본값**: 매 same-size + N > 8 → array texture.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[WebGL2]] · [[WebGPU]]
|
||||
- 변형: [[Texture Atlas]] · [[Bindless Textures]]
|
||||
- 응용: [[Voxel Rendering]] · [[Sprite Batching]] · [[Real-time Physics Simulation]]
|
||||
- Adjacent: [[GPU Memory Layout]] · [[Mipmap]]
|
||||
- 부모: [[WebGL 20|WebGL2]] · [[WebGPU]]
|
||||
- 변형: [[Texture Atlas]]
|
||||
- 응용: [[실시간 물리 시뮬레이션 동기화|Real-time Physics Simulation]]
|
||||
- Adjacent: [[Mipmap]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 shader code generation 의 boilerplate 의 GLSL/WGSL 의 sample. 매 LLM 의 layer index 의 binding 의 OK.
|
||||
|
||||
@@ -163,10 +163,9 @@ def ensemble_decision(image, video_clip):
|
||||
**기본값**: ensemble of frequency + foundation-model + watermark verification.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Computer Vision]] · [[AI Security]]
|
||||
- 변형: [[Audio Deepfake Detection]] · [[Video Authentication]]
|
||||
- 응용: [[KYC Systems]] · [[Content Moderation]] · [[Digital Forensics]]
|
||||
- Adjacent: [[GAN Fingerprinting]] · [[Adversarial ML]] · [[C2PA]]
|
||||
- 부모: [[Computer Vision]]
|
||||
- 응용: [[Content Moderation]]
|
||||
- Adjacent: [[C2PA]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: feature engineering 의 brainstorm, dataset curation script, false-positive 분석.
|
||||
|
||||
@@ -129,10 +129,10 @@ cosign attest --predicate sbom.spdx.json --type spdx ghcr.io/org/app@sha256:...
|
||||
**기본값**: 매 Semgrep + Trivy + gitleaks + Checkov + cosign + Falco.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[OWASP Top 10]] · [[안전한 소프트웨어 개발 수명주기(SSDLC)]]
|
||||
- 부모: [[보안_및_시스템_신뢰성_표준|OWASP Top 10]] · [[안전한 소프트웨어 개발 수명주기(SSDLC)]]
|
||||
- 변형: [[애플리케이션_보안_태세_관리ASPM]]
|
||||
- 응용: [[SAST]] · [[DAST]] · [[SCA]] · [[Secret_Management]]
|
||||
- Adjacent: [[Zero-Trust Architecture]] · [[CI_CD_Pipeline]]
|
||||
- 응용: [[SAST]] · [[보안_및_시스템_신뢰성_표준|DAST]] · [[SCA_Fundamentals|SCA]] · [[Secret_Management]]
|
||||
- Adjacent: [[보안_및_시스템_신뢰성_표준|Zero-Trust Architecture]] · [[CI_CD_Pipeline]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: vuln triage, false-positive filter, remediation PR draft, threat-model brainstorm.
|
||||
|
||||
@@ -135,9 +135,8 @@ License: MIT
|
||||
**기본값**: 매 Apache 2.0 (OSS) / 매 proprietary EULA (commercial).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Software Licensing]] · [[Legal Compliance]]
|
||||
- 변형: [[Copyright]] · [[Patent]] · [[Trade Secret]]
|
||||
- 응용: [[SBOM]] · [[License Audit]] · [[Open Source Compliance]]
|
||||
- 변형: [[Copyright]]
|
||||
- 응용: [[SBOM]]
|
||||
- Adjacent: [[GDPR]] · [[Ensuring Data Privacy]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -111,8 +111,8 @@ p.produce('plant.line1.temp', key=part_id, value=msg.SerializeToString())
|
||||
**기본값**: 매 OPC UA + MQTT Sparkplug B → Kafka → Iceberg.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Digital Twins]] · [[Digital-Twin-Technology]]
|
||||
- 변형: [[IoT]]
|
||||
- 부모: [[Digital Twins]] · [[Digital Twins|Digital-Twin-Technology]]
|
||||
- 변형: [[클라우드_인프라_및_IaC_운영_표준|IoT]]
|
||||
- 응용: [[Engineering Metrics (DORA)]]
|
||||
- Adjacent: [[Digital Intellectual Property Rights]]
|
||||
|
||||
|
||||
@@ -121,10 +121,9 @@ class FailurePredictor(nn.Module):
|
||||
**기본값**: 매 start digital shadow → ML 추가 후 twin → bidirectional 마지막.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Cyber-Physical Systems]] · [[Industry 4.0]]
|
||||
- 변형: [[Digital Shadow]] · [[Digital Model]]
|
||||
- 응용: [[Predictive Maintenance]] · [[Sim-to-Real]] · [[Smart City]]
|
||||
- Adjacent: [[OPC-UA]] · [[USD (OpenUSD)]] · [[NVIDIA Omniverse]] · [[FMI/FMU]]
|
||||
- 부모: [[Cyber-Physical Systems]]
|
||||
- 응용: [[Predictive Maintenance]]
|
||||
- Adjacent: [[NVIDIA Omniverse]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: IoT/manufacturing/CPS context, sim2real planning, asset lifecycle.
|
||||
|
||||
@@ -120,10 +120,9 @@ def dual_system_update(V_reward, V_aversion, r_pos, r_neg, s, s_next, alpha=0.1,
|
||||
**기본값**: 매 RPE-aware design — but 매 ethics 의 weight (manipulation 의 risk).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Reinforcement Learning]] · [[Neuroscience]]
|
||||
- 변형: [[Serotonin]] · [[Norepinephrine]]
|
||||
- 부모: [[Reinforcement Learning]]
|
||||
- 응용: [[Habit Formation]] · [[Game Design]] · [[Recommender Systems]]
|
||||
- Adjacent: [[TD-Learning]] · [[Curiosity-Driven RL]] · [[Behavioral Economics]]
|
||||
- Adjacent: [[TD-Learning]] · [[Behavioral Economics]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 product UX 의 retention mechanic 의 audit. 매 dark-pattern 의 detection.
|
||||
|
||||
@@ -122,9 +122,9 @@ vkCmdExecuteCommands(primaryCB, N, secondaryCBs.data());
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[GPU Pipeline]] · [[Real-time Rendering]]
|
||||
- 변형: [[Indirect Draw]] · [[Mesh Shader]] · [[Compute Dispatch]]
|
||||
- 응용: [[Frustum Culling]] · [[Occlusion Culling]] · [[Geometry Merging]]
|
||||
- Adjacent: [[Vulkan]] · [[D3D12]] · [[Metal]] · [[WebGPU]]
|
||||
- 변형: [[Indirect Draw]]
|
||||
- 응용: [[Frustum Culling]] · [[Geometry Merging]]
|
||||
- Adjacent: [[Vulkan]] · [[Metal]] · [[WebGPU]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Renderer architecture, perf budget 분석, profiling 결과 해석.
|
||||
|
||||
@@ -173,10 +173,9 @@ RETURN target,
|
||||
**기본값**: AI tutor (Socratic) + adaptive engine + xAPI tracking + Open Badges credential.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Education Technology]] · [[Learning Science]]
|
||||
- 변형: [[LMS]] · [[LXP]] · [[MOOC]]
|
||||
- 응용: [[AI Tutor]] · [[Adaptive Learning]] · [[Micro-Credential]]
|
||||
- Adjacent: [[Knowledge Tracing]] · [[Verifiable Credentials]] · [[xAPI]]
|
||||
- 부모: [[Education Technology]]
|
||||
- 변형: [[LMS]]
|
||||
- 응용: [[Adaptive Learning]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Socratic tutor, content scaffolding generation, formative feedback.
|
||||
|
||||
@@ -140,9 +140,9 @@ sum(rate(cache_hits_total[5m])) /
|
||||
**기본값**: 매 profile-first, 매 measure both before/after, 매 single-dimension fixation 매 X.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Performance Engineering]] · [[Site Reliability Engineering]]
|
||||
- 변형: [[Latency]] · [[Throughput]] · [[Cost Optimization]]
|
||||
- 응용: [[Flame_Graphs]] · [[Caching]] · [[Profiling]]
|
||||
- 부모: [[Site Reliability Engineering]]
|
||||
- 변형: [[Latency]]
|
||||
- 응용: [[Flame_Graphs]] · [[Profiling]]
|
||||
- Adjacent: [[FinOps]] · [[Green Software]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -142,8 +142,7 @@ mainWindow.webContents.on('render-process-gone', (event, details) => {
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[V8 Engine]] · [[Electron]]
|
||||
- 변형: [[V8 Heap Spaces]] · [[Chrome V8 Heap Analysis]]
|
||||
- 응용: [[Electron Performance]] · [[Multi-Process Architecture]]
|
||||
- 변형: [[Chrome V8 Heap Analysis]]
|
||||
- Adjacent: [[Pointer Compression]] · [[V8 Sandbox]] · [[Garbage Collection]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -199,9 +199,9 @@ fn get_user(id: UserId) { /* ... */ }
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Object-Oriented Programming]] · [[Information Hiding]]
|
||||
- 변형: [[Module System]] · [[Capability-Based Security]]
|
||||
- 응용: [[API Design]] · [[Library Design]] · [[Refactoring]]
|
||||
- Adjacent: [[Abstraction]] · [[SOLID]] · [[Design by Contract]]
|
||||
- 변형: [[Module System]]
|
||||
- 응용: [[API Design]] · [[Library Design]] · [[Refactoring_Best_Practices|Refactoring]]
|
||||
- Adjacent: [[Abstraction]] · [[SOLID]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: API surface review, accessor pattern 의 generate, visibility audit.
|
||||
|
||||
@@ -131,9 +131,7 @@ restrictions: null # 매 직접 push 매 X — PR-only
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[DevOps]] · [[Site Reliability Engineering]]
|
||||
- 변형: [[SPACE Framework]] · [[Flow Metrics]]
|
||||
- 응용: [[Continuous Delivery]] · [[Continuous Integration]]
|
||||
- Adjacent: [[Engineering OKRs]] · [[Incident Response]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: deploy log → metric extraction, incident root-cause 분류 (deploy 유발 여부).
|
||||
|
||||
@@ -131,8 +131,8 @@ await db.consents.insertOne(consent);
|
||||
**기본값**: 매 minimize + classify + tokenize + consent ledger + DSAR API.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Practical-Cryptography]] · [[Symmetric-Encryption]]
|
||||
- 변형: [[Zero-Trust Architecture]]
|
||||
- 부모: [[Practical-Cryptography]] · [[보안_및_시스템_신뢰성_표준|Symmetric-Encryption]]
|
||||
- 변형: [[보안_및_시스템_신뢰성_표준|Zero-Trust Architecture]]
|
||||
- 응용: [[Anomaly-Detection]] · [[Information-Society]]
|
||||
- Adjacent: [[Digital Intellectual Property Rights]]
|
||||
|
||||
|
||||
@@ -176,10 +176,9 @@ turbo build --remote-only
|
||||
**기본값**: 매 TS/JS team 에게 Turborepo 또는 Nx (size dependent).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Build Systems]] · [[Version Control]]
|
||||
- 변형: [[Polyrepo]] · [[Multi-Repo Federation]]
|
||||
- 응용: [[CI-CD Pipelines]] · [[Code Ownership]]
|
||||
- Adjacent: [[Bazel]] · [[Nx]] · [[Turborepo]] · [[pnpm Workspaces]]
|
||||
- 부모: [[Version Control]]
|
||||
- 응용: [[Code Ownership]]
|
||||
- Adjacent: [[Bazel]] · [[Nx]] · [[Turborepo]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: refactoring across packages, generating new lib boilerplate (Nx generator), CODEOWNERS automation, dependency graph 분석.
|
||||
|
||||
@@ -122,9 +122,9 @@ rg "getBooleanValue\\('old-checkout'" --type ts
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Continuous Delivery]] · [[Progressive Delivery]]
|
||||
- 변형: [[Release Toggle]] · [[Experiment Toggle]] · [[Kill Switch]]
|
||||
- 응용: [[Canary Deployment]] · [[A/B Testing]] · [[Trunk-based Development]]
|
||||
- Adjacent: [[OpenFeature]] · [[LaunchDarkly]] · [[Unleash]] · [[Statsig]]
|
||||
- 변형: [[Kill Switch]]
|
||||
- 응용: [[Trunk-based Development]]
|
||||
- Adjacent: [[LaunchDarkly]] · [[Unleash]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Release strategy 설계, incident playbook, experiment platform 평가.
|
||||
|
||||
@@ -157,10 +157,10 @@ jobs:
|
||||
**기본값**: Figma Variables → Style Dictionary → Tailwind/CSS vars + Code Connect.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Design System]] · [[Frontend Architecture]]
|
||||
- 변형: [[Design Tokens]] · [[Theming Strategy]]
|
||||
- 부모: [[Design System]] · [[Large_Frontend_Projects|Frontend Architecture]]
|
||||
- 변형: [[Design Tokens]]
|
||||
- 응용: [[Storybook]] · [[Component Library]]
|
||||
- Adjacent: [[Tailwind CSS]] · [[Visual Regression]]
|
||||
- Adjacent: [[CSS_Architecture_and_Styling|Tailwind CSS]] · [[Visual Regression]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Figma MCP → component spec → React scaffold (props, variants 자동).
|
||||
|
||||
@@ -131,10 +131,9 @@ app.post('/figma-webhook', async (req, res) => {
|
||||
**기본값**: Component + auto-layout + variable. Style 은 매 deprecated.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Design Tool]] · [[Collaboration Software]]
|
||||
- 변형: [[FigJam]] · [[Figma Slides]] · [[Sketch]] · [[Penpot]]
|
||||
- 응용: [[Design System]] · [[Design Token]] · [[Dev Mode]]
|
||||
- Adjacent: [[Style Dictionary]] · [[Storybook]] · [[Tokens Studio]]
|
||||
- 변형: [[FigJam]]
|
||||
- 응용: [[Design System]] · [[Dev Mode]]
|
||||
- Adjacent: [[Style Dictionary Pipelines|Style Dictionary]] · [[Storybook]] · [[Tokens Studio]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Design system architecture, plugin authoring, design-code pipeline.
|
||||
|
||||
@@ -149,10 +149,9 @@ go func() { http.ListenAndServe("localhost:6060", nil) }()
|
||||
**기본값**: 매 production 에 Pyroscope + 매 dev 에 native profiler.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Profiling]] · [[Performance Engineering]]
|
||||
- 변형: [[Icicle Graphs]] · [[Differential Flame Graph]] · [[Off-CPU Flame Graph]]
|
||||
- 응용: [[Performance Tuning]] · [[Continuous Profiling]] · [[SRE]]
|
||||
- Adjacent: [[perf]] · [[eBPF]] · [[pprof]] · [[Pyroscope]]
|
||||
- 부모: [[Profiling]]
|
||||
- 응용: [[SRE]]
|
||||
- Adjacent: [[eBPF]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 flame graph 의 hot frame 식별 + optimization 제안, folded text → 자연어 summary, differential interpretation.
|
||||
|
||||
@@ -168,8 +168,8 @@ def test_sort_is_ordered(xs):
|
||||
**기본값**: types everywhere + property-based for parsers + TLA+ for distributed designs + reach for proof assistants only when life/billions on the line.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Software_Engineering]] · [[Computer_Science_and_Theory]]
|
||||
- 변형: [[Type-safe Error Handling Exhaustiveness Checking]] · [[Type Systems]]
|
||||
- 부모: [[Computer_Science_and_Theory]]
|
||||
- 변형: [[Type-safe Error Handling Exhaustiveness Checking]] · [[TypeScript 타입 시스템 (TypeScript Type System)|Type Systems]]
|
||||
- 응용: [[Practical-Cryptography]] · [[SAST]]
|
||||
- Adjacent: [[Quality-Control]] · [[Test_Automation]]
|
||||
|
||||
|
||||
@@ -172,10 +172,9 @@ struct FrustumCullJob : IJobParallelFor {
|
||||
**기본값**: 매 modern engine — GPU compute culling + BVH for spatial queries.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Visibility Culling]] · [[Real-Time Rendering]]
|
||||
- 변형: [[Occlusion Culling]] · [[Portal Culling]] · [[Backface Culling]]
|
||||
- 응용: [[GPU-Driven Rendering]] · [[Nanite]] · [[LOD Systems]]
|
||||
- Adjacent: [[BVH]] · [[Octree]] · [[Hierarchical Z-Buffer]]
|
||||
- 부모: [[Real-Time Rendering]]
|
||||
- 응용: [[GPU-Driven Rendering]] · [[Nanite]]
|
||||
- Adjacent: [[BVH]] · [[Octree]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: plane extraction code 검토, false-cull bug 디버깅 (e.g., flipped normal), GPU shader skeleton.
|
||||
|
||||
@@ -124,9 +124,9 @@ def merge_octree(node):
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Rendering Optimization]] · [[Draw Call]]
|
||||
- 변형: [[GPU Instancing]] · [[Mesh Shader]] · [[Indirect Draw]]
|
||||
- 변형: [[GPU Instancing]] · [[Indirect Draw]]
|
||||
- 응용: [[Texture Atlas]] · [[Octree]] · [[BVH]]
|
||||
- Adjacent: [[Frustum Culling]] · [[LOD]] · [[Vertex Buffer]]
|
||||
- Adjacent: [[Frustum Culling]] · [[LOD]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Mobile / web renderer 최적화, asset pipeline 설계.
|
||||
|
||||
@@ -162,10 +162,9 @@ def evaluate(coords, ground_truth_rtt):
|
||||
**기본값**: 매 modern usage — Vivaldi w/ height (4D + height).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Network Latency]] · [[Distributed Systems]]
|
||||
- 변형: [[Vivaldi]] · [[Meridian]] · [[King Latency Estimation]]
|
||||
- 응용: [[CDN]] · [[DHT]] · [[Overlay Networks]]
|
||||
- Adjacent: [[Anycast]] · [[BGP]] · [[Network Tomography]]
|
||||
- 부모: [[Distributed Systems]]
|
||||
- 변형: [[Vivaldi]]
|
||||
- 응용: [[CDN]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 algorithm 설명, 매 stress function tuning 제안, embedding dimension 선택 기준.
|
||||
|
||||
@@ -142,10 +142,7 @@ for pid, sols in buckets.items():
|
||||
**기본값**: 매 LLM eval — APPS/HumanEval 매 main + GCJ 매 supplementary.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Code Datasets]] · [[Code LLM Benchmarks]]
|
||||
- 변형: [[CodeNet]] · [[APPS Dataset]] · [[HumanEval]]
|
||||
- 응용: [[Code Clone Detection]] · [[Code Translation]] · [[LLM Coding Eval]]
|
||||
- Adjacent: [[Codeforces Dataset]] · [[LeetCode Solutions Corpus]] · [[Decontamination]]
|
||||
- 변형: [[HumanEval]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 dataset filter pipeline 작성, contamination 검사 design, problem grouping logic.
|
||||
|
||||
@@ -24,7 +24,6 @@ github_commit: pending
|
||||
- Canonical 문서가 매 hardware (HMD, controller, treadmill, haptic suit), 매 game design (Beat Saber, Supernatural, FitXR), 매 health outcome 측정을 통합 관리.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[VR Exergame]] (canonical)
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
@@ -130,9 +130,8 @@ function isolatedPrecisionAvailable() {
|
||||
**기본값**: Duration 측정엔 매 monotonic. 매 Date 는 user-facing timestamp 만.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Web Performance APIs]] · [[Time Measurement]]
|
||||
- 변형: [[Performance Timeline]] · [[Long Tasks API]] · [[Event Timing API]]
|
||||
- 응용: [[Core Web Vitals]] · [[User Timing]] · [[Animation Frame]]
|
||||
- 변형: [[Long Tasks]]
|
||||
- 응용: [[Core Web Vitals Optimization (INP, LCP 개선)|Core Web Vitals]]
|
||||
- Adjacent: [[Spectre]] · [[Cross-Origin Isolation]] · [[SharedArrayBuffer]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -160,9 +160,8 @@ done
|
||||
**기본값**: 매 TS/JS team — Husky v9 + lint-staged + commitlint.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Git Hooks]] · [[DevEx]]
|
||||
- 변형: [[pre-commit]] · [[lefthook]] · [[simple-git-hooks]]
|
||||
- 응용: [[Lint-Staged]] · [[Commitlint]] · [[Conventional Commits]]
|
||||
- 변형: [[pre-commit]] · [[lefthook]]
|
||||
- 응용: [[Lint-Staged]] · [[Conventional Commits]]
|
||||
- Adjacent: [[ESLint]] · [[Prettier]] · [[Biome]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -2,159 +2,26 @@
|
||||
id: wiki-2026-0508-ifcjs-fragment
|
||||
title: IFCjs (Fragment)
|
||||
category: 10_Wiki/Topics
|
||||
status: verified
|
||||
canonical_id: self
|
||||
aliases: [IFC.js, ThatOpen Fragment, web-ifc, BIM web viewer]
|
||||
duplicate_of: none
|
||||
status: duplicate
|
||||
canonical_id: wiki-2026-0508-ifcjs
|
||||
duplicate_of: "[[IFCjs]]"
|
||||
aliases: []
|
||||
source_trust_level: A
|
||||
confidence_score: 0.85
|
||||
verification_status: applied
|
||||
tags: [bim, ifc, threejs, web, fragment]
|
||||
raw_sources: []
|
||||
last_reinforced: 2026-05-10
|
||||
confidence_score: 0.9
|
||||
verification_status: redirected
|
||||
tags: [duplicate]
|
||||
last_reinforced: 2026-05-20
|
||||
github_commit: pending
|
||||
tech_stack:
|
||||
language: TypeScript
|
||||
framework: Three.js, web-ifc, ThatOpen Components
|
||||
---
|
||||
|
||||
# IFCjs (Fragment)
|
||||
|
||||
## 매 한 줄
|
||||
> **"매 IFC BIM model 의 web-native streaming 형식"**. 매 2021 IFC.js (Antonio Gonzalez Viegas) → 매 2024 ThatOpen Components 로 rebrand 된 toolchain. 매 Fragment format 매 IFC 의 매 GPU-friendly binary representation — 매 1GB IFC 가 매 50MB Fragment 로 압축, 매 browser 의 매 instant load.
|
||||
|
||||
## 매 핵심
|
||||
|
||||
### 매 IFC 의 limitation
|
||||
- 매 STEP-based ASCII format — 매 100MB+ project 매 routine.
|
||||
- 매 spatial hierarchy + property + geometry 매 모두 nested — 매 partial load 의 X.
|
||||
- 매 Three.js 의 직접 render 의 X — 매 tessellation needed.
|
||||
|
||||
### 매 Fragment 의 solution
|
||||
- 매 web-ifc (WASM) 가 매 IFC parse + tessellate.
|
||||
- 매 결과를 매 Fragment binary (FlatBuffers-based) 로 serialize.
|
||||
- 매 InstancedMesh 단위 grouping → 매 draw call 격감.
|
||||
- 매 property data 매 별도 SQLite-WASM file → 매 lazy query.
|
||||
|
||||
### 매 응용
|
||||
1. 건축 설계 review web tool.
|
||||
2. Construction 현장 mobile BIM viewer.
|
||||
3. Facility management dashboard.
|
||||
4. Clash detection web service.
|
||||
|
||||
## 💻 패턴
|
||||
|
||||
### 1. ThatOpen Components 초기화 (2026)
|
||||
```ts
|
||||
import * as OBC from "@thatopen/components";
|
||||
import * as OBCF from "@thatopen/components-front";
|
||||
|
||||
const components = new OBC.Components();
|
||||
const worlds = components.get(OBC.Worlds);
|
||||
const world = worlds.create<
|
||||
OBC.SimpleScene, OBC.SimpleCamera, OBCF.PostproductionRenderer
|
||||
>();
|
||||
|
||||
world.scene = new OBC.SimpleScene(components);
|
||||
world.renderer = new OBCF.PostproductionRenderer(components, container);
|
||||
world.camera = new OBC.SimpleCamera(components);
|
||||
components.init();
|
||||
```
|
||||
|
||||
### 2. IFC → Fragment 변환
|
||||
```ts
|
||||
const ifcLoader = components.get(OBC.IfcLoader);
|
||||
await ifcLoader.setup();
|
||||
|
||||
const file = await fetch("model.ifc");
|
||||
const buffer = new Uint8Array(await file.arrayBuffer());
|
||||
const model = await ifcLoader.load(buffer);
|
||||
world.scene.three.add(model);
|
||||
```
|
||||
|
||||
### 3. 미리 만든 Fragment load (instant)
|
||||
```ts
|
||||
const fragments = components.get(OBC.FragmentsManager);
|
||||
const data = await fetch("model.frag").then(r => r.arrayBuffer());
|
||||
const group = fragments.load(new Uint8Array(data));
|
||||
world.scene.three.add(group);
|
||||
```
|
||||
|
||||
### 4. Property query (lazy)
|
||||
```ts
|
||||
const indexer = components.get(OBC.IfcRelationsIndexer);
|
||||
await indexer.process(model);
|
||||
|
||||
// Get all walls
|
||||
const walls = await indexer.getEntitiesByType(model, "IFCWALL");
|
||||
for (const expressID of walls) {
|
||||
const props = await model.getProperties(expressID);
|
||||
console.log(props.Name.value);
|
||||
}
|
||||
```
|
||||
|
||||
### 5. Highlight on click
|
||||
```ts
|
||||
const highlighter = components.get(OBCF.Highlighter);
|
||||
highlighter.setup({ world });
|
||||
|
||||
highlighter.events.select.onHighlight.add((selection) => {
|
||||
console.log("Selected fragments:", selection);
|
||||
});
|
||||
```
|
||||
|
||||
### 6. Section plane (clipper)
|
||||
```ts
|
||||
const clipper = components.get(OBC.Clipper);
|
||||
clipper.enabled = true;
|
||||
container.addEventListener("dblclick", () => clipper.create(world));
|
||||
```
|
||||
|
||||
### 7. Streaming (large model)
|
||||
```ts
|
||||
const streamer = components.get(OBCF.IfcStreamer);
|
||||
streamer.url = "https://cdn.example.com/fragments/";
|
||||
streamer.world = world;
|
||||
|
||||
await streamer.load(
|
||||
await fetch("model-streamed.json").then(r => r.json()),
|
||||
true // coordinate to origin
|
||||
);
|
||||
```
|
||||
|
||||
## 매 결정 기준
|
||||
| 상황 | Approach |
|
||||
|---|---|
|
||||
| Small model (< 50MB IFC) | 직접 IfcLoader.load() |
|
||||
| Medium (50-500MB) | 사전 변환된 .frag file |
|
||||
| Large (500MB+) | IfcStreamer (tile-based LOD) |
|
||||
| Property-heavy query | IfcRelationsIndexer + cached |
|
||||
| Mobile viewer | Fragment + simplified geometry |
|
||||
|
||||
**기본값**: ThatOpen Components 2026 + Fragment 사전 변환 + property cache.
|
||||
> **이 문서는 [[IFCjs]] 의 중복본입니다.** Canonical 문서로 redirect.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[BIM (Building Information Modeling)]] · [[IFC (Industry Foundation Classes)]]
|
||||
- 변형: [[Speckle]] · [[xeokit]] · [[Forge Viewer]]
|
||||
- 응용: [[Web BIM Viewer]] · [[Clash Detection]] · [[Facility Management]]
|
||||
- Adjacent: [[Three.js]] · [[WASM]] · [[FlatBuffers]]
|
||||
- 부모: [[IFCjs]] (canonical)
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 web-based BIM viewer 매 build. 매 IFC model 매 browser 의 instant load 가 필요. 매 open-source 매 prefer (Forge 의 X).
|
||||
**언제 X**: 매 desktop-only workflow (Revit/Navisworks 매 충분). 매 < 10MB model (overkill). 매 photorealistic render (use Unreal/Unity).
|
||||
|
||||
## ❌ 안티패턴
|
||||
- **IFC 매 매번 parse**: 매 100MB IFC 매 user 마다 30초 wait. 매 backend 사전 변환 필수.
|
||||
- **Property 매 eager load**: 매 모든 property 매 memory load → OOM. 매 lazy + query-on-demand.
|
||||
- **InstancedMesh 무시**: 매 IFC 의 매 1000+ identical column 매 매 separate Mesh → 매 draw call 폭발.
|
||||
- **GlobalId 의 X**: 매 Fragment internal ID 매 IFC GlobalId 와 매 different — 매 cross-system mapping 매 GlobalId 사용.
|
||||
|
||||
## 🧪 검증 / 중복
|
||||
- Verified (ThatOpen/engine_components GitHub 2026-05, web-ifc 0.0.66+).
|
||||
- 신뢰도 A (rapidly-evolving project — 매 minor API drift 가능).
|
||||
|
||||
## 🕓 Changelog
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | Manual cleanup — ThatOpen Components 2026 API + Fragment streaming |
|
||||
| 2026-05-20 | 중복 병합 — canonical 문서로 redirect |
|
||||
|
||||
@@ -163,10 +163,8 @@ function findClashes(meshes: THREE.Mesh[]) {
|
||||
**기본값**: 매 modern AEC web app — ThatOpen Components + fragments.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[BIM]] · [[3D Web Viewer]]
|
||||
- 변형: [[Bimsync]] · [[Speckle]] · [[Forge / APS]]
|
||||
- 응용: [[Digital Twin]] · [[Construction Management]] · [[Clash Detection]]
|
||||
- Adjacent: [[Three.js]] · [[glTF]] · [[USD]] · [[OpenBIM]]
|
||||
- 응용: [[Digital Twin]]
|
||||
- Adjacent: [[Three.js]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: IFC entity 의 mapping 설명 (IFC → glTF), property set 매 자연어 query, 매 UI panel scaffold.
|
||||
|
||||
@@ -157,10 +157,9 @@ console.log(`cache hit: ${hits}/${tasks.length} = ${(hits/tasks.length*100).toFi
|
||||
**기본값**: 매 Turborepo + remote cache (Vercel or self-hosted).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Build Systems]] · [[Continuous Integration]]
|
||||
- 변형: [[Hot Module Replacement]] · [[Watch Mode]]
|
||||
- 응용: [[Monorepo Strategy]] · [[CI_CD_Pipeline]]
|
||||
- Adjacent: [[Tree Shaking]] · [[Dependency Graph]]
|
||||
- 부모: [[Continuous Integration]]
|
||||
- 응용: [[CI_CD_Pipeline]]
|
||||
- Adjacent: [[Dependency Graph]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 turbo.json/nx.json 의 generation, cache key tuning 추천.
|
||||
|
||||
@@ -131,8 +131,8 @@ if p < 0.01: print("매 regression detected — rollback")
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Statistics & Data Analysis]] · [[Probability Theory]]
|
||||
- 변형: [[Bayesian Inference]] · [[Bootstrap]] · [[Permutation Test]]
|
||||
- 응용: [[A/B Testing]] · [[SRE]] · [[Anomaly-Detection]]
|
||||
- 변형: [[Bayesian_Inference|Bayesian Inference]]
|
||||
- 응용: [[SRE]] · [[Anomaly-Detection]]
|
||||
- Adjacent: [[Type 1 vs Type 2 Errors]] · [[Power Analysis]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -128,10 +128,7 @@ def cognitive_task_time_with_llm(baseline_hours, task_type):
|
||||
**기본값**: 매 multi-lens — 매 single theory 의 over-generalize 의 risk.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Sociology]] · [[Economics]]
|
||||
- 변형: [[Network Society]] · [[Surveillance Capitalism]] · [[Attention Economy]]
|
||||
- 응용: [[Platform Economy]] · [[Algorithmic Curation]] · [[AI Labor Displacement]]
|
||||
- Adjacent: [[Digital Divide]] · [[Misinformation]]
|
||||
- 변형: [[Network Society]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 frame analysis, multi-perspective synthesis. 매 tech-policy intersection 의 explanation.
|
||||
|
||||
@@ -135,7 +135,7 @@ mat.onBeforeCompile = (shader) => {
|
||||
- 부모: [[InstancedMesh]] · [[three.js]]
|
||||
- 변형: [[BatchedMesh]] · [[three-mesh-bvh]]
|
||||
- 응용: [[Frustum Culling]] · [[Draw Call]]
|
||||
- Adjacent: [[BVH]] · [[Raycaster]]
|
||||
- Adjacent: [[BVH]] · [[Raycasting|Raycaster]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 large-scale 동일 mesh scene — vegetation, crowd, debris.
|
||||
|
||||
@@ -158,9 +158,9 @@ const premortem = `
|
||||
**기본값**: constructor DI + premortem 매 architecture review 시.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Mental Models]] · [[Software Design Principles]]
|
||||
- 변형: [[Dependency Injection]] · [[Inversion of Control]] · [[Premortem]]
|
||||
- 응용: [[NestJS]] · [[Result Type]] · [[Plugin Architecture]]
|
||||
- 부모: [[Mental_Models|Mental Models]] · [[Software Design Principles]]
|
||||
- 변형: [[Dependency Injection]] · [[Inversion of Control]]
|
||||
- 응용: [[NestJS]] · [[Result Type]]
|
||||
- Adjacent: [[Encapsulation-via-Access-Modifiers]] · [[Testability]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
+1
-3
@@ -145,9 +145,7 @@ Sentry.init({
|
||||
**기본값**: 매 minimal repro → bisect → regression test 의 add.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Debugger_Techniques]] · [[Runtime Errors]]
|
||||
- 변형: [[TypeError]] · [[SyntaxError]]
|
||||
- 응용: [[Tree Shaking]] · [[Circular Dependency]]
|
||||
- 부모: [[Debugger_Techniques]]
|
||||
- Adjacent: [[Source Maps]] · [[Sentry]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -121,8 +121,8 @@ cjxl in.png out.jxl -d 1.0 -e 7
|
||||
**기본값**: 매 archival lossless transcode + web 의 multi-format negotiation.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Image Compression]] · [[Web Performance]]
|
||||
- 변형: [[AVIF]] · [[WebP]] · [[HEIC]]
|
||||
- 부모: [[Web Performance]]
|
||||
- 변형: [[AVIF]]
|
||||
- 응용: [[CDN]] · [[Page Experience Algorithm]]
|
||||
- Adjacent: [[Tree Shaking (번들 크기 최적화)]]
|
||||
|
||||
|
||||
@@ -109,8 +109,8 @@ cpg.runScript("exportCpg.sc", Map("outFile" -> "/tmp/cpg.bin.zip"))
|
||||
## 🔗 Graph
|
||||
- 부모: [[SAST]] · [[Code_Property_Graph]]
|
||||
- 변형: [[CodeQL]] · [[Semgrep]]
|
||||
- 응용: [[Vulnerability_Detection]] · [[OWASP Top 10]]
|
||||
- Adjacent: [[DAST]] · [[SCA]]
|
||||
- 응용: [[보안_및_시스템_신뢰성_표준|OWASP Top 10]]
|
||||
- Adjacent: [[보안_및_시스템_신뢰성_표준|DAST]] · [[SCA_Fundamentals|SCA]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 cross-function taint trace 필요 — string-grep 매 부족할 때.
|
||||
|
||||
@@ -128,7 +128,7 @@ END AS segment
|
||||
**기본값**: 매 strict MECE 의 시도 → 매 fuzzy 면 catch-all bucket 추가.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Pyramid Principle]] · [[Structured Thinking]]
|
||||
- 부모: [[Pyramid Principle]]
|
||||
- 변형: [[Issue Tree]] · [[Root Cause Analysis]]
|
||||
- 응용: [[BLUF (Bottom Line Up Front)]] · [[Type-safe Error Handling Exhaustiveness Checking]]
|
||||
- Adjacent: [[Cognitive_Load]]
|
||||
|
||||
@@ -133,9 +133,9 @@ behaviors:
|
||||
**기본값**: 매 imphash + YARA 의 quick pass → 매 sandbox detonate → 매 manual reverse.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Security]] · [[Reverse Engineering]]
|
||||
- 변형: [[Static Analysis]] · [[Dynamic Analysis]]
|
||||
- 응용: [[Anomaly-Detection]] · [[Threat Intelligence]]
|
||||
- 부모: [[Security]]
|
||||
- 변형: [[Static Analysis]]
|
||||
- 응용: [[Anomaly-Detection]]
|
||||
- Adjacent: [[SAST]] · [[Code Obfuscation]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -147,9 +147,9 @@ async function annotateImages() {
|
||||
**기본값**: SIFT + tooling-augmented (C2PA, fact-check API).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Information Literacy]] · [[Critical Thinking]]
|
||||
- 변형: [[Source Evaluation]] · [[Fact Checking]]
|
||||
- 응용: [[Deepfake-Detection]] · [[Misinformation]]
|
||||
- 부모: [[Information Literacy]]
|
||||
- 변형: [[Source Evaluation]]
|
||||
- 응용: [[Deepfake-Detection]]
|
||||
- Adjacent: [[Conversational-Maxims]] · [[Procedural-Rhetoric]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -132,7 +132,7 @@ let v = arena.alloc(vec![1, 2, 3]);
|
||||
**기본값**: 매 language idiom 따름 — 매 C++ RAII, 매 JS GC, 매 Rust ownership.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Systems Programming]] · [[Performance]]
|
||||
- 부모: [[Performance]]
|
||||
- 변형: [[Garbage Collection]] · [[ARC]] · [[Ownership]]
|
||||
- 응용: [[V8 Engine Heap Management]] · [[Major GC]]
|
||||
- Adjacent: [[가비지 컬렉터(Garbage Collector)]] · [[힙 메모리(Heap Memory)]]
|
||||
|
||||
@@ -135,10 +135,8 @@ type PharosCoord struct {
|
||||
**기본값**: Vivaldi 8-dim + height (Serf-compatible).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Distributed Systems]] · [[Network Topology]]
|
||||
- 변형: [[Pharos]] · [[HTRAE]] · [[Newton NCS]] · [[GNP (Global Network Positioning)]]
|
||||
- 응용: [[Service Mesh]] · [[CDN Edge Selection]] · [[P2P Overlay]]
|
||||
- Adjacent: [[Gossip Protocol]] · [[SWIM]] · [[Anycast]]
|
||||
- 부모: [[Distributed Systems]]
|
||||
- 응용: [[Service Mesh]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 100+ node mesh 매 latency-aware routing/placement 가 필요. 매 RTT measurement 의 O(N²) 폭발 회피.
|
||||
|
||||
@@ -141,10 +141,10 @@ Console.WriteLine($"Gen2: {GC.CollectionCount(2)}");
|
||||
**기본값**: 매 V8 default New Space + 매 hot path 의 object pool 사용.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Garbage Collection]] · [[Generational GC]]
|
||||
- 변형: [[Old Space]] · [[Mark-Sweep-Compact]] · [[Eden Space]] · [[Survivor Space]]
|
||||
- 응용: [[V8 GC]] · [[HotSpot G1]] · [[ZGC]] · [[.NET CLR GC]]
|
||||
- Adjacent: [[Cheney's Algorithm]] · [[Tenuring]] · [[Allocation Site]] · [[Object Pool]]
|
||||
- 부모: [[Garbage Collection]]
|
||||
- 변형: [[Old_Space|Old Space]] · [[Mark-Sweep-Compact]]
|
||||
- 응용: [[V8 GC]]
|
||||
- Adjacent: [[Cheney's Algorithm]] · [[Object Pool]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 GC pause 매 SLO 위협. 매 allocation profiling 매 hot path 식별. 매 V8 / JVM heap behavior 의 understanding.
|
||||
|
||||
@@ -147,9 +147,7 @@ logging.info(f"login session reused, action={action}")
|
||||
**기본값**: 매 personal use — Playwright state-file pattern. 매 enterprise — official API 신청 + 대기.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[OAuth]] · [[Browser Automation]]
|
||||
- 변형: [[Selenium]] · [[Puppeteer]]
|
||||
- 응용: [[Notebook Automation]]
|
||||
- 부모: [[OAuth]]
|
||||
- Adjacent: [[Secret_Management]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -128,9 +128,8 @@ heap.ForceGarbageCollectionSlow(
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Garbage Collection]] · [[Tracing GC]]
|
||||
- 변형: [[Boehm GC]] · [[V8 GC]] · [[Mark-Sweep-Compact]]
|
||||
- 응용: [[Blink (Chromium)]] · [[V8 Embedder API]] · [[Dart VM]]
|
||||
- Adjacent: [[Tri-color Marking]] · [[Conservative Stack Scanning]] · [[Reference Counting]]
|
||||
- 변형: [[V8 GC]] · [[Mark-Sweep-Compact]]
|
||||
- Adjacent: [[Tri-color Marking]] · [[Reference Counting]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 C++ project 에서 매 cyclic object graph 매 unavoidable. 매 V8 embedder 매 native object 와 JS object 의 unified GC.
|
||||
|
||||
@@ -156,10 +156,8 @@ with open("encrypted.pdf", "wb") as f:
|
||||
**기본값**: 매 ingest → Unstructured (layout-aware), 매 generate → Playwright (HTML).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Document Format]] · [[ISO Standards]]
|
||||
- 변형: [[PDF/A]] · [[PDF/X]] · [[XFA]]
|
||||
- 응용: [[RAG Ingestion]] · [[Document AI]] · [[Digital Signature]]
|
||||
- Adjacent: [[PostScript]] · [[OCR]] · [[Layout Analysis]]
|
||||
- 응용: [[Document AI]]
|
||||
- Adjacent: [[OCR]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 form-filled PDF 의 question. 매 extraction tool 의 selection. 매 schema mapping.
|
||||
|
||||
@@ -142,10 +142,10 @@ WHERE country_code = 'kr'
|
||||
**기본값**: web-vitals.js + Lighthouse CI + CrUX field monitoring 의 매 weekly review.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[SEO]] · [[Web Performance]] · [[Google Search Ranking]]
|
||||
- 변형: [[Lighthouse]] · [[Speed Index]] · [[TTFB (Time to First Byte)]]
|
||||
- 응용: [[Core Web Vitals]] · [[CrUX (Chrome UX Report)]] · [[INP (Interaction to Next Paint)]]
|
||||
- Adjacent: [[Real User Monitoring]] · [[Lighthouse CI]] · [[PageSpeed Insights]]
|
||||
- 부모: [[SEO]] · [[Web Performance]]
|
||||
- 변형: [[Lighthouse]]
|
||||
- 응용: [[Core Web Vitals Optimization (INP, LCP 개선)|Core Web Vitals]]
|
||||
- Adjacent: [[Lighthouse CI]] · [[PageSpeed Insights]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 SEO-driven traffic 매 critical (e-commerce, news, blog). 매 ranking 매 stagnant + 매 lab metric 양호 한 경우.
|
||||
|
||||
@@ -173,10 +173,10 @@ type Email = z.infer<typeof EmailString>;
|
||||
**기본값**: 매 boundary 의 매 Zod (or Effect Schema) parse + 매 internal 의 매 inferred type 으로 trust.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Type-Driven Design]] · [[Domain Modeling]]
|
||||
- 변형: [[Refinement Type]] · [[Dependent Type]] · [[Smart Constructor]]
|
||||
- 응용: [[Zod]] · [[Effect Schema]] · [[Branded Type]] · [[ADT (Algebraic Data Type)]]
|
||||
- Adjacent: [[Validation]] · [[Type Narrowing]] · [[Make Illegal States Unrepresentable]]
|
||||
- 부모: [[Type-Driven Design]]
|
||||
- 변형: [[Refinement Type]] · [[Smart Constructor]]
|
||||
- 응용: [[Zod]] · [[Effect Schema]] · [[Branded Type]]
|
||||
- Adjacent: [[Validation]] · [[Type Narrowing]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 API server / public library 의 매 input validation. 매 ID mix-up bug 매 routine 한 codebase. 매 domain rule 매 type-encode 가능 한 경우.
|
||||
|
||||
@@ -178,10 +178,10 @@ with KeyEncapsulation("Kyber768") as kem:
|
||||
**기본값**: libsodium + Argon2id + Ed25519 + ChaCha20-Poly1305.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Cryptography]] · [[Security]]
|
||||
- 변형: [[Symmetric-Encryption]] · [[Post-Quantum-Cryptography]]
|
||||
- 응용: [[Secret_Management]] · [[Zero-Trust Architecture]]
|
||||
- Adjacent: [[OWASP Top 10]] · [[Practical-Cryptography]]
|
||||
- 부모: [[Practical-Cryptography|Cryptography]] · [[Security]]
|
||||
- 변형: [[보안_및_시스템_신뢰성_표준|Symmetric-Encryption]]
|
||||
- 응용: [[Secret_Management]] · [[보안_및_시스템_신뢰성_표준|Zero-Trust Architecture]]
|
||||
- Adjacent: [[보안_및_시스템_신뢰성_표준|OWASP Top 10]] · [[Practical-Cryptography]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: explain primitive choice, audit crypto code for misuse, suggest migration paths.
|
||||
|
||||
@@ -130,10 +130,10 @@ const formatted = await prettier.format(sourceCode, {
|
||||
**기본값**: `singleQuote: true`, `trailingComma: "all"`, `printWidth: 100`, format-on-save + pre-commit hook.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Code Formatting]] · [[Developer Tooling]]
|
||||
- 변형: [[ESLint]] · [[Biome]] · [[dprint]]
|
||||
- 응용: [[Pre-commit Hooks]] · [[lint-staged]] · [[CI Pipeline]]
|
||||
- Adjacent: [[AST]] · [[EditorConfig]] · [[TypeScript]]
|
||||
- 부모: [[Code Formatting]]
|
||||
- 변형: [[ESLint]] · [[Biome]]
|
||||
- 응용: [[153_pre-commit과_품질_게이트|Pre-commit Hooks]] · [[lint-staged]]
|
||||
- Adjacent: [[AST]] · [[TypeScript]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: JS/TS/JSON/MD/YAML/CSS — 매 multi-language project 의 unified formatting.
|
||||
|
||||
@@ -132,8 +132,8 @@ Anti-game: every kill ages your character +1 year, game ends at 100
|
||||
**기본값**: identify the felt experience the player should have, design mechanics that produce it, then verify via playtest.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Game-Design]] · [[Rhetoric]]
|
||||
- 변형: [[Serious-Games]] · [[Persuasive-Games]]
|
||||
- 부모: [[Game-Design]]
|
||||
- 변형: [[Persuasive-Games]]
|
||||
- 응용: [[Beat Saber 엑서게임 연구(Beat Saber Exergaming Study)]] · [[Edtech-Industry-Trends]]
|
||||
- Adjacent: [[Media-Literacy]] · [[Information-Society]]
|
||||
|
||||
|
||||
@@ -172,10 +172,10 @@ spec:
|
||||
**기본값**: 80% line coverage, mutation score >70%, property-based for parsers/serializers.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Software_Engineering]] · [[Test_Automation]]
|
||||
- 변형: [[CI_CD_Pipeline]] · [[Test_Automation_Mastery]]
|
||||
- 부모: [[Test_Automation]]
|
||||
- 변형: [[CI_CD_Pipeline]] · [[Test_Automation|Test_Automation_Mastery]]
|
||||
- 응용: [[Engineering Metrics (DORA)]] · [[Automated Quality & Review]]
|
||||
- Adjacent: [[Continuous_Integration]] · [[Husky]]
|
||||
- Adjacent: [[Continuous Integration (CI)|Continuous_Integration]] · [[Husky]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: generate edge cases, suggest mutation-resistant assertions, identify untested branches.
|
||||
|
||||
@@ -25,7 +25,7 @@ github_commit: pending
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Raycasting]] (canonical)
|
||||
- 관련: [[Three.js]] · [[BVH (Bounding Volume Hierarchy)]] · [[Mouse Picking]]
|
||||
- 관련: [[Three.js]]
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
@@ -171,9 +171,8 @@ fn cs_raycast(@builtin(global_invocation_id) id: vec3u) {
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Computational Geometry]] · [[Computer Graphics]]
|
||||
- 변형: [[Ray Tracing]] · [[Path Tracing]] · [[Cone Tracing]]
|
||||
- 응용: [[Mouse Picking]] · [[AR Hit Test]] · [[Collision Detection]] · [[Audio Occlusion]]
|
||||
- Adjacent: [[BVH (Bounding Volume Hierarchy)]] · [[KD-Tree]] · [[Möller-Trumbore]] · [[DDA Algorithm]]
|
||||
- 응용: [[Collision Detection]]
|
||||
- Adjacent: [[KD-Tree]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 3D scene 매 user input mapping (click/touch/AR). 매 line-of-sight / occlusion query. 매 sweep collision 1-shot.
|
||||
|
||||
@@ -142,10 +142,9 @@ export default async (req: Request) => {
|
||||
**기본값**: hybrid sync+async + IMU/wearable RPM, FHIR-backed.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Digital Therapeutics]] · [[Telehealth]]
|
||||
- 변형: [[VR Exergaming]] · [[Pose Estimation]]
|
||||
- 응용: [[Stroke Recovery]] · [[Post-op Orthopedics]]
|
||||
- Adjacent: [[HIPAA]] · [[FHIR]] · [[WebRTC]]
|
||||
- 변형: [[Pose Estimation]]
|
||||
- 응용: [[Stroke Recovery]]
|
||||
- Adjacent: [[WebRTC]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: exercise plan generation, session note summarization, patient-facing Q&A (with guardrails).
|
||||
|
||||
@@ -120,10 +120,10 @@ const result = eval(safeMath); // ok
|
||||
**기본값**: Semgrep (PR gate, p/owasp-top-ten) + CodeQL (nightly, scheduled).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[DevSecOps]] · [[Application Security]]
|
||||
- 변형: [[DAST]] · [[IAST]] · [[SCA]]
|
||||
- 응용: [[OWASP Top 10]] · [[Secure SDLC]]
|
||||
- Adjacent: [[CodeQL]] · [[Semgrep]] · [[Snyk]]
|
||||
- 부모: [[CI_CD 파이프라인 및 IDE 통합 보안|DevSecOps]] · [[Application Security]]
|
||||
- 변형: [[보안_및_시스템_신뢰성_표준|DAST]] · [[IAST]] · [[SCA_Fundamentals|SCA]]
|
||||
- 응용: [[보안_및_시스템_신뢰성_표준|OWASP Top 10]] · [[Secure SDLC]]
|
||||
- Adjacent: [[CodeQL]] · [[Semgrep]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: triaging findings, generating fix PRs (Copilot Autofix style), writing custom rules from natural language.
|
||||
|
||||
@@ -2,152 +2,26 @@
|
||||
id: wiki-2026-0508-sca
|
||||
title: SCA
|
||||
category: 10_Wiki/Topics
|
||||
status: verified
|
||||
canonical_id: self
|
||||
aliases: [Software Composition Analysis, dependency scanning, OSS vulnerability scanning]
|
||||
duplicate_of: none
|
||||
status: duplicate
|
||||
canonical_id: wiki-2026-0508-sca-fundamentals
|
||||
duplicate_of: "[[SCA_Fundamentals]]"
|
||||
aliases: []
|
||||
source_trust_level: A
|
||||
confidence_score: 0.95
|
||||
verification_status: applied
|
||||
tags: [security, sca, dependencies, sbom, supply-chain]
|
||||
raw_sources: []
|
||||
last_reinforced: 2026-05-10
|
||||
confidence_score: 0.9
|
||||
verification_status: redirected
|
||||
tags: [duplicate]
|
||||
last_reinforced: 2026-05-20
|
||||
github_commit: pending
|
||||
tech_stack:
|
||||
language: multi
|
||||
framework: snyk-dependabot-renovate-osv
|
||||
---
|
||||
|
||||
# SCA
|
||||
|
||||
## 매 한 줄
|
||||
> **"매 your code 의 1% 의 yours — 매 99% 의 dependencies 의"**. SCA (Software Composition Analysis) 의 third-party / OSS dependencies 의 scanning 의 known CVEs, license issues, malicious packages 의 detecting 의. 2026 의 SBOM (CycloneDX/SPDX) 의 mandatory 의 — 매 EU CRA, US EO 14028 의 driving.
|
||||
|
||||
## 매 핵심
|
||||
|
||||
### 매 SCA 의 stack
|
||||
- **manifest scan**: package-lock.json, Cargo.lock, go.sum 의 → CVE DB lookup.
|
||||
- **OSV.dev** (Google): 매 unified vuln DB across ecosystems.
|
||||
- **GitHub Advisory DB**: 매 npm-aware, 매 Dependabot 의 backbone.
|
||||
- **Snyk DB**: commercial, 매 deeper exploit metadata.
|
||||
|
||||
### 매 SBOM 의 formats
|
||||
- **CycloneDX** (OWASP): JSON/XML, 매 vuln-friendly.
|
||||
- **SPDX** (Linux Foundation): license-friendly.
|
||||
- **2026 default**: CycloneDX 1.5+ JSON.
|
||||
|
||||
### 매 응용
|
||||
1. PR gate — 매 new high CVE 의 introduce 의 block.
|
||||
2. SBOM 의 release artifact 의 attached 의 (sigstore signed).
|
||||
3. Renovate/Dependabot 의 weekly bump PRs.
|
||||
|
||||
## 💻 패턴
|
||||
|
||||
### Dependabot config
|
||||
```yaml
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: npm
|
||||
directory: /
|
||||
schedule: { interval: weekly }
|
||||
groups:
|
||||
minor-and-patch:
|
||||
update-types: [minor, patch]
|
||||
open-pull-requests-limit: 10
|
||||
- package-ecosystem: github-actions
|
||||
directory: /
|
||||
schedule: { interval: monthly }
|
||||
```
|
||||
|
||||
### Renovate 의 group + auto-merge
|
||||
```json5
|
||||
{
|
||||
extends: ['config:base', ':semanticCommits'],
|
||||
packageRules: [
|
||||
{
|
||||
matchUpdateTypes: ['patch', 'minor'],
|
||||
matchCurrentVersion: '!/^0/',
|
||||
automerge: true,
|
||||
automergeType: 'pr',
|
||||
platformAutomerge: true,
|
||||
},
|
||||
{ matchPackagePatterns: ['^@types/'], groupName: 'types' },
|
||||
],
|
||||
vulnerabilityAlerts: { enabled: true, labels: ['security'] },
|
||||
}
|
||||
```
|
||||
|
||||
### CycloneDX SBOM 의 generate (npm)
|
||||
```bash
|
||||
npx @cyclonedx/cyclonedx-npm --output-format json --output-file sbom.json
|
||||
cosign sign-blob --yes sbom.json --output-signature sbom.sig
|
||||
```
|
||||
|
||||
### OSV-Scanner (Go)
|
||||
```yaml
|
||||
name: OSV
|
||||
on: [pull_request]
|
||||
jobs:
|
||||
scan:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: google/osv-scanner-action@v1
|
||||
with:
|
||||
scan-args: |-
|
||||
--lockfile=package-lock.json
|
||||
--lockfile=go.sum
|
||||
--format=sarif
|
||||
--output=osv.sarif
|
||||
- uses: github/codeql-action/upload-sarif@v3
|
||||
with: { sarif_file: osv.sarif }
|
||||
```
|
||||
|
||||
### License gate
|
||||
```bash
|
||||
npx license-checker --production --excludePackages="$(cat allowed.txt)" \
|
||||
--failOn 'GPL-3.0;AGPL-3.0' --json > licenses.json
|
||||
```
|
||||
|
||||
### Malicious package 의 detect (Socket-style)
|
||||
```yaml
|
||||
- name: Socket Security
|
||||
uses: SocketDev/socket-security-action@v1
|
||||
with: { api-token: ${{ secrets.SOCKET_TOKEN }} }
|
||||
```
|
||||
|
||||
## 매 결정 기준
|
||||
| 상황 | Tool |
|
||||
|---|---|
|
||||
| GitHub repo, 매 free | Dependabot + OSV-Scanner |
|
||||
| polyrepo enterprise | Snyk + Renovate |
|
||||
| supply-chain risk (typosquats) | Socket + Snyk |
|
||||
| compliance (FedRAMP, EU CRA) | CycloneDX SBOM + cosign sign |
|
||||
|
||||
**기본값**: Renovate + OSV-Scanner + CycloneDX SBOM (signed).
|
||||
> **이 문서는 [[SCA_Fundamentals]] 의 중복본입니다.** Canonical 문서로 redirect.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[DevSecOps]] · [[Supply Chain Security]]
|
||||
- 변형: [[SAST]] · [[DAST]] · [[Container Scanning]]
|
||||
- 응용: [[SBOM]] · [[Sigstore]] · [[SLSA]]
|
||||
- Adjacent: [[Dependabot]] · [[Renovate]] · [[Snyk]]
|
||||
- 부모: [[SCA_Fundamentals]] (canonical)
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: vuln triage (exploitability scoring), changelog summarization for upgrades, breaking-change detection in PRs.
|
||||
**언제 X**: auto-merging high-CVE patches 없이 의 review.
|
||||
|
||||
## ❌ 안티패턴
|
||||
- **Pin everything forever**: 매 stale deps 의 더 vulnerable.
|
||||
- **Auto-merge majors**: 매 breaking change 의 prod 의 escape.
|
||||
- **No SBOM**: 매 incident response 의 grep 의 시작 — 매 too late.
|
||||
- **Scan only on release**: 매 dev branch 의 weeks of exposure.
|
||||
|
||||
## 🧪 검증 / 중복
|
||||
- Verified (OSV.dev docs, CycloneDX 1.5 spec, GitHub Dependabot 2026, Renovate docs).
|
||||
- 신뢰도 A.
|
||||
|
||||
## 🕓 Changelog
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | Manual cleanup — modern SCA + SBOM patterns |
|
||||
| 2026-05-20 | 중복 병합 — canonical 문서로 redirect |
|
||||
|
||||
@@ -130,9 +130,9 @@ type Toil = { repetitive: boolean; manual: boolean; automatable: boolean; ts: Da
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[DevOps]] · [[Production Engineering]]
|
||||
- 변형: [[Platform Engineering]] · [[DevSecOps]]
|
||||
- 응용: [[Observability]] · [[Incident Response]] · [[Chaos Engineering]]
|
||||
- Adjacent: [[Prometheus]] · [[OpenTelemetry]] · [[PagerDuty]]
|
||||
- 변형: [[Platform Engineering]] · [[CI_CD 파이프라인 및 IDE 통합 보안|DevSecOps]]
|
||||
- 응용: [[Observability]] · [[Chaos Engineering]]
|
||||
- Adjacent: [[Prometheus]] · [[OpenTelemetry]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: postmortem drafting from timeline, log anomaly summarization, runbook generation, oncall question answering.
|
||||
|
||||
@@ -2,159 +2,26 @@
|
||||
id: wiki-2026-0508-saas-software-as-a-service
|
||||
title: SaaS (Software as a Service)
|
||||
category: 10_Wiki/Topics
|
||||
status: verified
|
||||
canonical_id: self
|
||||
aliases: [Software as a Service, Multi-tenant SaaS, Cloud Software]
|
||||
duplicate_of: none
|
||||
status: duplicate
|
||||
canonical_id: wiki-2026-0508-saas
|
||||
duplicate_of: "[[SaaS (Software as a Service)]]"
|
||||
aliases: []
|
||||
source_trust_level: A
|
||||
confidence_score: 0.9
|
||||
verification_status: applied
|
||||
tags: [business-model, cloud, multi-tenant, devops]
|
||||
raw_sources: []
|
||||
last_reinforced: 2026-05-10
|
||||
verification_status: redirected
|
||||
tags: [duplicate]
|
||||
last_reinforced: 2026-05-20
|
||||
github_commit: pending
|
||||
tech_stack:
|
||||
language: typescript
|
||||
framework: stripe-postgres
|
||||
---
|
||||
|
||||
# SaaS (Software as a Service)
|
||||
|
||||
## 매 한 줄
|
||||
> **"매 software 의 매 product 가 매 service 가 된다"**. SaaS 는 매 vendor-hosted 매 multi-tenant application 의 매 subscription 으로 매 deliver — 매 install 없음, 매 patch 없음, 매 elastic. Salesforce(1999) 가 매 시작, 2026 현재 매 vertical SaaS (industry-specific) 가 매 horizontal 을 매 outpace; 매 AI-native SaaS (Cursor, Linear AI) 가 매 per-seat → 매 outcome-based pricing 으로 매 transition 중.
|
||||
|
||||
## 매 핵심
|
||||
|
||||
### 매 Architecture archetypes
|
||||
- **Pool model**: 매 single DB, 매 tenant_id column. 매 cheapest, 매 noisy-neighbor risk.
|
||||
- **Bridge model**: 매 schema-per-tenant. 매 isolation 좋음, 매 migration 복잡.
|
||||
- **Silo model**: 매 DB-per-tenant. 매 max isolation, 매 expensive.
|
||||
- **Hybrid**: free tier pool, enterprise silo.
|
||||
|
||||
### 매 Economics
|
||||
- **MRR/ARR**: monthly/annual recurring revenue.
|
||||
- **Churn**: gross (lost) vs net (incl. expansion).
|
||||
- **CAC payback**: < 12 months 매 healthy.
|
||||
- **NRR (Net Revenue Retention)**: > 110% 매 best-in-class.
|
||||
|
||||
### 매 응용
|
||||
1. CRM (Salesforce, HubSpot).
|
||||
2. Dev tools (GitHub, Vercel).
|
||||
3. Vertical (Toast — restaurant, Veeva — pharma).
|
||||
4. AI-native (Cursor, Granola, Linear).
|
||||
|
||||
## 💻 패턴
|
||||
|
||||
### Tenant isolation (Postgres RLS)
|
||||
```sql
|
||||
CREATE TABLE invoices (
|
||||
id uuid PRIMARY KEY,
|
||||
tenant_id uuid NOT NULL,
|
||||
amount_cents integer NOT NULL
|
||||
);
|
||||
ALTER TABLE invoices ENABLE ROW LEVEL SECURITY;
|
||||
CREATE POLICY tenant_isolation ON invoices
|
||||
USING (tenant_id = current_setting('app.current_tenant')::uuid);
|
||||
|
||||
-- Per-request
|
||||
SET LOCAL app.current_tenant = 'abc-123';
|
||||
SELECT * FROM invoices; -- only abc-123's rows
|
||||
```
|
||||
|
||||
### Stripe subscription webhook
|
||||
```typescript
|
||||
import Stripe from "stripe";
|
||||
const stripe = new Stripe(process.env.STRIPE_KEY!);
|
||||
|
||||
app.post("/webhook", async (req, res) => {
|
||||
const event = stripe.webhooks.constructEvent(
|
||||
req.rawBody, req.headers["stripe-signature"]!, process.env.STRIPE_WH_SECRET!
|
||||
);
|
||||
switch (event.type) {
|
||||
case "customer.subscription.updated":
|
||||
await db.tenant.update({
|
||||
where: { stripeCustomerId: event.data.object.customer },
|
||||
data: { plan: event.data.object.items.data[0].price.lookup_key },
|
||||
});
|
||||
break;
|
||||
case "customer.subscription.deleted":
|
||||
await scheduleTenantOffboarding(event.data.object.customer);
|
||||
break;
|
||||
}
|
||||
res.json({ received: true });
|
||||
});
|
||||
```
|
||||
|
||||
### Feature flag per plan
|
||||
```typescript
|
||||
const PLAN_FEATURES = {
|
||||
free: ["basic_export"],
|
||||
pro: ["basic_export", "api_access", "sso"],
|
||||
enterprise: ["basic_export", "api_access", "sso", "audit_log", "custom_domain"],
|
||||
};
|
||||
function hasFeature(tenant: Tenant, feature: string): boolean {
|
||||
return PLAN_FEATURES[tenant.plan]?.includes(feature) ?? false;
|
||||
}
|
||||
```
|
||||
|
||||
### Usage metering (event-based)
|
||||
```typescript
|
||||
async function recordUsage(tenantId: string, metric: string, qty: number) {
|
||||
await db.usageEvent.create({ data: { tenantId, metric, qty, ts: new Date() } });
|
||||
await stripe.subscriptionItems.createUsageRecord(
|
||||
tenant.stripeSubItemId,
|
||||
{ quantity: qty, timestamp: Math.floor(Date.now() / 1000), action: "increment" }
|
||||
);
|
||||
}
|
||||
```
|
||||
|
||||
### Per-tenant rate limit
|
||||
```typescript
|
||||
import { Ratelimit } from "@upstash/ratelimit";
|
||||
const limiters = new Map<string, Ratelimit>();
|
||||
function getLimiter(tenant: Tenant) {
|
||||
const limit = tenant.plan === "enterprise" ? 1000 : 100;
|
||||
if (!limiters.has(tenant.id)) {
|
||||
limiters.set(tenant.id, new Ratelimit({
|
||||
redis, limiter: Ratelimit.slidingWindow(limit, "1 m"),
|
||||
}));
|
||||
}
|
||||
return limiters.get(tenant.id)!;
|
||||
}
|
||||
```
|
||||
|
||||
## 매 결정 기준
|
||||
| 상황 | Tenancy model |
|
||||
|---|---|
|
||||
| 매 SMB, 매 < $50 ARR / tenant | Pool (RLS) |
|
||||
| 매 mid-market | Bridge (schema-per) |
|
||||
| 매 enterprise, 매 compliance | Silo (DB-per or single-tenant cluster) |
|
||||
| 매 AI inference heavy | Pool + per-tenant queue |
|
||||
|
||||
**기본값**: Pool with RLS, escape-hatch to silo for enterprise.
|
||||
> **이 문서는 [[SaaS (Software as a Service)]] 의 중복본입니다.** Canonical 문서로 redirect.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Cloud Computing]] · [[Business_Strategy]]
|
||||
- 변형: [[PaaS]] · [[IaaS]] · [[Vertical SaaS]]
|
||||
- 응용: [[Cloud_Native]] · [[Multi-tenant Architecture]]
|
||||
- Adjacent: [[Stripe Billing]] · [[Feature-Flags]]
|
||||
- 부모: [[SaaS (Software as a Service)]] (canonical)
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Onboarding email personalization, churn-risk classification from usage signals, customer success summary, AI copilot as product feature.
|
||||
**언제 X**: 매 contract pricing — human sales.
|
||||
|
||||
## ❌ 안티패턴
|
||||
- **No tenant_id**: 매 cross-tenant data leak — 매 existential.
|
||||
- **Single noisy tenant**: 매 1 enterprise = 매 80% load → 매 SLO collapse for all. 매 tier-isolate.
|
||||
- **Free forever**: 매 conversion 0% → 매 unit economics 의 매 broken.
|
||||
- **Hand-rolled billing**: edge case 의 매 hell. Stripe / Lago / Orb 의 매 사용.
|
||||
|
||||
## 🧪 검증 / 중복
|
||||
- Verified (AWS SaaS Lens 2024, OpenView SaaS Benchmarks, Tomasz Tunguz reports).
|
||||
- 신뢰도 A.
|
||||
|
||||
## 🕓 Changelog
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|---|---|
|
||||
| 2026-05-08 | Phase 1 |
|
||||
| 2026-05-10 | Manual cleanup — multi-tenant + AI-native SaaS 2026 |
|
||||
| 2026-05-20 | 중복 병합 — canonical 문서로 redirect |
|
||||
|
||||
@@ -144,8 +144,8 @@ export async function rotateApiKey(event) {
|
||||
## 🔗 Graph
|
||||
- 부모: [[DevSecOps_Framework]] · [[Application Security]]
|
||||
- 변형: [[KMS]] · [[PKI]]
|
||||
- 응용: [[CI_CD_Pipeline]] · [[Zero-Trust Architecture]]
|
||||
- Adjacent: [[OWASP Top 10]] · [[OAuth 2.0]]
|
||||
- 응용: [[CI_CD_Pipeline]] · [[보안_및_시스템_신뢰성_표준|Zero-Trust Architecture]]
|
||||
- Adjacent: [[보안_및_시스템_신뢰성_표준|OWASP Top 10]] · [[OAuth 2.0]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Secret-scanner triage (매 actual secret vs 매 test fixture?), rotation runbook generation, IAM policy synthesis from natural-language requirement.
|
||||
|
||||
@@ -135,10 +135,9 @@ if (sessions.length >= 5) {
|
||||
**기본값**: HttpOnly Secure SameSite=Lax cookie + Redis-backed session, 30m idle / 24h absolute.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Authentication]] · [[Application Security]]
|
||||
- 변형: [[JWT]] · [[OAuth 2.0]] · [[Passkeys]]
|
||||
- 응용: [[OWASP Top 10]] · [[Zero-Trust Architecture]]
|
||||
- Adjacent: [[CSRF]] · [[XSS]]
|
||||
- 부모: [[Application Security]]
|
||||
- 변형: [[JWT]] · [[OAuth 2.0]]
|
||||
- 응용: [[보안_및_시스템_신뢰성_표준|OWASP Top 10]] · [[보안_및_시스템_신뢰성_표준|Zero-Trust Architecture]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Session anomaly detection (매 sudden geo / device shift), suspicious-activity summary for support.
|
||||
|
||||
@@ -163,9 +163,9 @@ const mutation = useMutation({
|
||||
**기본값**: 매 새 project 의 Next.js / Remix / SvelteKit (hybrid). 매 pure SPA 의 internal tool 만.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Web Architecture]] · [[Frontend Patterns]]
|
||||
- 부모: [[Web Architecture]]
|
||||
- 변형: [[MPA]] · [[SSR]] · [[SSG]] · [[Islands Architecture]]
|
||||
- 응용: [[React Router]] · [[Vue Router]] · [[SvelteKit]]
|
||||
- 응용: [[SvelteKit]]
|
||||
- Adjacent: [[Code Splitting]] · [[Hydration]] · [[Service Worker]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -126,10 +126,8 @@ skeleton.boneTexture = boneTexture; // automatically updated
|
||||
**기본값**: GLTF + Three.js `SkinnedMesh` + LBS + `boneTexture` 의 mobile path.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Three.js]] · [[WebGL2]]
|
||||
- 변형: [[Linear Blend Skinning]] · [[Dual Quaternion Skinning]] · [[InstancedSkinnedMesh]]
|
||||
- 응용: [[Character Animation]] · [[VR Avatars]] · [[Procedural Creatures]]
|
||||
- Adjacent: [[BufferGeometry]] · [[BatchedMesh 및 InstancedMesh 성능 벤치마크]] · [[Animation Mixer]]
|
||||
- 부모: [[Three.js]] · [[WebGL 20|WebGL2]]
|
||||
- Adjacent: [[BufferGeometry]] · [[BatchedMesh 및 InstancedMesh 성능 벤치마크]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: GLTF rigged character 의 import, 매 bone weight 의 painting 의 review, 매 skinning artifact 의 debug.
|
||||
|
||||
@@ -126,10 +126,8 @@ spec:
|
||||
**기본값**: pool with QoS-Guaranteed for paid tiers, silo upgrade option for enterprise SLA.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Multi-tenancy]] · [[Performance Engineering]]
|
||||
- 변형: [[Confidential Computing]] · [[Noisy Neighbor]]
|
||||
- 응용: [[Kubernetes QoS]] · [[Firecracker]] · [[NUMA]]
|
||||
- Adjacent: [[SaaS]] · [[SLO]] · [[Pricing Tier]]
|
||||
- 응용: [[Firecracker]]
|
||||
- Adjacent: [[SaaS]] · [[SLO]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: tier-tradeoff explanation to sales, capacity planning, generating taint/toleration manifests.
|
||||
|
||||
@@ -121,8 +121,7 @@ gitsign verify HEAD --certificate-identity=me@org.com \
|
||||
**기본값**: trunk-based, squash-merge, conventional commits, signed commits (gitsign), CODEOWNERS-protected main.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[DevOps]] · [[Software Engineering]]
|
||||
- 변형: [[Mercurial]] · [[Jujutsu]] · [[Sapling]] · [[Perforce]]
|
||||
- 부모: [[DevOps]]
|
||||
- 응용: [[Trunk-Based Development]] · [[Code Review]] · [[Monorepo]]
|
||||
- Adjacent: [[CODEOWNERS]] · [[Conventional Commits]] · [[GitOps]]
|
||||
|
||||
|
||||
@@ -112,9 +112,8 @@ add({ x: 1, y: 2, z: 3 }); // 매 hidden class 의 change → 매 deopt
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[CPU Bottleneck]] · [[Branch Prediction]]
|
||||
- 변형: [[Out-of-order Execution]] · [[Branch Predictor]] · [[Retpoline]]
|
||||
- 응용: [[V8 Engine]] · [[Spectre]] · [[Meltdown]]
|
||||
- Adjacent: [[Cache Side Channel]] · [[Constant-Time Crypto]] · [[CET / BTI]]
|
||||
- 변형: [[Out-of-order Execution]]
|
||||
- 응용: [[V8 Engine]] · [[Spectre]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 perf 분석 (branch-miss rate), 매 microbenchmark 의 design, 매 mitigation flag 의 trade-off 분석.
|
||||
|
||||
@@ -122,10 +122,10 @@ anomalies = np.abs(mad_z(latency_p99)) > 3.5
|
||||
**기본값**: Welch + CUPED for online A/B; Bayesian for small-N or peeking; bootstrap for non-Gaussian.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Mathematics]] · [[Probability Theory]]
|
||||
- 부모: [[Probability Theory]]
|
||||
- 변형: [[Bayesian Statistics]] · [[Causal Inference]]
|
||||
- 응용: [[A/B Testing]] · [[Anomaly Detection]] · [[ML Evaluation]]
|
||||
- Adjacent: [[PyMC]] · [[statsmodels]] · [[DoWhy]]
|
||||
- 응용: [[Anomaly Detection]] · [[ML Evaluation]]
|
||||
- Adjacent: [[PyMC]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: experiment design review, p-value 해석, choosing test for distribution shape, generating PyMC models from descriptions.
|
||||
|
||||
@@ -129,9 +129,8 @@ export const decorators = [
|
||||
**기본값**: Storybook 8 + Vite + interaction test + Chromatic CI.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Frontend Tooling]] · [[Design System]]
|
||||
- 변형: [[Ladle]] · [[Histoire]]
|
||||
- 응용: [[Component Library]] · [[Visual Regression Testing]] · [[Figma-to-Code-Workflow]]
|
||||
- 부모: [[Design System]]
|
||||
- 응용: [[Component Library]] · [[Figma-to-Code-Workflow]]
|
||||
- Adjacent: [[Test_Automation]] · [[CI_CD_Pipeline]] · [[Figma]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -161,10 +161,10 @@ export default () => {
|
||||
**기본값**: 60/30/10 unit/integration/e2e split, MSW for external APIs, testcontainers for DB, Pact for service boundaries.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Software Quality]] · [[CI/CD]]
|
||||
- 부모: [[Software Quality]]
|
||||
- 변형: [[TDD]] · [[BDD]] · [[Property-based Testing]]
|
||||
- 응용: [[Continuous Integration]] · [[Regression Testing]] · [[Visual Regression]]
|
||||
- Adjacent: [[Vitest]] · [[Playwright]] · [[Testcontainers]] · [[Pact]]
|
||||
- 응용: [[Continuous Integration]] · [[Visual Regression]]
|
||||
- Adjacent: [[Playwright]] · [[Pact]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: test scaffolding from impl, edge-case enumeration, flaky root-cause analysis from trace.zip, snapshot diff explanation.
|
||||
|
||||
@@ -122,9 +122,7 @@ gl.texImage3D(gl.TEXTURE_2D_ARRAY, 0, gl.RGBA8, 256, 256, layers, 0, gl.RGBA, gl
|
||||
**기본값**: 2048x2048 atlas + 2px padding + CLAMP_TO_EDGE + offline packer (TexturePacker / sharp).
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Texture]] · [[GPU Memory]]
|
||||
- 변형: [[Array Texture]] · [[Virtual Texturing]] · [[SDF Font Atlas]]
|
||||
- 응용: [[Draw Call]] · [[BatchedMesh 및 InstancedMesh 성능 벤치마크]] · [[Sprite Rendering]]
|
||||
- 응용: [[Draw Call]] · [[BatchedMesh 및 InstancedMesh 성능 벤치마크]]
|
||||
- Adjacent: [[Frustum Culling]] · [[Geometry Merging]] · [[Data Array Textures]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
|
||||
@@ -25,7 +25,7 @@ github_commit: pending
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Facade Pattern]] (canonical)
|
||||
- Adjacent: [[Toss Frontend Engineering]] · [[SDK Design]]
|
||||
- Adjacent: [[SDK Design]]
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
@@ -25,7 +25,6 @@ github_commit: pending
|
||||
- Vite/Rollup/esbuild/webpack 5 의 모두 지원 — 매 2026 default.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Tree Shaking]] (canonical)
|
||||
- Adjacent: [[ESM]] · [[Bundler]] · [[Code Splitting]]
|
||||
|
||||
## 🕓 변경 이력
|
||||
|
||||
@@ -139,9 +139,8 @@ plt.legend(); plt.show()
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Hypothesis Testing]] · [[Statistical Inference]]
|
||||
- 변형: [[α Error]] · [[β Error]] · [[Power Analysis]]
|
||||
- 응용: [[A/B Testing]] · [[Classifier Threshold]] · [[Medical Screening]]
|
||||
- Adjacent: [[Precision Recall]] · [[ROC AUC]] · [[Confusion Matrix]] · [[Bonferroni Correction]]
|
||||
- 변형: [[Power Analysis]]
|
||||
- Adjacent: [[ROC AUC]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 binary decision — classification, hypothesis test, A/B test 의 trade-off 분석.
|
||||
|
||||
+3
-4
@@ -184,10 +184,9 @@ function transition(s: State, e: Event): State {
|
||||
**기본값**: Discriminated union + `Result<T, E>` + `assertNever`. 매 ecosystem 의 `neverthrow` 채택.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[Type System]] · [[Error Handling]]
|
||||
- 변형: [[Either Monad]] · [[Effect Type]] · [[Option Type]]
|
||||
- 응용: [[State Machine]] · [[API Client]] · [[Parser Combinator]]
|
||||
- Adjacent: [[Discriminated Union]] · [[neverthrow]] · [[effect-ts]] · [[Zod]]
|
||||
- 부모: [[TypeScript 타입 시스템 (TypeScript Type System)|Type System]] · [[Error Handling]]
|
||||
- 응용: [[State Machine]] · [[API Client]]
|
||||
- Adjacent: [[Discriminated Union]] · [[effect-ts]] · [[Zod]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 multi-error business logic, API boundary, state machine.
|
||||
|
||||
@@ -160,10 +160,9 @@ function get(key) {
|
||||
**기본값**: 매 V8 default GC + sandbox enabled + monomorphic code + heap snapshot 의 production 의 leak 의 trigger 시.
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[JavaScript Runtime]] · [[V8 Internals]]
|
||||
- 변형: [[V8 가비지 컬렉션(Garbage Collection)]] · [[V8 메모리 케이지(V8 Memory Cage)]] · [[To Space와 From Space]]
|
||||
- 응용: [[Node.js Performance]] · [[Memory Leak Debugging]] · [[Cloudflare Workers]]
|
||||
- Adjacent: [[Garbage Collection]] · [[JIT Compiler]] · [[Hidden Class]] · [[Maglev]]
|
||||
- 응용: [[Node.js Performance]] · [[Cloudflare Workers]]
|
||||
- Adjacent: [[Garbage Collection]] · [[Hidden Class]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: Node.js 의 production tuning, memory leak diagnosis, JIT optimization, V8 embedding.
|
||||
|
||||
@@ -156,9 +156,9 @@ node --max-old-space-size=512 \
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[JavaScript]] · [[JIT Compilation]]
|
||||
- 변형: [[JavaScriptCore]] · [[SpiderMonkey]]
|
||||
- 변형: [[JavaScriptCore]]
|
||||
- 응용: [[Node.js]] · [[Electron]] · [[Deno]] · [[Cloudflare Workers]]
|
||||
- Adjacent: [[V8 Heap Spaces]] · [[Garbage Collection]] · [[Chrome V8 Heap Analysis]] · [[Electron V8 Memory Cage]]
|
||||
- Adjacent: [[Garbage Collection]] · [[Chrome V8 Heap Analysis]] · [[Electron V8 Memory Cage]]
|
||||
|
||||
## 🤖 LLM 활용
|
||||
**언제**: 매 perf debugging 의 deopt 의 reading. 매 hidden class 의 explanation. 매 flag selection.
|
||||
|
||||
@@ -25,7 +25,7 @@ github_commit: pending
|
||||
|
||||
## 🔗 Graph
|
||||
- 부모: [[V8 Engine Heap Management]] (canonical)
|
||||
- Adjacent: [[Browser Sandbox]] · [[Pointer Compression]]
|
||||
- Adjacent: [[Pointer Compression]]
|
||||
|
||||
## 🕓 변경 이력
|
||||
| 날짜 | 변경 |
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user