Command errors
These are the errors only a command raises, so jadpo check can't show
them with a source example; the command line's own are under
Command-line errors. Some rows belong to commands that other
commands replace (schema, artifacts, watch).
| Rule | Raised by | What it means |
|---|---|---|
acceptance.base_missing |
check, build, acceptance new |
Base commit the change is compared with isn't in this clone |
acceptance.edited |
check, build |
Acceptance already on the before side was edited |
acceptance.invalid |
check, build |
Acceptance file isn't written as an acceptance |
acceptance.missing |
check, build |
A change could break someone else or widen who can do what, and no acceptance this change adds says a person agreed to it |
acceptance.no_reason |
check, build |
An acceptance this change adds has no /// line above acceptance saying why a person accepted the changes it lists |
acceptance.unmatched |
check, build |
Acceptance lists a change this change doesn't make |
conform.failed |
package conform |
A package's answers to jadpo package conform don't fit the capability it fills, or the suite couldn't run |
conform.refused |
package conform |
The conformance suite wasn't sent to the provider's live API, because the app has no connection to the package, nothing sets the connection's credential or address, or ai: doesn't ask its models through it |
protocol.mismatch |
package protocol |
A registry's OpenAPI document differs from the registry protocol |
protocol.unreadable |
package protocol |
The document given to jadpo package protocol couldn't be read as OpenAPI's JSON |
recording.failed |
package record, ai record |
A recording by jadpo package record or jadpo ai record got no answer worth keeping from the sandbox or the model, or its call couldn't be made |
recording.refused |
package record, ai record |
A recording was refused before anything was sent, because its connection would call a live API or has nothing set for its sandbox, its package is installed, or there is nothing to ask its prompt with |
configuration.local_changed |
config |
Something else saved .env.local while jadpo config set was saving a value in it |
configuration.local_invalid_encoding |
config |
The .env.local file holds bytes that aren't UTF-8 text |
configuration.local_read_failed |
config |
The .env.local file is there, but it couldn't be read: it is a folder, or you aren't allowed to read it |
configuration.local_syntax |
config |
A line of .env.local isn't blank, a # comment or NAME=value, or it sets a variable a line above it already sets |
configuration.local_unsafe_target |
config |
The .env.local file that jadpo config set would save a value in is a link, not an ordinary file |
configuration.local_write_failed |
config |
Saving a value in .env.local failed, usually because the project's folder can't be written |
configuration.move_name_taken |
config move, the editor |
A constant jadpo config move was asked to make a setting has the name of a setting config { } already declares |
configuration.move_read_unsupported |
config move, the editor |
A constant jadpo config move was asked to make a setting is read where a setting can't be: in a query, an update by id, a backfill or another constant's value |
configuration.move_type_unsupported |
config move, the editor |
A constant jadpo config move was asked to make a setting has a type one environment variable can't hold, such as a list or an object |
configuration.value_invalid |
config, dev |
A setting's value on this machine, from the environment or .env.local, doesn't fit the type config.jadpo gives it |
configuration.value_missing |
config, dev |
A setting config.jadpo declares without a default: has no value on this machine, in the environment or .env.local |
email.browser_failed |
email open |
A jadpo email open command couldn't start the browser to open a mail's link |
format.changes_required |
fmt |
A file jadpo fmt --check read isn't laid out as jadpo fmt would write it |
format.unsafe |
fmt |
A file was left as it was, because what the formatter made of it didn't read back as the same code, which is a mistake in Jadpo's formatter |
format.write_failed |
fmt |
A file jadpo fmt formatted couldn't be written, usually because it is read-only |
index.accept_check_failed |
schema index-accept |
Index edit did not pass project checks |
index.accept_identity_count |
schema index-accept |
Index acceptance changed an unexpected number of schema identities |
index.accept_range_invalid |
schema index-accept |
Recommended index insertion point is no longer valid |
index.accept_registry_missing |
schema index-accept |
Schema identity registry is required before accepting an index |
index.accept_rollback_failed |
schema index-accept |
Failed index edit could not be rolled back |
index.accept_source_read_failed |
schema index-accept |
Source file for the recommended index could not be read |
index.accept_source_write_failed |
schema index-accept |
Recommended index could not be written to source |
index.recommendation_field_missing |
schema index-accept |
Recommended field no longer exists |
index.recommendation_unknown |
schema index-accept |
Index recommendation is not current |
install.fetch_failed |
package add, update |
Installing a package couldn't read its git repository, or found no release there at the tag you gave (Installing errors) |
install.in_use |
package remove |
Package to remove is still used by the app (Installing errors) |
install.link_refused |
check, test in CI |
Linked package in a CI or production build (Installing errors) |
install.surface_mismatch |
package add, update |
The package you are installing has code that offers something different from its committed surface.jadpo_record (Installing errors) |
lsp.content_length_missing |
lsp |
Language-server message has no Content-Length header |
lsp.json_invalid |
lsp |
Language-server message is not valid JSON |
lsp.json_write_failed |
lsp |
Language-server response could not be encoded |
lsp.read_failed |
lsp |
Language-server input could not be read |
lsp.root_missing |
lsp |
Language server has no workspace root |
lsp.write_failed |
lsp |
Language-server response could not be written |
migration.decision_artifact_exists |
schema |
Migration decision file already exists |
migration.decision_artifact_invalid |
schema |
Migration decision file is invalid |
migration.decision_artifact_read_failed |
schema |
Migration decision file could not be read |
migration.decision_artifact_write_failed |
schema |
Migration decision template could not be written |
migration.decision_change_set_stale |
schema |
Migration decisions refer to a different change set |
migration.decision_duplicate |
schema |
Schema change has more than one migration decision |
migration.decision_evidence_duplicate |
schema |
Migration decision repeats an evidence kind |
migration.decision_evidence_empty |
schema |
Migration decision contains empty evidence |
migration.decision_evidence_missing |
schema |
Migration decision is missing required evidence |
migration.decision_evidence_unexpected |
schema |
Migration decision contains unsupported evidence |
migration.decision_missing |
schema |
Schema change has no migration decision |
migration.decision_strategy_invalid |
schema |
Migration strategy is not valid for this change |
migration.decision_unexpected |
schema |
Decision file contains an unrelated schema change |
migration.decision_unresolved |
schema |
Migration decision still needs a strategy |
migration.identity_additions_have_removal |
schema |
Schema additions cannot be registered while identities are missing |
migration.identity_registry_exists |
schema |
Schema identity registry already exists |
migration.identity_registry_missing |
schema |
Schema identity registry is missing |
migration.identity_registry_read_failed |
schema |
Schema identity file could not be read |
migration.identity_registry_write_failed |
schema |
Schema identity registry could not be written |
migration.identity_rename_kind |
schema |
Schema rename kind is not supported |
migration.identity_rename_source_unknown |
schema |
Schema rename source identity does not exist |
migration.identity_rename_target_exists |
schema |
Schema rename target already has an identity |
migration.identity_rename_target_unknown |
schema |
Schema rename target is absent from checked source |
migration.identity_snapshot_exists |
schema |
Schema snapshot output already exists |
migration.identity_snapshot_invalid |
schema |
Schema snapshot is invalid |
migration.identity_snapshot_missing |
schema |
Previous schema snapshot is missing |
migration.identity_snapshot_not_canonical |
schema |
Previous schema snapshot is not canonical |
migration.identity_snapshot_shape_missing |
schema |
Snapshot entry is missing its saved definition |
migration.identity_snapshot_write_failed |
schema |
Schema snapshot could not be written |
migration.plan_adapter_invalid |
schema |
Migration adapter is not supported |
migration.plan_decision_rejects_change |
schema |
Reviewed decision rejects this schema change |
migration.plan_exists |
schema |
Migration plan output already exists |
migration.plan_write_failed |
schema |
Migration plan could not be written |
migration.sql_change_unsupported |
schema |
Schema change has no SQL review generator |
migration.sql_expression_unsupported |
schema |
Backfill expression cannot be compiled to SQL |
migration.sql_field_owner_missing |
schema |
Migration field has no resolvable owning table |
migration.sql_field_shape_invalid |
schema |
Saved field definition is incomplete |
migration.sql_literal_invalid |
schema |
Backfill literal is invalid for the field type |
migration.sql_predicate_unsupported |
schema |
Validation check cannot be compiled to SQL |
migration.sql_review_exists |
schema |
Migration SQL review output already exists |
migration.sql_review_write_failed |
schema |
Migration SQL review could not be written |
migration.sql_sqlite_constraint_missing |
schema |
SQLite rebuild cannot resolve a constraint identity |
migration.sql_sqlite_entity_missing |
schema |
SQLite rebuild cannot find the current entity |
migration.sql_sqlite_field_identity_missing |
schema |
SQLite rebuild cannot resolve a field identity |
migration.sql_sqlite_field_missing |
schema |
SQLite rebuild cannot find the current field |
migration.sql_sqlite_index_missing |
schema |
SQLite rebuild cannot resolve an index identity |
migration.sql_sqlite_rebuild_required |
schema |
SQLite change requires a table rebuild |
migration.sql_sqlite_rebuild_unsupported |
schema |
This combination of SQLite table changes is not supported |
migration.sql_sqlite_reference_missing |
schema |
SQLite rebuild cannot resolve a reference target |
migration.sql_sqlite_renamed_table_unsupported |
schema |
SQLite rebuild cannot target a logically renamed table |
migration.sql_strategy_unsupported |
schema |
Reviewed migration strategy has no SQL implementation |
migration.sql_type_unsupported |
schema |
Field type has no migration SQL mapping |
publish.behaviour_changed |
package check, package verify |
An example or test of a package's last release fails against its new version, and the change isn't marked a fix (Publishing errors) |
publish.breaking_change |
package check |
A package's new version changes or removes something its last release offered, within the same major version (Publishing errors) |
publish.changelog_missing |
package check |
Package's changelog doesn't say why its new version is released (Publishing errors) |
publish.description_missing |
package check |
Package's public declaration has no description (Publishing errors) |
publish.example_failed |
package check |
Example in a package's description doesn't compile or doesn't hold (Publishing errors) |
publish.example_missing |
package check |
Package's function has no example, or a failure it raises is shown by none (Publishing errors) |
publish.file_not_allowed |
package verify |
A commit holds a file a release can't: anything but Jadpo source and the package's text files (Publishing errors) |
publish.licence_proprietary |
package verify, package publish |
A package's licence is Licence.proprietary, which the public registry refuses (Publishing errors) |
publish.publisher_mismatch |
package verify, package publish |
A release names another publisher than the one asked to publish it (Publishing errors) |
publish.publisher_missing |
package verify, package publish |
A package's index names no publisher, and it has to for the registry (Publishing errors) |
publish.sample_missing |
package check |
Package's recipes have no sample app with one domain to compile in (Publishing errors) |
publish.stale_files |
package verify |
A commit's surface.jadpo_record or changelog list isn't what the package's code gives (Publishing errors) |
publish.too_large |
package verify |
A commit's release is past the size limit (Publishing errors) |
runtime.outcome_unknown |
the running app | Generated runtime could not confirm whether an effect committed |
runtime.startup_failed |
the running app | Generated runtime failed during startup; a deployable's log event, with every problem that stopped it (A native deployable) |
runtime.unhandled_fault |
the running app | Generated runtime contained an unexpected fault |
suggest.record_invalid |
suggest |
A suggestions record jadpo suggest reads, ignored_suggestions.jadpo_record or taught_suggestions.jadpo_record, isn't as Jadpo writes it |
suggest.share_failed |
suggest share |
Jadpo HQ couldn't be reached, or refused what jadpo suggest share sent, so the entries wait to be shared again |
test.failed |
test, package check |
A test failed under jadpo test, or among a package's own tests under jadpo package check |
test.no_tests |
test |
A jadpo test command found no test to run: the project has none, or none matches the path, line, name, kind or --failed it gives |
test.runtime_start_failed |
test |
The tests couldn't start, because the machine couldn't give jadpo test the thread with a large stack they run on, usually for lack of memory |
toolchain.artifact_cleanup_failed |
artifacts, build |
Previous build backup could not be removed |
toolchain.artifact_promote_failed |
artifacts, build |
Staged build artifacts could not be promoted |
toolchain.artifact_stage_failed |
artifacts, build |
Build staging directory could not be created |
toolchain.artifact_write_failed |
check, build |
A file Jadpo writes for you, such as a record, couldn't be written, usually because it or its folder is read-only |
toolchain.build_failed |
build |
The Rust jadpo build wrote for a deployable didn't compile, because the machine lacks something the build runs, such as a C compiler, or because of a mistake in Jadpo |
toolchain.fetch_failed |
build |
The Rust toolchain or the crates jadpo build compiles with couldn't be fetched, usually because the server they come from, or the mirror in its place, can't be reached |
toolchain.project_not_found |
any command | You ran a command that works on a project in a folder with no app.jadpo, in it or in any folder above it |
toolchain.project_read_failed |
any command | Project directory could not be read |
toolchain.scaffold_destination_exists |
new, package new |
You ran jadpo new or jadpo package new with the name of a file that already exists |
toolchain.scaffold_destination_not_empty |
new, package new |
You ran jadpo new or jadpo package new on a folder that already has files in it, hidden files included |
toolchain.scaffold_name_invalid |
new |
You ran jadpo new with a path that doesn't end in a folder's name, such as .. or / |
toolchain.scaffold_read_failed |
new, package new |
You ran jadpo new or jadpo package new on a path Jadpo can't look into, such as a folder you can't read or a path through a file |
toolchain.scaffold_write_failed |
new, package new |
You ran jadpo new or jadpo package new, and writing its files failed, usually because the folder they go in can't be written |
toolchain.source_read_failed |
any command | A .jadpo file in the project couldn't be read, because it isn't UTF-8 text or you aren't allowed to read it |
toolchain.target_auth_not_implemented |
build |
Protected route {route} cannot be generated yet |
toolchain.target_durable_workflow_not_implemented |
build |
Durable workflow target execution is not implemented |
toolchain.target_job_not_implemented |
build |
Scheduled job {name} cannot execute yet |
toolchain.target_liveness_not_local |
build |
Authored liveness route is not dependency-free |
toolchain.target_store_not_implemented |
build |
Authority store target adapter is not implemented |
translation.exchange_file_invalid |
translations export, translations import |
A file given to jadpo translations import isn't XLIFF 2.x or JSON in the shape export writes, or can't be read as one |
translation.exchange_unit_unknown |
translations import |
A file given to jadpo translations import holds a unit of wording the project doesn't have |
Three errors can't be reached at all: type.job_delivery_selector_invalid
(Delivery selector does not match its entity types),
type.job_delivery_service_invalid (Delivery service does not match its
closed payload types) and type.job_delivery_sealed_use (Compiler-owned
delivery value cannot be authored or exposed). They belong to a job
delivery descriptor, which the language doesn't have.
Markdown for agents: /docs/command-errors.md.Built from Jadpo main at aee2e8f.