Skip to main content
Miscs is a transition menu, not a promise that every listed module is a stable app-facing API.
Use this page when you are reading HeavenBase internals and need to recognize a helper. For new application code, prefer the focused pages in this section and the feature docs.

1. Core Idea

Some utility exports are genuinely small public conveniences. Others are system support that currently lives under heavenbase.utils only because the pre-release migration is still being cleaned up. The likely direction is to keep broad utility helpers such as typing bridges, coercion, list flattening, ID validation, and config parsing, while moving system-specific helpers such as operation tokens, registry identity, and backend naming out of the general utility surface. That means this page is intentionally a menu, not a tutorial for every small module. If a helper is system-facing, recognize it while reading the codebase, but do not treat it as a long-term public utility.

2. Support Helper Menu

NeedModuleStatus
Typing and dataclass bridgeheavenbase.utils.typingMigration bridge
One-level list flatteningheavenbase.utils.containersSmall public helper
Small value coercionheavenbase.utils.coerceSmall public helper
Public ID validationheavenbase.utils.idsUseful public support
Config CLI parsing and operationsheavenbase.utils.config_apiCLI/support helper
Config engine specsheavenbase.utils.specSupport helper
Backend-safe namesheavenbase.utils.ids, heavenbase.utils.namingSystem-facing, avoid new app dependencies
Operation tokensheavenbase.utils.opsSystem-facing, expected to move
Registry key resolutionheavenbase.utils.registry_identitySystem-facing, expected to move
Database URL tokensheavenbase.utils.db_pathSystem-facing support
Current heavenbase.utils.typing is a migration bridge for common imports. It intentionally does not provide legacy autotype, jsonschema_type, or parse_func_sig.

3. Public Convenience Examples

Use stable convenience helpers when they keep demos clear:
from heavenbase.utils import check_entity_id, coerce_list, lflat

entity_id = check_entity_id("person-001")
tags = coerce_list("demo")
flat = lflat([[1, 2], [3]])
Avoid building new app-level APIs on system-facing modules such as ops, naming, or registry_identity. Those names are useful while reading HeavenBase internals, but they are not the conceptual utility surface.

Further Exploration

Related resources:
  • Overview - the guided entry point for this section.
  • Development - command, parallel, debug, proxy, logging, and color helpers.
  • Catalog - public naming and object discovery.