Search
Start AI Tools with Intent Solutions
The implementation journal of Intent Solutions. Follow the work of turning AI capability into reliable production systems: the builds, evaluations, failures, and operating lessons your team can use for itself.
Curated long reads
Let the Model Judge. Make the Code Decide.
The model owns judgment. Deterministic code owns the gates, the commit, and the audit trail. How I rebuilt a daily writing pipeline so a hung session can no longer brick tomorrow.
Adversarial Review: The Six Lenses That Halted a Rollout
Six lenses, live state, eighteen risks. I thought the safety work was shipped. The review proved three assumptions were theater. The durable rule: the model proposes; the system owns identity, trust, and state.
The Moat Is the Trust Layer
A local-RAG demo became Intent NEXUS. The moat is not the chatbot. It is egress control, code-enforced citations, a ledger you can check, injection defense, and evals that cannot lie quietly to you.
Recent posts
Erasure Requests: Model Provider Cleanup From Reservations
Derive a model provider cleanup set from reservations and confirmed calls. An erasure request that skips a reserved call may leave personal data at the vendor.
ReadRate Limit a Django Signup Form Without Refusing Anyone
Rate-limit a Django signup form by deferring verification emails instead of refusing applicants. Submissions are stored; the mail waits for an open hour.
ReadDependabot Groups for Up-to-Date Branch Protection
Dependabot groups turn one PR per dependency into one per ecosystem. Why up-to-date branch protection makes single PRs a serial rebase queue.
ReadReferrer-Policy same-origin: Django CSRF 403 Origin null
Referrer-Policy no-referrer makes browsers send Origin: null on same-site form posts, so Django CSRF returns 403. Use same-origin and drop Referer from logs.
ReadDiscord Webhook 204 No Content: Confirm with ?wait=true
Add ?wait=true to a Discord webhook POST to get the created message ID back. Mark an RSS item seen only when every copy is confirmed.
Readgo tool cover -func: Join Coverage by Function, Not by File
Join go tool cover -func output to complexity by file, line and function. Keyed by file, each function inherits the last one's coverage and can pass CRAP.
ReadA Database Restore Does Not Undo Sent Email or Envelopes
An AST-scanned registry makes a restore effect journal's coverage testable. Building it exposed a path that would mail a signer a second contract.
ReadSeries & curriculum
MCP for Beginners
End-to-end Model Context Protocol curriculum — solutions in Python, TypeScript, Java, Rust, C#, .NET — translated across six languages.
Agentic Design Patterns
Patterns and anti-patterns for production agent systems. Decision frameworks, prompt scaffolds, evaluation harnesses.
Tiny Recursive Models
Building small recursive systems where simple loops compose into emergent behavior. Series in progress.
Research & Curriculum
Long-form research articles, learning paths, and reading lists for the AI builder community.
Retrospectives
A Gate That Refuses Correctly Still Needs Someone Listening: October 2026
Pair every safety gate with a status that names its cause, so a correct refusal gets acted on. October 2026: nine refused runs reported as integrity errors, and a new tier escalator.
August 2026August 2026: A Control That Fires on Every Case and Changes No Outcome Is a Log Line
A control that fires on every case and changes no outcome is a log line, not a control. August 2026 retrospective: 31 of 31 posts flagged for inflation with the distribution unmoved, a learned cap rule that caught zero, and a rubric six weeks stale that still names a retired rule.
Let's build something that ships to production
Intent Solutions is an applied AI engineering company. We build with your team, test against your actual work, and transfer the knowledge needed to operate and evolve the system. This journal shares the methods and lessons that can be made public.
No commitment required. We respond within 24 hours.