oct
Loading...
Searching...
No Matches
oct.scaffold Namespace Reference

Namespaces

namespace  oct_scaffold

Detailed Description

Purpose
-------
The ``oct.scaffold`` subpackage: helpers that create a new Option
C-compliant project tree. This file is the package's public face; the
CLI entry point (:func:`oct.cli.scaffold`) is a thin dispatcher and the
real work lives in :func:`oct.scaffold.oct_scaffold.run_scaffold`.

Responsibilities
----------------
- Re-export the two names callers need: :class:`ScaffoldResult` (the
  structured outcome) and :func:`run_scaffold` (the entry point).
- Keep the import path stable, so a caller writes
  ``from oct.scaffold import run_scaffold`` and is unaffected when the
  implementation module is reorganised.

Diagnostics
-----------
Domain: OCT-SCAFFOLD
Levels:
    L1 - errors: none raised here; run_scaffold owns failure reporting
    L2 - lifecycle: none; this shell performs no work
    L3 - semantic: none
    L4 - deep tracing: the module load, so an import-order problem in the
         scaffolder is visible in a trace

Contracts
---------
- Re-export only. No logic, no IO, no click import.
- Unlike :mod:`oct.migrate`, this package imports its implementation
  EAGERLY, because both names are types/functions callers reference
  directly rather than a lazily-built command group.
- ``__all__`` is the supported surface; anything else reachable through
  this module is an implementation detail.

Dependencies
------------
- oct.scaffold.oct_scaffold (ScaffoldResult, run_scaffold)
- oct.core.diagnostics (_dbg structured logger)