Skip to content

Commit b8614cc

Browse files
chore(codeboarding): sync architecture baseline
1 parent 2df93e2 commit b8614cc

9 files changed

Lines changed: 1009 additions & 3 deletions
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
```mermaid
2+
graph LR
3+
Execution_Dispatcher["Execution Dispatcher"]
4+
Analysis_Strategy_Manager["Analysis Strategy Manager"]
5+
Quality_Environment_Guard["Quality & Environment Guard"]
6+
Execution_Dispatcher -- "invokes to execute analysis phase" --> Analysis_Strategy_Manager
7+
Execution_Dispatcher -- "triggers validation and health reporting" --> Quality_Environment_Guard
8+
Analysis_Strategy_Manager -- "utilizes drift detection for baseline validation" --> Quality_Environment_Guard
9+
Quality_Environment_Guard -- "provides health metrics for metadata finalization" --> Analysis_Strategy_Manager
10+
```
11+
12+
[![CodeBoarding](https://img.shields.io/badge/Generated%20by-CodeBoarding-9cf?style=flat-square)](https://github.com/CodeBoarding/CodeBoarding)[![Demo](https://img.shields.io/badge/Try%20our-Demo-blue?style=flat-square)](https://www.codeboarding.org/diagrams)[![Contact](https://img.shields.io/badge/Contact%20us%20-%20contact@codeboarding.org-lightgrey?style=flat-square)](mailto:contact@codeboarding.org)
13+
14+
## Details
15+
16+
Acts as the central controller for the action. It validates the environment, manages the transition between full codebase scans and incremental PR analysis, and ensures metadata consistency across runs.
17+
18+
### Execution Dispatcher
19+
Acts as the primary entry point and high-level coordinator. It sequences the execution phases (seed, analyze, render, health) and manages the global execution context for the GitHub Action.
20+
21+
22+
**Related Classes/Methods**:
23+
24+
- `scripts.engine_adapter.main`:488-558
25+
- `scripts.engine_adapter.run_head`:303-324
26+
- `scripts.engine_adapter.run_render`:397-410
27+
28+
29+
30+
**Source Files:**
31+
32+
- [`scripts/engine_adapter.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py)
33+
- `scripts.engine_adapter.run_seed` ([L222-L249](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L222-L249)) - Function
34+
- `scripts.engine_adapter.run_head` ([L303-L324](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L303-L324)) - Function
35+
- `scripts.engine_adapter.run_render` ([L397-L410](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L397-L410)) - Function
36+
- `scripts.engine_adapter.run_concat` ([L413-L426](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L413-L426)) - Function
37+
- `scripts.engine_adapter.main` ([L488-L558](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L488-L558)) - Function
38+
39+
40+
### Analysis Strategy Manager
41+
Determines the optimal analysis mode (Full vs. Incremental) based on the Git context and manages the persistence of analysis metadata to ensure continuity between PR updates.
42+
43+
44+
**Related Classes/Methods**:
45+
46+
- `scripts.engine_adapter.run_analyze`:327-394
47+
- `scripts.engine_adapter._incremental_or_full`:252-300
48+
- `scripts.engine_adapter._load_metadata`:77-87
49+
- `scripts.engine_adapter._metadata_commit`:97-99
50+
51+
52+
53+
**Source Files:**
54+
55+
- [`scripts/engine_adapter.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py)
56+
- `scripts.engine_adapter._log_path` ([L64-L65](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L64-L65)) - Function
57+
- `scripts.engine_adapter._clear_dir` ([L68-L74](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L68-L74)) - Function
58+
- `scripts.engine_adapter._load_metadata` ([L77-L87](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L77-L87)) - Function
59+
- `scripts.engine_adapter._metadata_commit` ([L97-L99](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L97-L99)) - Function
60+
- `scripts.engine_adapter.baseline_info` ([L102-L112](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L102-L112)) - Function
61+
- `scripts.engine_adapter.run_base` ([L207-L219](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L207-L219)) - Function
62+
- `scripts.engine_adapter._incremental_or_full` ([L252-L300](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L252-L300)) - Function
63+
- `scripts.engine_adapter.run_analyze` ([L327-L394](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L327-L394)) - Function
64+
- `scripts.engine_adapter.run_analyze.full` ([L343-L359](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L343-L359)) - Function
65+
66+
67+
### Quality & Environment Guard
68+
Validates the integrity of the analysis environment before execution and performs post-analysis health checks to report on the quality and coverage of the generated insights.
69+
70+
71+
**Related Classes/Methods**:
72+
73+
- `scripts.engine_adapter.validate_base_analysis`:149-204
74+
- `scripts.engine_adapter.run_health`:456-485
75+
- `scripts.engine_adapter._docs_only_baseline_drift`:115-146
76+
77+
78+
79+
**Source Files:**
80+
81+
- [`scripts/engine_adapter.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py)
82+
- `scripts.engine_adapter._metadata_depth` ([L90-L94](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L90-L94)) - Function
83+
- `scripts.engine_adapter._docs_only_baseline_drift` ([L115-L146](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L115-L146)) - Function
84+
- `scripts.engine_adapter._docs_only_baseline_drift.git` ([L118-L125](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L118-L125)) - Function
85+
- `scripts.engine_adapter.validate_base_analysis` ([L149-L204](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L149-L204)) - Function
86+
- `scripts.engine_adapter._count_report_issues` ([L429-L442](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L429-L442)) - Function
87+
- `scripts.engine_adapter._count_health_report` ([L445-L453](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L445-L453)) - Function
88+
- `scripts.engine_adapter.run_health` ([L456-L485](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/engine_adapter.py#L456-L485)) - Function
89+
90+
91+
92+
93+
### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
```mermaid
2+
graph LR
3+
Diagram_Orchestration_Change_Detection["Diagram Orchestration & Change Detection"]
4+
Recursive_Syntax_Generator["Recursive Syntax Generator"]
5+
Diagram_Orchestration_Change_Detection -- "Passes filtered component subtrees and change-sets to initiate the string-building process" --> Recursive_Syntax_Generator
6+
Recursive_Syntax_Generator -- "Uses internal recursion to handle nested architectural layers" --> Recursive_Syntax_Generator
7+
```
8+
9+
[![CodeBoarding](https://img.shields.io/badge/Generated%20by-CodeBoarding-9cf?style=flat-square)](https://github.com/CodeBoarding/CodeBoarding)[![Demo](https://img.shields.io/badge/Try%20our-Demo-blue?style=flat-square)](https://www.codeboarding.org/diagrams)[![Contact](https://img.shields.io/badge/Contact%20us%20-%20contact@codeboarding.org-lightgrey?style=flat-square)](mailto:contact@codeboarding.org)
10+
11+
## Details
12+
13+
Translates the structural diff data into Mermaid.js syntax. It handles the recursive rendering of nested components, applies status indicators (added/modified/deleted), and filters noise to ensure diagram readability.
14+
15+
### Diagram Orchestration & Change Detection
16+
Acts as the entry point for the visualization process, identifying components requiring re-rendering by analyzing Git diffs and managing the lifecycle of generated diagram files.
17+
18+
19+
**Related Classes/Methods**:
20+
21+
- `scripts.build_component_files.render_component_files`:124-175
22+
23+
24+
25+
**Source Files:**
26+
27+
- [`scripts/diff_to_mermaid.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py)
28+
- `scripts.diff_to_mermaid.render_mermaid` ([L396-L521](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L396-L521)) - Function
29+
- `scripts.diff_to_mermaid.render_mermaid.build` ([L424-L497](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L424-L497)) - Function
30+
- `scripts.diff_to_mermaid.render_mermaid.build.emit_edges` ([L435-L447](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L435-L447)) - Function
31+
- `scripts.diff_to_mermaid.render_mermaid.build.emit_level` ([L449-L466](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L449-L466)) - Function
32+
33+
34+
### Recursive Syntax Generator
35+
The core logic engine that translates internal component models into Mermaid syntax through recursive traversal of nested structures.
36+
37+
38+
**Related Classes/Methods**:
39+
40+
- `scripts.diff_to_mermaid.render_mermaid`:396-521
41+
- `scripts.diff_to_mermaid.render_mermaid.build.emit_level`:449-466
42+
43+
44+
45+
**Source Files:**
46+
47+
- [`scripts/build_component_files.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py)
48+
- `scripts.build_component_files._block` ([L104-L121](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L104-L121)) - Function
49+
- `scripts.build_component_files.render_component_files` ([L124-L175](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L124-L175)) - Function
50+
- [`scripts/diff_to_mermaid.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py)
51+
- `scripts.diff_to_mermaid._comp_id` ([L60-L61](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L60-L61)) - Function
52+
- `scripts.diff_to_mermaid._comp_name` ([L64-L65](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L64-L65)) - Function
53+
- `scripts.diff_to_mermaid._has_changes` ([L151-L159](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L151-L159)) - Function
54+
- `scripts.diff_to_mermaid._sanitize` ([L223-L225](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L223-L225)) - Function
55+
- `scripts.diff_to_mermaid._esc` ([L247-L253](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L247-L253)) - Function
56+
- `scripts.diff_to_mermaid._truncate` ([L256-L258](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L256-L258)) - Function
57+
- `scripts.diff_to_mermaid._display_status` ([L261-L262](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L261-L262)) - Function
58+
- `scripts.diff_to_mermaid._Scope` ([L265-L309](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L265-L309)) - Class
59+
- `scripts.diff_to_mermaid._Scope.__init__` ([L276-L298](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L276-L298)) - Method
60+
- `scripts.diff_to_mermaid._filter_changed` ([L312-L354](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L312-L354)) - Function
61+
- `scripts.diff_to_mermaid._filter_changed.touches` ([L345-L347](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L345-L347)) - Function
62+
- `scripts.diff_to_mermaid._init_directive` ([L357-L376](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L357-L376)) - Function
63+
- `scripts.diff_to_mermaid._count_changed_components` ([L379-L386](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L379-L386)) - Function
64+
- `scripts.diff_to_mermaid._has_changed_relations` ([L389-L393](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L389-L393)) - Function
65+
66+
67+
68+
69+
### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
```mermaid
2+
graph LR
3+
Change_Discovery_Scope_Extractor["Change Discovery & Scope Extractor"]
4+
Architectural_Mapper_Identity_Manager["Architectural Mapper & Identity Manager"]
5+
Impact_Analyzer_Visualizer["Impact Analyzer & Visualizer"]
6+
Change_Discovery_Scope_Extractor -- "Passes identified file paths and method-level scopes to be resolved into logical component identities." --> Architectural_Mapper_Identity_Manager
7+
Architectural_Mapper_Identity_Manager -- "Provides the mapped component metadata and sanitized names required to build the structural comparison." --> Impact_Analyzer_Visualizer
8+
Change_Discovery_Scope_Extractor -- "Supplies the raw change data used to evaluate _has_changes logic during the final visualization phase." --> Impact_Analyzer_Visualizer
9+
Impact_Analyzer_Visualizer -- "calls" --> Architectural_Mapper_Identity_Manager
10+
```
11+
12+
[![CodeBoarding](https://img.shields.io/badge/Generated%20by-CodeBoarding-9cf?style=flat-square)](https://github.com/CodeBoarding/CodeBoarding)[![Demo](https://img.shields.io/badge/Try%20our-Demo-blue?style=flat-square)](https://www.codeboarding.org/diagrams)[![Contact](https://img.shields.io/badge/Contact%20us%20-%20contact@codeboarding.org-lightgrey?style=flat-square)](mailto:contact@codeboarding.org)
13+
14+
## Details
15+
16+
Analyzes the codebase to identify structural modifications. It maps file-level changes to architectural components and extracts method-level differences to determine the scope of the impact.
17+
18+
### Change Discovery & Scope Extractor
19+
Acts as the entry point for the engine by interfacing with the Git environment to identify modified files and drilling down into the specific code symbols affected within those files.
20+
21+
22+
**Related Classes/Methods**:
23+
24+
- `scripts.build_component_files._changed_files_for`:88-101
25+
- `scripts.build_component_files._subtree_methods`:77-85
26+
- `scripts.build_component_files.main`:178-213
27+
28+
29+
30+
**Source Files:**
31+
32+
- [`scripts/build_component_files.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py)
33+
- `scripts.build_component_files._walk` ([L56-L62](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L56-L62)) - Function
34+
- `scripts.build_component_files._subtree_files` ([L65-L74](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L65-L74)) - Function
35+
- `scripts.build_component_files._subtree_methods` ([L77-L85](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L77-L85)) - Function
36+
- `scripts.build_component_files._changed_files_for` ([L88-L101](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L88-L101)) - Function
37+
- `scripts.build_component_files.main` ([L178-L213](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/build_component_files.py#L178-L213)) - Function
38+
39+
40+
### Architectural Mapper & Identity Manager
41+
Translates physical file paths into logical architectural components, handling normalization, unique ID generation, and metadata management for component-level updates.
42+
43+
44+
**Related Classes/Methods**: _None_
45+
46+
47+
**Source Files:**
48+
49+
- [`scripts/diff_to_mermaid.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py)
50+
- `scripts.diff_to_mermaid._file_methods` ([L68-L69](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L68-L69)) - Function
51+
- `scripts.diff_to_mermaid._has_structural_changes` ([L82-L85](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L82-L85)) - Function
52+
- `scripts.diff_to_mermaid._has_method_changes` ([L88-L93](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L88-L93)) - Function
53+
- `scripts.diff_to_mermaid._diff_relations` ([L102-L148](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L102-L148)) - Function
54+
- `scripts.diff_to_mermaid._diff_components` ([L162-L207](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L162-L207)) - Function
55+
56+
57+
### Impact Analyzer & Visualizer
58+
Compares component states before and after changes to determine modification types and aggregates findings into visual Mermaid.js flow and status reports.
59+
60+
61+
**Related Classes/Methods**:
62+
63+
- `scripts.diff_to_mermaid.build_diff`:210-217
64+
- `scripts.diff_to_mermaid._diff_components`:162-207
65+
66+
67+
68+
**Source Files:**
69+
70+
- [`scripts/diff_to_mermaid.py`](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py)
71+
- `scripts.diff_to_mermaid.load_analysis` ([L50-L54](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L50-L54)) - Function
72+
- `scripts.diff_to_mermaid._methods_by_file` ([L72-L79](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L72-L79)) - Function
73+
- `scripts.diff_to_mermaid._rel_key` ([L96-L99](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L96-L99)) - Function
74+
- `scripts.diff_to_mermaid.build_diff` ([L210-L217](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L210-L217)) - Function
75+
- `scripts.diff_to_mermaid.main` ([L527-L568](https://github.com/CodeBoarding/CodeBoarding-action/blob/main/.codeboardingscripts/diff_to_mermaid.py#L527-L568)) - Function
76+
77+
78+
79+
80+
### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)

0 commit comments

Comments
 (0)