Skip to content

Commit 83d2ff5

Browse files
committed
ci: require complete docs and block placeholder text
1 parent eb35942 commit 83d2ff5

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

scripts/verify_repo.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
REQUIRED = [
77
'README.md',
8+
'LICENSE',
89
'CONTRIBUTING.md',
910
'CODE_OF_CONDUCT.md',
1011
'SECURITY.md',
@@ -19,19 +20,35 @@
1920
'.github/workflows/sync-wiki.yml',
2021
'docs/README.md',
2122
'docs/methodology/quickstart.md',
23+
'docs/methodology/glossary.md',
24+
'docs/methodology/anti-patterns.md',
2225
'docs/methodology/continuous-improvement-loop.md',
2326
'docs/methodology/definition-of-done.md',
2427
'docs/methodology/maturity-model.md',
2528
'docs/diagrams/README.md',
29+
'docs/loops/README.md',
2630
'docs/loops/feature.md',
2731
'docs/loops/bugfix-loop.md',
32+
'docs/loops/refactoring.md',
33+
'docs/loops/pipeline-repair.md',
34+
'docs/loops/iac.md',
35+
'docs/loops/security.md',
36+
'docs/loops/performance.md',
2837
'docs/loops/release.md',
2938
'docs/verifiers/README.md',
3039
'docs/evaluations/README.md',
40+
'docs/local-runner/README.md',
41+
'docs/showcase/README.md',
42+
'templates/README.md',
43+
'templates/project-context.md',
44+
'templates/repository-context-template.md',
45+
'templates/agent-instructions-template.md',
46+
'prompts/README.md',
3147
'prompts/master-system-prompt.md',
3248
'prompts/chatgpt-web.md',
3349
'prompts/continuous-improvement.md',
3450
'wiki/Home.md',
51+
'wiki/Architecture-Guide.md',
3552
'wiki/Loops.md',
3653
'wiki/Prompts.md',
3754
'wiki/Releases.md',
@@ -40,15 +57,22 @@
4057

4158
REQUIRED_MERMAID = [
4259
'AGENTS.md',
60+
'templates/README.md',
61+
'docs/methodology/quickstart.md',
62+
'docs/methodology/anti-patterns.md',
4363
'docs/methodology/continuous-improvement-loop.md',
4464
'docs/methodology/definition-of-done.md',
4565
'docs/methodology/maturity-model.md',
4666
'docs/diagrams/README.md',
4767
'docs/loops/feature.md',
4868
'docs/loops/release.md',
69+
'docs/verifiers/README.md',
70+
'docs/evaluations/README.md',
71+
'docs/local-runner/README.md',
4972
'wiki/Home.md',
5073
]
5174

75+
FORBIDDEN_TEXT = ['TBD', 'TODO', 'FIXME', 'placeholder']
5276
LINK_RE = re.compile(r'\[[^\]]+\]\(([^)]+)\)')
5377
SKIP_PREFIXES = ('http://', 'https://', 'mailto:', '#')
5478

@@ -78,6 +102,14 @@ def fail(title, items):
78102
without_mermaid.append(p)
79103
fail('Required diagram docs without Mermaid:', without_mermaid)
80104

105+
forbidden_hits = []
106+
for md in markdown:
107+
text = md.read_text(encoding='utf-8')
108+
for token in FORBIDDEN_TEXT:
109+
if token.lower() in text.lower():
110+
forbidden_hits.append(f'{md.relative_to(ROOT)} contains {token}')
111+
fail('Forbidden placeholder text found:', forbidden_hits)
112+
81113
broken_links = []
82114
for md in markdown:
83115
text = md.read_text(encoding='utf-8')

0 commit comments

Comments
 (0)