Platform built for
agentic-first developers

The organization your agents have been missing.

Why we built YATFA

YATFA is working even when you are away

You decide how far it goes before it waits for you.

23:00You log off. The night shift starts.
23:0001:0003:0005:0007:00
acme.yatfa.com/activity
Acme/Activity
Tonight
What YATFA found and moved while you were away.

Small, safe work — tests, docs, small fixes — is approved by an agent at every setting. Operational changes always wait for a person.

It maintains knowledge autonomously

Your agents write memories during work — YATFA consolidates them into versioned articles.

acme.yatfa.com/knowledge
Knowledge / This week
During the work
Written during a ticket

The provisioning job’s docblock promised a retry — the class had none.

→ folded into Background-Job Retry Integrity
Written during a QA pass

The “retry works” proof ran through a path that bypasses the retry machinery.

→ folded into Background-Job Retry Integrity
Around the work
Written during a review

A Cloudflare 403 from a write tool is transient — a byte-identical retry succeeded.

→ started a new article
Article · Background jobs

Background-Job Retry Integrity: the Promise, the Arm, and the Proof

v6 current6 versionsupdated Sep 22, 2026
When a background job fails, will it actually retry — and how do you prove it?
Grep the job class for retry_on whenever prose promises a retry — the machinery lives in class configuration, and the prose may live nowhere.+ added from a ticket · Sep 22, 2026
Prove a retry with perform_now and the test adapter’s enqueue count — subject.perform bypasses rescue handlers entirely.+ added from a QA pass · Sep 22, 2026
New article · started from one finding
Cloudflare 403 is transient — retry once

It arrived with “do not retry” in the payload — and an identical immediate retry succeeded.

Knowledge / Background jobs / Background-Job Retry Integrity
Article · Background jobs

Background-Job Retry Integrity: the Promise, the Arm, and the Proof

v8 current8 versions
Arm the aggregate error — the only arm that can fire past a rescue-record-re-raise conversion.
The final three are filed and unclaimed — retry_on count zero. Watch it.
Outdated — contradicted by the state on main
Also checked in this pass  ✓ the aggregate-arm rule — still accurate  ✓ the token-exchange escape hole — still accurate
Versions
v8Arm the aggregate error, not the base classSep 22, 2026
v7Grep for retry_on when prose promises a retrySep 22, 2026
v6The end-to-end retry QA methodSep 22, 2026
v1Founded from six same-day capturesSep 22, 2026

Documentation describes what the code does. These articles hold what the code can’t tell you.

Visual drafts show you the interface instead of describing it

Describe the screen you want. YATFA renders a few genuinely different directions from your running product. You pick one — and the pick is what gets built.

1
Your brief“People scroll past a chart to find three numbers. Make the numbers the first thing they see.”Already settled: keep the navigation · use the app’s own components
Your screen today
2Three directions, each made from your running app — compare them
3 Direction 1 of 3

Numbers first

Picked
Ticket
Code
Review & QA
Ready

The build runs on the render you pick. A direction you reject with a reason is never tried again.

A roadmap is a direction here — tickets are cut at execution time, not before

You describe what you want to see. YATFA turns your direction into proposals and tickets, cut slice by slice from the codebase as it stands.

acme.yatfa.com/roadmaps/reports
main
Direction · written by you
Reports — one surface that explains what was delivered

Reading main as it stands
  • shift_reports_controller.rb
  • time_window.rb — the resolver the sibling pages use
  • reports/index — today: “this calendar month” only
Slice 1Proposal
Give the reports page any date window

Presets plus a custom from/to — through the resolver the sibling pages already use.

CodeReviewQAMerged
slice 1 merged
Slice 2Proposal · next
Move the delivery chart off the dashboard

Cut now — from code that already has the window control.

cut from here
Paused — nothing left to derive

Every slice this direction named has landed. What remains is a reading for you, not code.

CompleteResumeRewrite

From the blog

“Your agents are already writing code.The organization around them is one setup away

Get Yatfa for free
See everything it does →