docs: add architecture and veins documentation
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

- System overview, artery hierarchy, build flow, room config diagrams
- Veins docs: Jira, Slack, Google OAuth
- Shunts docs: MercadoPago mock
- DOT source files with generated SVGs
- HTML viewers with navigation and full-screen mode

Solves:
- Freelance work standardization
- Missing infrastructure replication (shunts)
- Reliable testing environment (BDD -> Gherkin -> Tests)
This commit is contained in:
buenosairesam
2026-01-02 22:09:13 -03:00
parent 05e7ead081
commit 22356fed66
22 changed files with 2887 additions and 0 deletions

61
docs/veins/google.dot Normal file
View File

@@ -0,0 +1,61 @@
digraph GoogleVein {
rankdir=LR;
compound=true;
fontname="Helvetica";
node [fontname="Helvetica", fontsize=11, shape=box, style="rounded,filled"];
edge [fontname="Helvetica", fontsize=10];
labelloc="t";
label="Google Vein - OAuth Flow";
fontsize=16;
// Client
subgraph cluster_client {
label="Soleprint";
style=filled;
color="#E8F5E9";
fillcolor="#E8F5E9";
app [label="Application", fillcolor="#C8E6C9"];
vein [label="Google Vein\n(artery/veins/google)", fillcolor="#A5D6A7"];
oauth [label="OAuth Handler\n(artery/oauth.py)", fillcolor="#81C784"];
}
// OAuth Flow
subgraph cluster_oauth {
label="OAuth 2.0";
style=filled;
color="#FFF8E1";
fillcolor="#FFF8E1";
auth_url [label="1. Authorization URL", fillcolor="#FFECB3"];
consent [label="2. User Consent", fillcolor="#FFE082"];
callback [label="3. Callback + Code", fillcolor="#FFD54F"];
tokens [label="4. Access + Refresh\nTokens", fillcolor="#FFCA28"];
}
// Google APIs
subgraph cluster_google {
label="Google APIs";
style=filled;
color="#E3F2FD";
fillcolor="#E3F2FD";
sheets [label="Sheets API", fillcolor="#BBDEFB"];
calendar [label="Calendar API", fillcolor="#BBDEFB"];
drive [label="Drive API", fillcolor="#BBDEFB"];
}
// Flow
app -> vein [label="get_sheets()"];
vein -> oauth [label="ensure_auth"];
oauth -> auth_url;
auth_url -> consent;
consent -> callback;
callback -> tokens;
tokens -> oauth [label="store"];
oauth -> sheets [label="Bearer token"];
oauth -> calendar [label="Bearer token"];
oauth -> drive [label="Bearer token"];
}