Skip to main content

Module doctor

Module doctor 

Source
Expand description

doctor: the check model and the host and repository checks (SP5c design §4, §5.1, §5.2, §6).

Every check is read-only. A check that cannot run because one it depends on failed emits exactly one skip record naming that check (design §4).

Structs§

Check
One check record.
Environment
What a run reads from the process.
Host 🔒
What the host checks established, for the checks that depend on them.
Report
The ordered records of a run, and the facts the JSON envelope needs.

Enums§

Blocker 🔒
Why creating a missing path would fail below an existing ancestor.
CheckId
The closed set of check identifiers (design §5).
ProfilesDir 🔒
What the profiles_dir check established for the checks that depend on it.
Status
The outcome of one check (design §4).
Target
What to examine.

Functions§

agent_check 🔒
A per-agent record.
agent_skip 🔒
app_root 🔒
Pushes the app_root record and says whether the root can be used.
app_root_writable 🔒
blocked_ancestor 🔒
The entry that stops a launch creating the missing path: a dangling symbolic link between path and its nearest existing ancestor, or that ancestor when it is not a directory. Nothing else blocks here.
case_twins 🔒
One fail per pair of profiles/ entries whose UTF-8 names differ only in ASCII case.
check 🔒
config_checks 🔒
Pushes config, config_agent and returns the configuration when it loaded.
default_profile 🔒
executable_checks 🔒
Pushes executable, then repository_local_executable when found (design §5.3).
executable_record 🔒
file_mode 🔒
The octal permission bits on Unix, null elsewhere.
host_checks 🔒
launch_environment 🔒
The single launch_environment record: how the profile is passed, never a value read from the environment.
mapping_checks 🔒
mapping_dependency 🔒
The failed check that makes mapping and mapping_agent skip.
missing_path 🔒
What a launch would meet creating path, which does not exist.
nearest_existing 🔒
The nearest ancestor of path (or path itself) that exists, following symbolic links. A dangling link, a missing entry and an entry below a non-directory all count as not existing; any other error stops the walk at the path that raised it.
option_checks 🔒
Pushes conflicting_option, ambient_credential and capability records.
profile_checks 🔒
Pushes profile, profile_path and launch_environment, or one skip each.
profile_path_record 🔒
profile_record 🔒
profiles_dir 🔒
Pushes the profiles_dir record.
repository_checks 🔒
Pushes the repository checks and returns the discovery, or None when it failed.
resolution_check 🔒
Pushes resolution and returns the profile it settled on.
run
Runs every check in scope, in the contract’s order: host checks, then repository checks.
shown 🔒
skip 🔒
support_check 🔒
The support record: the evidence, never a probe of the installed agent.
unreadable_profile 🔒
The first profile directory, in byte order of its name, that list_profiles would descend into and whose read_dir fails.