Pillar

Workflow Architecture

Designing the loops work happens inside — instruction design, migrations, test-driven cycles and the gates that keep a codebase coherent over time.

01

Test-Driven Loops: Giving an Agent a Definition of Done

Why TDD fits agent workflows, who should own each step of the cycle, the instruction that makes it runnable, and why test speed is the binding constraint.

02

Generating Schema Migrations: The One Loop That Ends With a Human

Why migrations are the asymmetric case, the inputs an agent must have rather than infer, expand–contract as a stated rule, locking requirements, and testing against restored production volume.

03

CI Gating for Agent-Generated Pull Requests

Why agents pass the traditional gate more easily than humans, seven checks worth adding, diff coverage over total coverage, and why model-graded review should never be the gate.

04

REST to GraphQL: Design the Schema Yourself, Delegate the Resolvers

Why an agent-generated GraphQL schema ends up shaped like your endpoint list, the N+1 pattern it will write by default, and the field-level auth check the migration tends to lose.

05

Structural Refactoring: Have the Agent Write the Transformation, Not the Edits

Why a tree-sitter query plus a deterministic apply script beats an agent editing four hundred files, the four-stage workflow, and the syntactic limits to verify around.

06

Fine-Tuning for an Internal DSL: The Case Is Narrower Than It Looks

Why in-context examples usually beat a fine-tune for proprietary syntax, how to categorise the failures you actually have, and the baseline comparison teams skip.

07

Preventing Architectural Drift in a Codebase Agents Contribute To

Why higher change volume accelerates drift, the five forms it takes, making canonical utilities findable, and a quarterly structural snapshot that catches what rules miss.

08

Designing Migration Instructions: Modernising Without Changing Behaviour

Why framework migrations go wrong with agents, splitting mechanical from semantic work, the instructions that preserve behaviour, and batching so review stays possible.

09

Measuring AI Impact: Ask the Questions That Have Answers

Why 'are agents worth it' is not empirically tractable, the narrow comparisons that are, reusing delivery metrics that predate the tooling, and the three ways this measurement goes wrong.

10

Finding Technical Debt: Parse for Candidates, Then Judge Them

Combining AST metrics with git churn to rank debt, using a model to rule out essential complexity, correlating with modules that actually produce bugs, and writing a register people act on.

11

Java to Kotlin: The Converter Does Syntax, the Agent Does Semantics

Why mechanical conversion produces Kotlin that reads like Java, recovering nullability intent from database constraints and call sites, the staged sequence, and where JVM interop bites.

12

Layering Agent Instructions: Personal, Project and Path-Scoped Rules

Three instruction channels teams routinely confuse, a test for which layer an instruction belongs in, and why explicit prohibitions outperform stated preferences.

13

A DSL Fine-Tuning Pipeline: Validator First, Training Script Second

The QLoRA pipeline for a proprietary DSL once you have established the case: compiler-backed dataset validation, AST mutation for expansion, error-correction pairs, and evaluating on parse rate rather than loss.

Other pillars