-
Notifications
You must be signed in to change notification settings - Fork 0
142 lines (139 loc) · 6.22 KB
/
Copy patharchitecture-document-set.yml
File metadata and controls
142 lines (139 loc) · 6.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
name: Architecture document set
on:
pull_request:
branches: [main]
paths:
- "docs/architecture/**"
- "docs/project/**"
- "docs/modules/**"
- "docs/red-blue/**"
- "docs/research/**"
- "docs/decisions/**"
- "docs/evidence/**"
- "docs/governance/**"
- "docs/README.md"
- "tools/agent/render_architecture.py"
- "tools/scripts/verify_architecture_document_set.py"
- "tools/scripts/verify_architecture_semantic_alignment.py"
- "tools/scripts/verify_architecture_writing_standard.py"
- "tools/scripts/verify_architecture_human_readability.py"
- "tools/scripts/verify_docs_entrypoints.py"
- "tools/scripts/verify_repo_structure.py"
- "tests/repo/test_architecture_document_set.py"
- "tests/repo/test_architecture_semantic_alignment.py"
- "tests/repo/test_architecture_writing_standard.py"
- "tests/repo/test_architecture_human_readability.py"
- "tests/repo/test_docs_entrypoints.py"
- "tests/repo/test_red_blue_github_state_bus.py"
- "AGENTS.md"
- ".agent/system.yaml"
- ".agent/references/**"
- ".agent/red-blue/**"
- ".agent/scripts/**"
push:
branches: [main, agent/wave2-architecture-integration]
paths:
- "docs/architecture/**"
- "docs/project/**"
- "docs/modules/**"
- "docs/red-blue/**"
- "docs/research/**"
- "docs/decisions/**"
- "docs/evidence/**"
- "docs/governance/**"
- "docs/README.md"
- "tools/agent/render_architecture.py"
- "tools/scripts/verify_architecture_document_set.py"
- "tools/scripts/verify_architecture_semantic_alignment.py"
- "tools/scripts/verify_architecture_writing_standard.py"
- "tools/scripts/verify_architecture_human_readability.py"
- "tools/scripts/verify_docs_entrypoints.py"
- "tools/scripts/verify_repo_structure.py"
- "tests/repo/test_architecture_document_set.py"
- "tests/repo/test_architecture_semantic_alignment.py"
- "tests/repo/test_architecture_writing_standard.py"
- "tests/repo/test_architecture_human_readability.py"
- "tests/repo/test_docs_entrypoints.py"
- "tests/repo/test_red_blue_github_state_bus.py"
- "AGENTS.md"
- ".agent/system.yaml"
- ".agent/references/**"
- ".agent/red-blue/**"
- ".agent/scripts/**"
workflow_dispatch:
permissions:
contents: read
jobs:
validate:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install validation dependencies
run: python -m pip install --disable-pip-version-check pytest pyyaml
- name: Prepare validation logs
run: mkdir -p architecture-validation-logs
- name: Compile architecture validators and tests
run: |
set -o pipefail
python -m py_compile \
tools/agent/render_architecture.py \
tools/scripts/verify_architecture_document_set.py \
tools/scripts/verify_architecture_semantic_alignment.py \
tools/scripts/verify_architecture_writing_standard.py \
tools/scripts/verify_architecture_human_readability.py \
tools/scripts/verify_docs_entrypoints.py \
tools/scripts/verify_repo_structure.py \
.agent/scripts/verify_agent_system.py \
.agent/scripts/verify_doc_boundaries.py \
tests/repo/test_architecture_document_set.py \
tests/repo/test_architecture_semantic_alignment.py \
tests/repo/test_architecture_writing_standard.py \
tests/repo/test_architecture_human_readability.py \
tests/repo/test_docs_entrypoints.py \
tests/repo/test_red_blue_github_state_bus.py \
2>&1 | tee architecture-validation-logs/compile.log
- name: Verify canonical architecture document set
run: set -o pipefail; python tools/scripts/verify_architecture_document_set.py 2>&1 | tee architecture-validation-logs/document-set.log
- name: Verify semantic alignment with canonical modules
run: set -o pipefail; python tools/scripts/verify_architecture_semantic_alignment.py 2>&1 | tee architecture-validation-logs/semantic-alignment.log
- name: Verify architecture writing standard
run: set -o pipefail; python tools/scripts/verify_architecture_writing_standard.py 2>&1 | tee architecture-validation-logs/writing-standard.log
- name: Verify project, architecture and module human readability structure
run: set -o pipefail; python tools/scripts/verify_architecture_human_readability.py 2>&1 | tee architecture-validation-logs/human-readability.log
- name: Verify architecture rendering and mirrors
run: set -o pipefail; python tools/agent/render_architecture.py --check 2>&1 | tee architecture-validation-logs/render.log
- name: Verify documentation and Agent entrypoints
run: |
set -o pipefail
{
python tools/scripts/verify_docs_entrypoints.py
python tools/scripts/verify_markdown_internal_links.py
python tools/scripts/verify_repo_structure.py
python .agent/scripts/verify_agent_system.py
python .agent/scripts/verify_doc_boundaries.py
} 2>&1 | tee architecture-validation-logs/entrypoints.log
- name: Run project, architecture and module focused tests
run: |
set -o pipefail
pytest -q \
tests/repo/test_architecture_document_set.py \
tests/repo/test_architecture_semantic_alignment.py \
tests/repo/test_architecture_writing_standard.py \
tests/repo/test_architecture_human_readability.py \
tests/repo/test_docs_entrypoints.py \
tests/repo/test_red_blue_github_state_bus.py \
-p no:cacheprovider \
2>&1 | tee architecture-validation-logs/pytest.log
- name: Upload architecture validation logs
if: always()
uses: actions/upload-artifact@v4
with:
name: architecture-document-set-validation-logs
path: architecture-validation-logs
if-no-files-found: error
retention-days: 14