cadrumo.entrypoints.tui.modelo.view.results module

The modelo.workspace.results read destination.

Shows the CURRENT session’s computed casillas – the values a formula produced, as distinct from the values an operator supplied, which are the inputs destination’s subject.

That distinction is admission-scoped, and this destination refuses rather than pretends when it cannot make it. The materialization facet (ModeloWorkspaceScalarMaterializationV1) carries only casilla_id, value and provenance – nothing on it says whether a casilla was computed. The distinction lives on ModeloWorkReviewCasilla via concrete_formula, in a facet a STATIC_INSPECTION does not carry. So under that admission this destination cannot separate results from inputs at all, and rendering the whole facet under a “results” heading would assert a partition it did not make.

It therefore refuses with an explicit not-applicable state under static inspection, rather than showing the same content the inputs destination shows at a different address. Two addresses displaying identical content teach an operator to distrust the addresses.

Each row shows the casilla and its value; the formula that produced it is a raw identifier and sits in a collapsed technical-details group.

Historical revisions are out of scope and unreachable, not merely unbuilt: resolve_graded_snapshot_result materializes work_unit.current_calculation_revision_id and accepts no selector for another, so a Workspace admission can only ever describe the current calculation. ModeloRevisionPick exists as a type but no resolve path consumes it.

class ModeloWorkspaceResultsScreen(session, *, id=None)[source]

Bases: TypedAppAccess, AccountChromeScreen

Computed values for the current session, or an explicit not-applicable.

Parameters:
BINDINGS: ClassVar

A list of key bindings.

compose()[source]

Called by Textual to create child widgets.

This method is called when a widget is mounted or by setting recompose=True when calling [refresh()][textual.widget.Widget.refresh].

Note that you don’t typically need to explicitly call this method.

Return type:

Iterable[Widget]

Example

def compose(self) -> ComposeResult:
    yield Header()
    yield Label("Press the button below:")
    yield Button()
    yield Footer()
on_mount()[source]

Refuse when the admission cannot partition, otherwise render the results.

Return type:

None

action_quit_results()[source]

Leave the destination without returning a value; this screen decides nothing.

Return type:

None

action_toggle_appearance()[source]

Switch between the two shipped appearances.

Return type:

None

can_focus: bool

Widget may receive focus.

can_focus_children: bool

Widget’s children may receive focus.