Files
acdl/mcp/atelier/vendor/domains/security/first-principles.md
T
Jon Chery 8bcf7296d5 feat(P5): Atelier MCP server + vendored Atelier + plugin-registry (REQ-223, REQ-224, REQ-225)
REQ-223: mcp/atelier/server.py plugin-registry MCP server (stdio, D-135).
NovaAtelierServer wraps MCPServer (SDK v2, D-137) if installed; degrades
to _ToolRegistry fallback if SDK absent (testable in CI without SDK).
plugins/principles.py (lookup_principle, list_domains, matrix_lookup) +
plugins/validation.py (validate_against_principles — agentic validation
beyond Wiz/Checkmarx/Mend). 4 tools, 2 plugins.

REQ-224: mcp/atelier/vendor/ pinned Atelier v0.3.6 (D-136) — core/
first-principles, domains/security/first-principles, review/agent-checklist,
matrix/principles-matrix. vendor/VERSION.md + scripts/update_atelier_vendor.sh
for intentional upgrades. mcp/atelier/README.md (tools, architecture,
running, vendoring, extensibility, transport).

REQ-225: tests/test_atelier_mcp.py — 16 tests, all pass. Covers: plugin
discovery (both loaded), 4 tools registered, lookup_security_P4 (+P1,
unknown domain/principle), list_domains (19, security-relevant, ui-ux-not),
matrix_lookup (security 10 P-rules, unknown), validation (good-passes,
bad-secret-fails, bad-swallowed-error-fails, bad-obfuscated-names-fails,
result-structure).

---ci---
project: acdl
phase: 5
milestone: v1.18
status: execute
requirements:
  covered: [REQ-223, REQ-224, REQ-225]
  partial: []
---/ci---
2026-08-06 15:13:40 +00:00

1.0 KiB

Security — First Principles

P1 — Boundary Validation

All input is validated at the trust boundary. (C1 Correctness)

P2 — Least Privilege

Every identity has the minimum authority required. (C1, C8 Economy)

P3 — Defense in Depth

Security controls are layered; no single control is the only barrier. (C1)

P4 — Secrets Never Exposed

Secrets are never in code, logs, URLs, or error messages. (C1, C7 Observability)

P5 — Authenticated by Default

Access is denied unless explicitly granted. (C1)

P6 — Encrypted in Transit and at Rest

All data is encrypted in motion and at rest. (C1)

P7 — Auditable Actions

Every security-relevant action is recorded with an authenticated principal. (C1, C7)

P8 — Patched Dependencies

Dependencies are pinned and scanned for known vulnerabilities. (C1, C8)

P9 — Isolated Blast Radius

Compromise of one component does not compromise the system. (C1, C6 Composability)

P10 — Secure by Default

The secure configuration is the default; insecurity requires explicit opt-in. (C1)