Skip to content

Commit ab4be6d

Browse files
authored
Add files via upload
1 parent f81fb67 commit ab4be6d

2 files changed

Lines changed: 173 additions & 0 deletions

File tree

alembic.ini

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
[alembic]
2+
script_location = backend/db_migrations
3+
prepend_sys_path = .
4+
5+
[loggers]
6+
keys = root,sqlalchemy,alembic
7+
8+
[handlers]
9+
keys = console
10+
11+
[formatters]
12+
keys = generic
13+
14+
[logger_root]
15+
level = WARN
16+
handlers = console
17+
18+
[logger_sqlalchemy]
19+
level = WARN
20+
handlers =
21+
qualname = sqlalchemy.engine
22+
23+
[logger_alembic]
24+
level = INFO
25+
handlers =
26+
qualname = alembic
27+
28+
[handler_console]
29+
class = StreamHandler
30+
args = (sys.stdout,)
31+
level = NOTSET
32+
formatter = generic
33+
34+
[formatter_generic]
35+
format = %(levelname)-5.5s [%(name)s] %(message)s

patterns.json

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
{
2+
"question": "How many spec-driven patterns can we define across the stack?",
3+
"summary": {
4+
"category_count": 6,
5+
"pattern_count": 93
6+
},
7+
"categories": [
8+
{
9+
"name": "Backend",
10+
"count": 32,
11+
"patterns": [
12+
"HTTP endpoints",
13+
"CRUD models",
14+
"Validation rules",
15+
"Auth + permissions",
16+
"Rate limits + quotas",
17+
"Request/response schemas",
18+
"Logging patterns",
19+
"Exception handling",
20+
"Background jobs",
21+
"Scheduled tasks",
22+
"Webhook endpoints",
23+
"Notification triggers",
24+
"API pagination",
25+
"DB migrations",
26+
"Caching strategy",
27+
"Event publishing (Kafka/SQS)",
28+
"Event subscribing",
29+
"Retry policies",
30+
"Idempotency rules",
31+
"Security policies",
32+
"Config schemas",
33+
"Feature flags",
34+
"A/B experiment wiring",
35+
"Go HTTP CRUD router",
36+
"Rust Axum CRUD router",
37+
"Java Spring CRUD controller",
38+
"Node Express JWT auth",
39+
"Go HTTP JWT middleware",
40+
"Node BullMQ worker",
41+
"Python Celery worker",
42+
"Node Kafka consumer",
43+
"Go NATS subscriber"
44+
]
45+
},
46+
{
47+
"name": "Frontend",
48+
"count": 19,
49+
"patterns": [
50+
"Data forms",
51+
"Validation",
52+
"Data tables (sort, filter, paginate)",
53+
"CRUD UI",
54+
"Modals/dialogs",
55+
"Hero sections/layouts",
56+
"Sidebar/navigation",
57+
"Theming",
58+
"Global state slices",
59+
"API clients",
60+
"Error boundaries",
61+
"Toast notifications",
62+
"Responsive rules",
63+
"Component libraries",
64+
"Live previews",
65+
"Real-time listeners",
66+
"Settings pages",
67+
"React CRUD table",
68+
"React form validation"
69+
]
70+
},
71+
{
72+
"name": "Data & ML",
73+
"count": 17,
74+
"patterns": [
75+
"ETL pipelines",
76+
"Feature preprocessing",
77+
"Validation checks",
78+
"Model definitions",
79+
"Training loops",
80+
"Fine-tuning config",
81+
"Inference endpoints",
82+
"FastAPI inference API",
83+
"Monitoring/metrics",
84+
"Drift rules",
85+
"Batch jobs",
86+
"Data schemas",
87+
"Storage rules",
88+
"ML training job",
89+
"ML eval job",
90+
"ML quantization job",
91+
"ML inference profile"
92+
]
93+
},
94+
{
95+
"name": "Agent/AI",
96+
"count": 11,
97+
"patterns": [
98+
"Task definitions",
99+
"Tool schemas",
100+
"Memory schemas",
101+
"Policy rules",
102+
"Safety constraints",
103+
"Self-play loops",
104+
"Reward definitions",
105+
"Prompt templates",
106+
"Evaluation scripts",
107+
"LLM chat (FastAPI)",
108+
"LLM chat (Express)"
109+
]
110+
},
111+
{
112+
"name": "Infra",
113+
"count": 12,
114+
"patterns": [
115+
"Docker templates",
116+
"Deployments",
117+
"Autoscaling",
118+
"Load balancers",
119+
"Metrics dashboards",
120+
"Log pipelines",
121+
"Secrets management",
122+
"Permissions/IAM",
123+
"SSL & domains",
124+
"CICD workflows",
125+
"K8s deployment + service",
126+
"Docker Compose service"
127+
]
128+
},
129+
{
130+
"name": "CLI",
131+
"count": 2,
132+
"patterns": [
133+
"Python Click command",
134+
"Node Yargs command"
135+
]
136+
}
137+
]
138+
}

0 commit comments

Comments
 (0)