Jadpo is experimental and not ready for production. These docs follow the compiler's main branch as of 30 Oct 2026. What's built · Install 0.1.0
jadpo
Reference: Logic

Logic · rule

failure.attempt_infallible

Attempt is used on something that cannot fail.

Area 3, Logic; not declinable; the next step is usually the agent's.

example
type Count = Int {}function plain(n: Count) -> Count {    return n}function wrapper(n: Count) -> Count {    return attempt plain(n)}
text
error: `plain(...)` can't fail, so it takes no `attempt` --> main.jadpo:8:12  |8 |     return attempt plain(n)  |            ^^^^^^^ nothing to pass on  reason: `plain(...)` lists no failures after `fails`, so it always gives its result; `attempt` marks only calls that can fail.  next: Remove `attempt` (agent)  rule: failure.attempt_infallible  help: https://jadpo.dev/docs/errors/failure.attempt_infalliblecheck failed: 1 error, 1 file

The outcome-match examples below share a hidden file declaring lookup(key: LookupKey) fails LookupMissing, LookupRefused -> LookupResult.

Markdown for agents: /docs/errors/failure.attempt_infallible.md.Built from Jadpo main at a707efb.