diff --git a/wiki/_master-index.md b/wiki/_master-index.md index 4764d63..495afd5 100644 --- a/wiki/_master-index.md +++ b/wiki/_master-index.md @@ -36,5 +36,8 @@ This 3-hop pattern works for hundreds of articles without vector search. | [[wiki/infrastructure/_index\|infrastructure/]] | Server inventory: all 10 SSH hosts — optical, optical-dev, optical-prod, baic, librechat, modocmms, box-cli, aimpress, pve | 11 | | [[wiki/testing/_index\|testing/]] | Web app testing: functional, performance, security, UI types; TDD/BDD/Agile methodologies; Selenium/Cypress/Playwright/JMeter/OWASP ZAP tools | 1 | +| [[wiki/shared-patterns/_index\|shared-patterns/]] | Oliver Agency standard library patterns: httpx, structlog, pydantic-settings, alembic — reuse before writing from scratch | 4 | +| [[wiki/mistakes/_index\|mistakes/]] | Anti-patterns extracted from sessions — per-stack running lists (fastapi, react, docker, postgres, general) — injected at session start | 5 | + diff --git a/wiki/mistakes/_index.md b/wiki/mistakes/_index.md new file mode 100644 index 0000000..b4c2532 --- /dev/null +++ b/wiki/mistakes/_index.md @@ -0,0 +1,18 @@ +--- +title: "Mistakes Index" +description: "Running log of mistakes to avoid repeating — auto-populated from session flush" +updated: 2026-05-15 +--- + +# Mistakes + +Anti-patterns and time-wasters extracted from real debugging sessions. +**Session-start hook injects relevant stack file at the start of every session.** + +| Stack | File | Last mistake | +|-------|------|-------------| +| FastAPI / Python | [[wiki/mistakes/fastapi]] | — | +| React / TypeScript | [[wiki/mistakes/react]] | — | +| Docker / Infra | [[wiki/mistakes/docker]] | — | +| PostgreSQL / Alembic | [[wiki/mistakes/postgres]] | — | +| General / Cross-stack | [[wiki/mistakes/general]] | — | diff --git a/wiki/mistakes/docker.md b/wiki/mistakes/docker.md new file mode 100644 index 0000000..56a320b --- /dev/null +++ b/wiki/mistakes/docker.md @@ -0,0 +1,13 @@ +--- +title: "Docker / Infrastructure Mistakes" +tags: [docker, infra, mistakes] +updated: 2026-05-15 +--- + +# Docker / Infrastructure — Mistakes to Avoid + +Running list. Newest first. Auto-populated from session flush. + +--- + + diff --git a/wiki/mistakes/fastapi.md b/wiki/mistakes/fastapi.md new file mode 100644 index 0000000..0d58a08 --- /dev/null +++ b/wiki/mistakes/fastapi.md @@ -0,0 +1,13 @@ +--- +title: "FastAPI / Python Mistakes" +tags: [fastapi, python, mistakes] +updated: 2026-05-15 +--- + +# FastAPI / Python — Mistakes to Avoid + +Running list. Newest first. Auto-populated from session flush. + +--- + + diff --git a/wiki/mistakes/general.md b/wiki/mistakes/general.md new file mode 100644 index 0000000..79768a5 --- /dev/null +++ b/wiki/mistakes/general.md @@ -0,0 +1,13 @@ +--- +title: "General / Cross-Stack Mistakes" +tags: [general, mistakes] +updated: 2026-05-15 +--- + +# General / Cross-Stack — Mistakes to Avoid + +Running list. Newest first. Auto-populated from session flush. + +--- + + diff --git a/wiki/mistakes/postgres.md b/wiki/mistakes/postgres.md new file mode 100644 index 0000000..f5384d4 --- /dev/null +++ b/wiki/mistakes/postgres.md @@ -0,0 +1,13 @@ +--- +title: "PostgreSQL / Alembic Mistakes" +tags: [postgres, alembic, mistakes] +updated: 2026-05-15 +--- + +# PostgreSQL / Alembic — Mistakes to Avoid + +Running list. Newest first. Auto-populated from session flush. + +--- + + diff --git a/wiki/mistakes/react.md b/wiki/mistakes/react.md new file mode 100644 index 0000000..7e10f1f --- /dev/null +++ b/wiki/mistakes/react.md @@ -0,0 +1,13 @@ +--- +title: "React / TypeScript Mistakes" +tags: [react, typescript, mistakes] +updated: 2026-05-15 +--- + +# React / TypeScript — Mistakes to Avoid + +Running list. Newest first. Auto-populated from session flush. + +--- + + diff --git a/wiki/shared-patterns/_index.md b/wiki/shared-patterns/_index.md new file mode 100644 index 0000000..3fd9549 --- /dev/null +++ b/wiki/shared-patterns/_index.md @@ -0,0 +1,17 @@ +--- +title: "Shared Patterns Index" +description: "Oliver Agency standard library implementations — reuse before writing from scratch" +updated: 2026-05-15 +--- + +# Shared Patterns + +Cross-project reusable implementations for Oliver Agency standard libraries. +Read these before writing any HTTP client, logger, config loader, or migration. + +| Article | Summary | Updated | +|---------|---------|---------| +| [[wiki/shared-patterns/httpx-async-client\|httpx-async-client]] | Async HTTP client patterns — auth headers, retries, Mailgun gotcha, ADO PATCH | 2026-05-15 | +| [[wiki/shared-patterns/structlog-setup\|structlog-setup]] | structlog configuration — two real styles, request-id middleware, stdlib bridge | 2026-05-15 | +| [[wiki/shared-patterns/pydantic-settings-env\|pydantic-settings-env]] | BaseSettings patterns — Azure AD, Box API, 4 gotchas (reserved `model` field, case sensitivity) | 2026-05-15 | +| [[wiki/shared-patterns/alembic-migrations\|alembic-migrations]] | Async Alembic setup — alembic.ini, env.py, 5 gotchas (nullable, Enum drop, server_default) | 2026-05-15 |