vibe.probe_logic¶
Core Template Probing Logic (Framework-Independent).
Runtime type checking is enabled to ensure probing operations maintain correct types throughout the probe cycle.
NOTE: This module uses Any types extensively in TrackingUndefined and related
probing classes because they must wrap and proxy arbitrary Jinja2 values during
template execution. The ANN401 noqa comments indicate intentional dynamic typing
for Jinja2 interoperability, not missing type safety.
ProbeResult ¶
Result of a template probe operation.
TrackingUndefined ¶
Configurable Undefined that either raises ProbeMissingPathError (strict mode).
or returns placeholders (probe mode) while recording detailed access metadata.
__call__ ¶
__call__(*args: object, **kwargs: object) -> object
Proxy call to underlying value if callable, else raise TypeError.
ProbeOrchestrator ¶
Stateful helper that owns the probing workflow end-to-end.
PlaceholderManager ¶
Manage placeholder creation and lookup during probing.
ensure ¶
ensure(path: str) -> object
Return cached value or resolve and cache a new placeholder for path.
run ¶
run() -> ProbeResult
Execute template probing to discover needed variables and their ordering.
run_probe ¶
run_probe(current_state: NestedValue, template: TemplateData, access_tracker: Callable[[str], None], question_definitions: dict[str, Any] | None = None, host_questions: dict[str, Any] | None = None, session_data: dict[str, Any] | None = None) -> ProbeResult
Orchestrate a probe run using the ProbeOrchestrator helper.