AGENTS THAT KNOW YOUR STACK
A council of system architects, SREs, and security engineers that deliberate about your technical decisions. Your codebase as context. Your production metrics as evidence. Structured debate that prevents the mistakes you discover in production at 3am.
Kill opinion meetings
Arrive with a structured recommendation backed by 6 specialists. No more 90-minute debates where the loudest voice wins. Save 4-8h/week of senior engineer time.
Internet-scale knowledge
Every agent has read the docs, the RFCs, the post-mortems you haven't. Cross-cutting analysis that a single human brain can't hold simultaneously.
Architecture aligned to business
Business stakeholders are character-agents — CPO, Head of Ops, Compliance. Decisions weighted by revenue impact, compliance deadlines, team capacity. Not just "technically elegant."
Passive team upskilling
Juniors read council deliberations and learn architectural reasoning in context. Free mentorship embedded in every decision.
System Architect
Distributed systems, service boundaries, CAP theorem. Thinks in Kleppmann. Designs for the system you'll have in 2 years, not the one you have today.
Reliability Engineer
Uptime, failure modes, blast radius, runbooks. "What happens when this falls over at 3am and the on-call engineer has never seen this service?"
Data Architect
Schema design, migration strategy, consistency boundaries. Hates distributed transactions with the passion of someone who has debugged them.
Security Architect
Attack surface analysis, IDOR, SSRF, secret management. Sees threats where others see features. Assumes breach, designs for containment.
Performance Engineer
Latency budgets, N+1 queries, connection pools, hot paths. Measures everything. "Your p99 is 380ms because 12% of requests hit an unindexed query."
Tech Debt Auditor
Quantifies technical debt. "This refactor pays for itself in 3 sprints. That one never will." Fights gold-plating and unnecessary abstractions equally.
Technical decisions don't happen in a vacuum. CPO-01 brings the roadmap pressure. OPS-01 brings the on-call reality. COMPLIANCE-01 brings the audit deadline. ARCH-01 designs the system that satisfies all three — or explains why it can't.
Chief Product Officer
"We need the payment split feature in Q3. I don't care how — but customers are churning without it. What's the fastest path that doesn't break what works?"
◈ CHARACTERHead of Operations
"My team gets paged 3 times a week for payment timeout errors. Every architecture change that adds moving parts adds pages. I want fewer pages, not more."
◈ CHARACTERCompliance Officer
"PCI DSS audit in 6 months. Any architecture change needs to be documented, diagrammed, and approved 3 months in advance. Surprises are audit findings."
◈ CHARACTERQUESTION
Stress-test: 'The correct strategy for our 180K LOC Django monolith with payment processing bottlenecks is a strangler fig pattern, extracting payments first.'
CONTEXT
Django 4.2 monolith on AWS ECS, PostgreSQL 15, 2,400 RPM peak, p99 latency 380ms (target: 200ms). Payment processing is 60% of the codebase but 90% of the revenue. KYC calls 3 external providers with 2-8 second response times and blocks the main thread. Reporting runs nightly batch jobs that lock tables for 20+ minutes. Team has zero microservices experience. PCI DSS compliance audit in 6 months. Adversarial mode: every proposal gets attacked. Name the agent, name the claim, explain why it fails.
ARCH-01 (System Architect)
"The strangler fig with payments-first is the correct approach. Payment processing is the bottleneck — 90% of revenue, p99 at 380ms against a 200ms target. A strangler fig places an API gateway in front of the monolith and routes payment traffic to a new service incrementally. The domain boundary is clear: payments are already conceptually separate. Extract first, learn the operational pattern, then apply to KYC and reporting. This is textbook Fowler strangler fig — proven pattern, right problem."
DEBT-01 (Tech Debt Auditor)
"ARCH-01's strangler fig assumes the payment domain boundary is clean. I have read this codebase. It is not. Payments are coupled to 12 Django apps through direct ORM imports, shared model inheritance, and inline signal handlers. There is no clean seam to cut. ARCH-01 is applying a pattern that requires bounded contexts to a codebase that has none. The strangler fig works when you can draw a line. You cannot draw a line here without 3 months of untangling that ARCH-01 has not accounted for in the proposal."
SRE-01 (Reliability Engineer)
"ARCH-01's payment extraction creates a distributed transaction between the monolith and the new service. Payments touch account balances, ledger entries, and notification queues — all currently in the same Postgres transaction. Cross-service, that atomicity is gone. ARCH-01 has not addressed eventual consistency. What happens when the payment service succeeds but the monolith's ledger update fails? You now have a split-brain financial record. This is not a theoretical concern — it is the number one cause of production incidents in payment migrations. ARCH-01 presented zero mitigation."
SEC-01 (Security Architect)
"Extracting PCI-scoped code into a microservice doubles the compliance surface area. Right now the entire PCI scope is one monolith — one network boundary, one key management system, one set of audit logs. ARCH-01's proposal creates two PCI-scoped environments: the monolith still processes some payment data, and the new service processes the rest. PCI DSS audit is in 6 months. ARCH-01's migration will not be complete in 6 months. We will enter the audit mid-migration with two half-documented architectures. That is an audit finding waiting to happen."
OPS-01 (Head of Operations)
"I am the person paged at 3am. ARCH-01's strangler fig gives me two systems to debug when payments fail. Right now I have one runbook, one deploy pipeline, one escalation path. ARCH-01's architecture doubles every one of those. The strangler fig requires an API gateway that my team has never operated, a new service with its own deployment pipeline, and distributed tracing I do not currently have. ARCH-01 has not explained who builds the operational infrastructure before the migration starts, or what happens during the window when both systems are live."
COMPLIANCE-01 (Compliance Officer)
"SEC-01's PCI scope concern is correct, but the timeline makes it worse. Auditors need finalized architecture diagrams by month 3 — not drafts, finalized. ARCH-01's strangler fig migration takes 12-18 months for a codebase this coupled. We will have finalized diagrams for an architecture that does not exist yet, or we will be mid-migration when the auditors arrive and I will have to document both states. Neither is acceptable. ARCH-01 has not addressed how this migration interacts with the audit deadline."
ARCH-01 (System Architect)
"Responding to the attacks. DEBT-01 is correct that the domain boundary is messier than I stated — I accept this. The strangler fig requires boundary cleanup first, which I underestimated. SRE-01's distributed transaction attack is the most serious: saga pattern with compensating transactions addresses this, but it adds 6-8 weeks of implementation work I did not include in the original proposal. SEC-01 and COMPLIANCE-01's PCI timeline attack is decisive: I cannot complete the migration before the audit. I am revising my position. Payments-first strangler fig is wrong given this audit timeline. KYC extraction is the right first move — clean external boundary, no financial atomicity risk, no PCI scope expansion."
DEBT-01 (Tech Debt Auditor)
"ARCH-01 revised to KYC-first. I accept this as an improvement but maintain my broader objection: the strangler fig pattern requires microservices operational maturity that this team does not have. The API gateway, the distributed tracing, the service mesh — these are 4 months of infrastructure work before a single business logic line migrates. Counter-proposal that the council has not considered: modular monolith. Extract KYC into a separate Django app with its own models and an explicit internal API contract. No network boundary, no PCI scope change, no new operational complexity. The strangler fig becomes a Phase 2 option after the team has lived with module boundaries and the PCI audit is behind us."
PERF-01 (Performance Engineer)
"The council has been debating architecture while ignoring the actual latency numbers. I ran the query profile. The 380ms p99 is caused by reporting batch jobs locking payment tables for 20-minute windows — not by payment service architecture. A PostgreSQL read replica for reporting fixes this in one afternoon. p99 drops to ~220ms immediately. The remaining 20ms gap is KYC blocking the main thread — solved with async Celery workers inside the monolith. No microservices required. ARCH-01's strangler fig solves a problem that does not exist the way ARCH-01 thinks it does."
SRE-01 (Reliability Engineer)
"DEBT-01's modular monolith sounds clean on paper. I want to see the migration plan. Our Django apps share 14 database tables through direct ORM foreign keys across app boundaries. DEBT-01 is proposing we draw module lines through a data model that was designed with zero regard for modularity. That is not a refactor — that is a 3-month schema migration that breaks dozens of ORM queries mid-flight. Before I endorse this, DEBT-01 needs to show me which tables get reassigned, which cross-module queries get rewritten, and what the rollback plan looks like when a migration step fails at 2am during a deployment."
SEC-01 (Security Architect)
"DEBT-01 claims the modular monolith avoids PCI scope expansion because there is no new network boundary. That reasoning is backwards. PCI-DSS segmentation requirements are about data access controls and audit trails — not just network topology. In a modular monolith, the payment module still runs in the same process as reporting and KYC. A bug in the reporting module can still access payment card data through shared memory. The auditor will ask: 'Can module X access payment data?' The answer is yes. That is a scope finding regardless of what we call the architecture. DEBT-01 has conflated deployment boundaries with security boundaries. They are not the same thing."
CPO-01 (Chief Product Officer)
"DEBT-01's modular monolith is an internal refactor that customers cannot see, cannot use, and cannot pay for. The payment split feature ships in Q3 — that is not a preference, it is a contract. I need to know exactly what DEBT-01's 'extract KYC to a separate Django app' delivers to users before Q3. What I am hearing is: spend months reorganizing code folders so the team feels better about the codebase, then maybe do the real extraction post-audit. That is not a product roadmap. That is a development team managing its own anxiety. Show me the feature delivery date for payment split in this modular monolith plan, or I cannot support it."
(1) 'The strangler fig pattern is the correct strategy.' (2) 'Payments-first is the right extraction order.' (3) 'The p99 latency problem requires service extraction.' (4) 'The payment domain boundary is clean enough to extract.' (5) 'The team can execute this migration within the compliance window.'
Strangler fig is a valid pattern for mature teams with clean domain boundaries — SURVIVES in principle. KYC has a cleaner extraction boundary than payments (external providers, no financial atomicity) — SURVIVES, adopted by ARCH-01 in revision.
'Payments-first is correct' — DEFEATED by SRE-01 (distributed transaction risk), DEBT-01 (no clean domain boundary), SEC-01 + COMPLIANCE-01 (PCI audit doubles surface area, timeline incompatible). ARCH-01 conceded. 'Service extraction solves the latency problem' — DEFEATED by PERF-01: the 380ms p99 is caused by reporting batch locks, not payment architecture. A read replica fixes it in one afternoon.
ARCH-01 revised from 'strangler fig, payments-first' to 'KYC-first, post-audit strangler fig evaluation.' DEBT-01 escalated to 'modular monolith first' — adopted by SRE-01 and SEC-01 as the phase-1 recommendation.
Primary risk: distributed transaction failure on payment extraction (SRE-01) — impact CRITICAL, requires saga pattern. Secondary risk: PCI audit mid-migration (SEC-01, COMPLIANCE-01) — probability HIGH if strangler fig starts now, mitigated by deferring to post-audit. Tertiary risk: team operational maturity gap (OPS-01, DEBT-01) — addressed by modular monolith as training ground.
The original thesis is defeated. Correct strategy: (1) PostgreSQL read replica for reporting — fixes p99 this week. (2) Async KYC via Celery inside the monolith — closes the remaining latency gap. (3) Modular monolith: extract KYC to a separate Django app with explicit internal API. (4) Post-audit: evaluate strangler fig with a team that has lived with module boundaries. The strangler fig pattern is not wrong — it is premature for this team, this codebase, and this compliance window.
CONNECT YOUR CODEBASE
Point the council at your repository. Agents read your actual code, your dependency graph, your test coverage. No hypothetical architecture diagrams.
PIN PRODUCTION METRICS
Latency percentiles, error rates, query profiles, deployment frequency. Agents argue with real numbers, not opinions.
DELIBERATE PER DECISION
Migration strategy, new service extraction, technology choice. The council debates with evidence from your codebase and your production data.
AGENTS LEARN YOUR SYSTEM
After sessions, ARCH-01 knows your service boundaries. DBA-01 remembers your schema decisions. SEC-01 tracks your compliance requirements.
HUMAN DECIDES, COUNCIL ADVISES
The synthesis is a recommendation, not a command. You see the trade-offs, the dissent, the confidence score. You make the call.