Jadpo is experimental and not ready for production. These docs follow the compiler's main branch as of 5 Nov 2026. What's built · Install 0.3.0
jadpo
ReferenceErrors

ErrorsConfiguration · rule

translation.file_missing

On this page

The app supports a locale, but a folder of messages has no language file for it.

Area 10, Configuration; not declinable; the next step is usually the agent's.

Why Jadpo refuses it

Each folder with messages has one language file per supported locale, such as fr_fr.jadpo for French. A call of a message in a locale with no file would have no words to show. Jadpo won't quietly show English instead, because a supported locale is meant to be complete.

A locale that isn't finished yet says so in in_progress:, and only such a locale falls back to the default where its wording is missing.

What it looks like

app.jadpo:

example
application {}locales {    default: Locale.en_gb    supported: [Locale.en_gb, Locale.fr_fr]}

The shipping domain words its one message in English, and has no French file.

domains/shipping/translations/en_gb.jadpo:

example
translations {    order_shipped: "Your order for {name} has shipped."}
jadpo checkcheck failed: 1 error, 3 files

error Locale.fr_fr is supported but has no language file for order_shipped

--> app.jadpo:5:31

  |5 |     supported: [Locale.en_gb, Locale.fr_fr]  |                               ^^^^^^^^^^^^ no `domains/shipping/translations/fr_fr.jadpo`
reason
Every supported locale has a language file for each folder that has messages, so a call with locale: Locale.fr_fr has wording to show. A locale that isn't finished yet is listed in in_progress:, and falls back to the default until it is.
next
Add domains/shipping/translations/fr_fr.jadpo with a translations { } that words order_shipped (agent)
rule
translation.file_missing
help
https://jadpo.dev/docs/errors/translation.file_missing

(agent) at the end of the next: line means your coding agent can make the fix itself.

How to fix it

If French is ready, add the French file, wording each message of the folder. domains/shipping/translations/fr_fr.jadpo:

example
translations {    order_shipped: "La commande de {name} a été expédiée."}

A call of order_shipped with locale: Locale.fr_fr now writes the French wording.

If French is still being translated, list it in in_progress: in app.jadpo:

example
    in_progress: [Locale.fr_fr]

A French call falls back to the English wording until the French file exists. Removing French from in_progress: makes the gap an error again.

Markdown for agents: /docs/errors/translation.file_missing.md.Built from Jadpo main at aee2e8f.