Load, merge (global→sdk→doc), and return (merged_config, config_dir, sidebar_config).
[groups] and [[sidebar]] are deliberately NOT part of this JSON cascade: they are
sourced exclusively from the document’s own sidebar.toml, with no default and no
merge across tiers. Any groups/sidebar key found in the global, SDK, or doc
JSON config is a hard error (see _reject_forbidden_sidebar_keys()).
Implements GAP-05 (TASK-B.1.2)
Raises:
UdeException: If config file cannot be read, or a groups/sidebar key
is found in a JSON config layer.
Returns:
A 3-tuple of (merged config dict, the doc config’s parent directory,
Methods
resolve_config
resolve_config(config_file_path: Path, global_cfg: GlobalConfig, global_config_path: Optional, sdk_config_path: Optional) -> tuple[dict, Path, dict]
Load, merge (global→sdk→doc), and return (merged_config, config_dir, sidebar_config).
[groups] and [[sidebar]] are deliberately NOT part of this JSON cascade: they are
sourced exclusively from the document’s own sidebar.toml, with no default and no
merge across tiers. Any groups/sidebar key found in the global, SDK, or doc
JSON config is a hard error (see _reject_forbidden_sidebar_keys()).
Implements GAP-05 (TASK-B.1.2)
Raises:
UdeException: If config file cannot be read, or a groups/sidebar key
is found in a JSON config layer.
Returns:
A 3-tuple of (merged config dict, the doc config’s parent directory,
| Parameter | Type | Description |
|---|---|---|
| config_file_path | Path | Path to the target’s doc config JSON file. |
| global_cfg | "GlobalConfig" | The already-loaded (but not yet target-specific) GlobalConfig. |
| global_config_path | Optional | Explicit global config path, if one was supplied. |
| sdk_config_path | Optional | Explicit SDK/product config path, if one was supplied. |
Generated with Flude
Copyright © 2026