# microsoft/fabric-architecture-review architecture

> Architecture diagram of the GitHub repository microsoft/fabric-architecture-review, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/microsoft/fabric-architecture-review
- Repository: https://github.com/microsoft/fabric-architecture-review

## Overview

Fabric Architecture Review Accelerator (FAR) collects Fabric metadata, configuration, source definitions and metrics—not customer business rows—then analyzes the evidence into prioritized findings and reports. Its main workflow is scoped collection, rule-based review and report generation; Fabric deployments add Gold-backed governance reporting. The README also documents targeted reviews, owner-isolated reports and agents, and an interactive app. Paths for some documented subsystems are directory-level because their implementation was not sampled; the graph omits uncertain internal wiring.

Main entry points: [`orchestration/runtime.py`](https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/runtime.py) (Review runtime), [`reports`](https://github.com/microsoft/fabric-architecture-review/tree/main/reports) (Written reports), [`reports/gold_layer.py`](https://github.com/microsoft/fabric-architecture-review/blob/main/reports/gold_layer.py) (Governance Gold), [`analyzers`](https://github.com/microsoft/fabric-architecture-review/tree/main/analyzers) (Review analyzers)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_review["Review workflow"]
  node_runtime["Review runtime<br/>[runtime.py]"]
  node_scope["Workspace scope<br/>[workspace_scope.py]"]
  node_analyzers["Review analyzers"]
  node_findings["Prioritized findings"]
end

subgraph group_collection["Evidence collection"]
  node_collectors["Evidence collectors"]
  node_raw_evidence[("Raw evidence")]
  node_definitions["Pipeline definitions"]
  node_job_history["Execution history"]
end

subgraph group_outputs["Reports and access"]
  node_reports["Written reports"]
  node_gold[("Governance Gold<br/>[gold_layer.py]")]
  node_owner_report[("Owner report model")]
  node_owner_agent["Workspace Owner Agent<br/>[owner_agent.py]"]
  node_data_agent["Central Data Agent<br/>[data_agent.py]"]
end

subgraph group_app["Interactive app"]
  node_app["Review workbench"]
  node_review_data["Review data context"]
  node_semantic_query["Semantic model queries"]
end

subgraph group_platform["Fabric operations"]
  node_targeting["Targeted review selection<br/>[sources.py]"]
  node_deployment["Fabric deployment<br/>[deployment.py]"]
end

node_operator(("Review operator"))
node_fabric_api{{"Fabric APIs"}}
node_owner(("Workspace owner"))
node_fabric_operator(("Fabric administrator"))

node_operator -->|"starts review"| node_runtime
node_runtime -->|"sets scope"| node_scope
node_runtime -->|"runs collection"| node_collectors
node_collectors -->|"requests metadata"| node_fabric_api
node_collectors -->|"writes evidence"| node_raw_evidence
node_runtime -->|"collects definitions"| node_definitions
node_definitions -->|"fetches definitions"| node_fabric_api
node_runtime -->|"collects history"| node_job_history
node_job_history -->|"reads job history"| node_fabric_api
node_definitions -->|"writes definitions"| node_raw_evidence
node_job_history -->|"writes executions"| node_raw_evidence
node_runtime -->|"runs analysis"| node_analyzers
node_analyzers -->|"reads evidence"| node_raw_evidence
node_analyzers -->|"produces findings"| node_findings
node_runtime -->|"generates reports"| node_reports
node_findings -->|"supports findings"| node_reports
node_deployment -->|"creates artifacts"| node_gold
node_reports -->|"populates review data"| node_gold
node_reports -.->|"supports subset"| node_owner_report
node_owner_report -.->|"grounds questions"| node_owner_agent
node_owner -.->|"asks questions"| node_owner_agent
node_fabric_operator -.->|"configures targeting"| node_targeting
node_targeting -.->|"selects workspaces"| node_runtime
node_operator -.->|"opens workbench"| node_app
node_app -->|"reads review data"| node_review_data
node_review_data -.->|"loads review data"| node_gold
node_app -.->|"requests model query"| node_semantic_query
node_semantic_query -.->|"queries semantic model"| node_fabric_api
node_fabric_operator -.->|"deploys artifacts"| node_deployment
node_gold -.->|"grounds questions"| node_data_agent
node_operator -.->|"asks questions"| node_data_agent

click node_runtime "https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/runtime.py"
click node_scope "https://github.com/microsoft/fabric-architecture-review/blob/main/collectors/workspace_scope.py"
click node_collectors "https://github.com/microsoft/fabric-architecture-review/tree/main/collectors"
click node_definitions "https://github.com/microsoft/fabric-architecture-review/blob/main/collectors/pipeline_definitions.py"
click node_job_history "https://github.com/microsoft/fabric-architecture-review/blob/main/collectors/pipelines_notebooks.py"
click node_analyzers "https://github.com/microsoft/fabric-architecture-review/tree/main/analyzers"
click node_reports "https://github.com/microsoft/fabric-architecture-review/tree/main/reports"
click node_gold "https://github.com/microsoft/fabric-architecture-review/blob/main/reports/gold_layer.py"
click node_owner_report "https://github.com/microsoft/fabric-architecture-review/tree/main/reports/owner"
click node_owner_agent "https://github.com/microsoft/fabric-architecture-review/blob/main/reports/agent/owner_agent.py"
click node_data_agent "https://github.com/microsoft/fabric-architecture-review/blob/main/reports/agent/data_agent.py"
click node_app "https://github.com/microsoft/fabric-architecture-review/blob/main/fabric/app/src/components/review-workbench.tsx"
click node_review_data "https://github.com/microsoft/fabric-architecture-review/blob/main/fabric/app/src/hooks/review-data.context.tsx"
click node_semantic_query "https://github.com/microsoft/fabric-architecture-review/blob/main/fabric/app/src/hooks/use-semantic-model-query.ts"
click node_targeting "https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/sources.py"
click node_deployment "https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/deployment.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_runtime,node_scope,node_analyzers,node_findings,node_operator toneBlue
class node_collectors,node_raw_evidence,node_definitions,node_job_history toneAmber
class node_reports,node_gold,node_owner_report,node_owner_agent,node_data_agent,node_fabric_api toneMint
class node_app,node_review_data,node_semantic_query toneRose
class node_targeting,node_deployment,node_owner,node_fabric_operator toneIndigo
```

## Components

### Review workflow

- [Review runtime](https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/runtime.py): `orchestration/runtime.py`
- [Workspace scope](https://github.com/microsoft/fabric-architecture-review/blob/main/collectors/workspace_scope.py): `collectors/workspace_scope.py`
- [Review analyzers](https://github.com/microsoft/fabric-architecture-review/tree/main/analyzers): `analyzers`
- **Prioritized findings**

### Evidence collection

- [Evidence collectors](https://github.com/microsoft/fabric-architecture-review/tree/main/collectors): `collectors`
- **Raw evidence**
- [Pipeline definitions](https://github.com/microsoft/fabric-architecture-review/blob/main/collectors/pipeline_definitions.py): `collectors/pipeline_definitions.py`
- [Execution history](https://github.com/microsoft/fabric-architecture-review/blob/main/collectors/pipelines_notebooks.py): `collectors/pipelines_notebooks.py`

### Reports and access

- [Written reports](https://github.com/microsoft/fabric-architecture-review/tree/main/reports): `reports`
- [Governance Gold](https://github.com/microsoft/fabric-architecture-review/blob/main/reports/gold_layer.py): `reports/gold_layer.py`
- [Owner report model](https://github.com/microsoft/fabric-architecture-review/tree/main/reports/owner): `reports/owner`
- [Workspace Owner Agent](https://github.com/microsoft/fabric-architecture-review/blob/main/reports/agent/owner_agent.py): `reports/agent/owner_agent.py`
- [Central Data Agent](https://github.com/microsoft/fabric-architecture-review/blob/main/reports/agent/data_agent.py): `reports/agent/data_agent.py`

### Interactive app

- [Review workbench](https://github.com/microsoft/fabric-architecture-review/blob/main/fabric/app/src/components/review-workbench.tsx): `fabric/app/src/components/review-workbench.tsx`
- [Review data context](https://github.com/microsoft/fabric-architecture-review/blob/main/fabric/app/src/hooks/review-data.context.tsx): `fabric/app/src/hooks/review-data.context.tsx`
- [Semantic model queries](https://github.com/microsoft/fabric-architecture-review/blob/main/fabric/app/src/hooks/use-semantic-model-query.ts): `fabric/app/src/hooks/use-semantic-model-query.ts`

### Fabric operations

- [Targeted review selection](https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/sources.py): `orchestration/sources.py`
- [Fabric deployment](https://github.com/microsoft/fabric-architecture-review/blob/main/orchestration/deployment.py): `orchestration/deployment.py`

### Other components

- **Review operator**
- **Fabric APIs**
- **Workspace owner**
- **Fabric administrator**

## Connections

- Review operator → Review runtime: starts review
- Review runtime → Workspace scope: sets scope
- Review runtime → Evidence collectors: runs collection
- Evidence collectors → Fabric APIs: requests metadata
- Evidence collectors → Raw evidence: writes evidence
- Review runtime → Pipeline definitions: collects definitions
- Pipeline definitions → Fabric APIs: fetches definitions
- Review runtime → Execution history: collects history
- Execution history → Fabric APIs: reads job history
- Pipeline definitions → Raw evidence: writes definitions
- Execution history → Raw evidence: writes executions
- Review runtime → Review analyzers: runs analysis
- Review analyzers → Raw evidence: reads evidence
- Review analyzers → Prioritized findings: produces findings
- Review runtime → Written reports: generates reports
- Prioritized findings → Written reports: supports findings
- Fabric deployment → Governance Gold: creates artifacts
- Written reports → Governance Gold: populates review data
- Written reports → Owner report model: supports subset
- Owner report model → Workspace Owner Agent: grounds questions
- Workspace owner → Workspace Owner Agent: asks questions
- Fabric administrator → Targeted review selection: configures targeting
- Targeted review selection → Review runtime: selects workspaces
- Review operator → Review workbench: opens workbench
- Review workbench → Review data context: reads review data
- Review data context → Governance Gold: loads review data
- Review workbench → Semantic model queries: requests model query
- Semantic model queries → Fabric APIs: queries semantic model
- Fabric administrator → Fabric deployment: deploys artifacts
- Governance Gold → Central Data Agent: grounds questions
- Review operator → Central Data Agent: asks questions
