oct
Loading...
Searching...
No Matches
__init__.py
Go to the documentation of this file.
1#!/usr/bin/env python3
2# -*- coding: utf-8 -*-
3# oct/scaffold/__init__.py
4
5"""
6Purpose
7-------
8The ``oct.scaffold`` subpackage: helpers that create a new Option
9C-compliant project tree. This file is the package's public face; the
10CLI entry point (:func:`oct.cli.scaffold`) is a thin dispatcher and the
11real work lives in :func:`oct.scaffold.oct_scaffold.run_scaffold`.
12
13Responsibilities
14----------------
15- Re-export the two names callers need: :class:`ScaffoldResult` (the
16 structured outcome) and :func:`run_scaffold` (the entry point).
17- Keep the import path stable, so a caller writes
18 ``from oct.scaffold import run_scaffold`` and is unaffected when the
19 implementation module is reorganised.
20
21Diagnostics
22-----------
23Domain: OCT-SCAFFOLD
24Levels:
25 L1 - errors: none raised here; run_scaffold owns failure reporting
26 L2 - lifecycle: none; this shell performs no work
27 L3 - semantic: none
28 L4 - deep tracing: the module load, so an import-order problem in the
29 scaffolder is visible in a trace
30
31Contracts
32---------
33- Re-export only. No logic, no IO, no click import.
34- Unlike :mod:`oct.migrate`, this package imports its implementation
35 EAGERLY, because both names are types/functions callers reference
36 directly rather than a lazily-built command group.
37- ``__all__`` is the supported surface; anything else reachable through
38 this module is an implementation detail.
39
40Dependencies
41------------
42- oct.scaffold.oct_scaffold (ScaffoldResult, run_scaffold)
43- oct.core.diagnostics (_dbg structured logger)
44"""
45
46from oct.core.diagnostics import _dbg
47from oct.scaffold.oct_scaffold import ScaffoldResult, run_scaffold
48
49_dbg("OCT-SCAFFOLD", "module", "loaded", 4)
50
51__all__ = ["ScaffoldResult", "run_scaffold"]