Work-Lineage Optimization Loop
Work-Lineage Optimization Loop (자기최적화 리니지 폐루프)
Section titled “Work-Lineage Optimization Loop (자기최적화 리니지 폐루프)”헌법은 FractalOps Constitution, 정규 서사는 Canonical Architecture에 있습니다. 이 문서는 그 위에서 개발·운영이 리니지를 통해 점점 최적화되는 폐루프를 서술합니다. (운영자 약칭 “money loop” — 정식 유비쿼터스 명칭은 Work-Lineage Optimization Loop.)
한 줄 요약
Section titled “한 줄 요약”에이전트는 일을 시작하기 전에 자기 프로젝트의 리니지 그래프를 조회(READ) 해 “어떤 요청이 어떤 코드를 바꿨고 데이터가 어떻게 흘렀는지” 검증된 패턴을 재사용한다. 매 실행은 그 리니지를 기록(WRITE) 한다. 리니지가 쌓일수록 재스캔·충돌·반복실패가 줄어 토큰과 sandbox run(=실비용)이 절감되며, 절감량은 측정(MEASURE) 되어 Grafana 곡선으로 드러난다.
핵심 원칙: 신규 저장소를 만들지 않는다. 리니지는 DataHub 의미 그래프(portable URN)로, 에이전트용 컴팩트 브리프는 FeaturePlane로 (별도 그래프 저장소가 아니라 compact source-of-work 브리프), 어휘는 표준 온톨로지 번들로 이미 존재하는 SSOT만 조합한다. → 클러스터-로컬 상태가 없으므로 재현성이 보장된다.
DataHub는 의미 그래프 truth plane(카탈로그/리니지 enrichment) 이며 증명 권위가 아니다 — 장기 증명은 Chronicle evidence가 보관한다. 이 폐루프의 모든 WRITE는 enrichment projection이지 AI write path가 아니므로 Proposal Plane 변경 게이트를 건드리지 않는다. 모든 READ는 read-only다.
폐루프의 세 다리
Section titled “폐루프의 세 다리”1. WRITE — 리니지 기록 (DataHub 의미 그래프)
Section titled “1. WRITE — 리니지 기록 (DataHub 의미 그래프)”매 세션 종료 시 session_datahub_projection_operations
(backend/src/fractalops/application/access/features/studio/lifecycle/datahub_projection.py)
가 프로젝트별 URN 노드에 aspect를 projection한다:
fopsRunAttemptAspect— 세션 outcome(status/failure_class/blocker)·provider·counts. (semantics/application/datahub_contracts.py:fops_run_attempt_projection)fopsRequestCodeDataLineageAspect— 요청→코드→데이터 인과 엣지: 어떤 요청(proposal/issue/task)이 어떤 코드(PR)를 바꿨고 데이터가 어떻게 흘렀나(dataset URN). (semantics/application/datahub_contracts.py:fops_request_code_data_lineage_projection)- RDF turtle 스냅샷 —
rdf_projection.build_rdf_projection_payload가 per-run turtle 팩트를 만들고datahub_publish_executor.publish_rdf_ontology_snapshot이fops.rdf.turtle/digest/fact_uris로 발행한다. 어휘는 표준 온톨로지 번들의 OWL 클래스. - FeaturePlane feature→lineage 바인딩 —
datahub_publish_executor.publish_feature_lineage_binding.
모든 URN은 tenant_id+project_slug로 스코프되어 프로젝트별 격리 + 이식 가능하다.
2. READ — 에이전트가 리니지를 조회 (온톨로지 MCP + FeaturePlane 브리프)
Section titled “2. READ — 에이전트가 리니지를 조회 (온톨로지 MCP + FeaturePlane 브리프)”에이전트는 실행 시작 전에 그래프를 조회해 재스캔 대신 재사용한다:
- per-project 온톨로지 MCP (
/mcp/ontology,semantics/presentation/ontology_mcp.py) —project_context/dataset_brief/lineage_gaps/ontology_summary/ontology_vocabulary/scope. 프로젝트는 신뢰 헤더(gateway_project_slug)에서만 유도되어 fail-closed 격리된다.ontology_vocabulary는 공유 OWL 개념 용어 + runtime→evidence RDF 축을 노출해 에이전트가 온톨로지 어휘를 재사용(그래프 수렴 유지)하게 한다. - read 스코핑 —
DataHubCompactContextService/GraphQueryService가 프로젝트 서브그래프로 스코프된다(공유 authority hub에서 정지, sibling 프로젝트 미침투). - FeaturePlane 컴팩트 브리프 — launch 시
FeaturePlaneAgentContextService.compile_context가 “raw 리니지 blob 재read를 없애는” 컴팩트 브리프(DataHublineage_refs포함)를 프롬프트에 주입한다. (access/.../features/team/feature_plane_brief.py) - github MCP (
/mcp/github) — 프로젝트 source_ref_repos의 PR/diff를 조회해 형제 에이전트와 충돌을 피한다(work_radar가 in-flight PR을 launch에 주입). - launch READ 지시 —
launch_prompt_builder가 “일 시작 전 리니지를 조회하고 검증된 패턴을 재사용하라(이미 done은 skip, 실패한 접근은 반복 금지)“를 주입한다.
3. MEASURE — 절감 곡선 (OTel → Mimir → Grafana)
Section titled “3. MEASURE — 절감 곡선 (OTel → Mimir → Grafana)”절감은 주장이 아니라 곡선으로 증명된다(foundation/observability.py OTel,
X-Scope-OrgID=project_slug):
fops_feature_plane_tokens_saved/fops_feature_plane_brief_tokens/fops_feature_plane_lineage_refs— FeaturePlaneestimate_token_savings기반.fops_work_radar_open_prs/fops_work_radar_injected_total— 충돌 표면.fops.studio.work_lineage및fopsRunAttemptAspect메트릭 계약 — outcome 추이.
리니지가 쌓일수록 프로젝트별 run당 토큰/낭비런이 내려가는 곡선이 “돈이 보이는” 증거다.
구성요소 지도
Section titled “구성요소 지도”| 다리 | 메커니즘 | 코드 |
|---|---|---|
| WRITE 리니지 | fopsRunAttemptAspect | semantics/application/datahub_contracts.py |
| WRITE 인과엣지 | fopsRequestCodeDataLineageAspect (요청→코드→데이터) | datahub_contracts.py + lifecycle/datahub_projection.py |
| WRITE RDF | turtle 스냅샷 → fops.rdf.* | semantics/infrastructure/rdf_projection.py |
| READ 온톨로지 | /mcp/ontology (+ ontology_vocabulary) | semantics/presentation/ontology_mcp.py |
| READ 스코핑 | per-project 서브그래프 | datahub_compact_context.py / graph_query.py |
| READ 브리프 | FeaturePlane compact brief | feature_plane/application/agent_context.py |
| READ PR/diff | github MCP | access/presentation/github_mcp.py |
| READ 트리거 | launch 지시 | access/application/studio/launch_prompt_builder.py |
| MEASURE | OTel→Mimir 게이지/카운터 | foundation/observability.py |
- Lineage / Ontology v1 — 관계 온톨로지 + OWL 번들.
- FeaturePlane — Feast 기반 feature/컨텍스트 평면.
- Agent Execution — DataHub Projection — projection 발행 경로.
- Canonical Architecture — 진실 평면 전체 지도.