Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,8 @@ def sync_detailed(

Create a taxonomy block atomically: one envelope carrying the taxonomy row plus its structures,
elements, associations, and rules. Dispatches by `taxonomy_type` — `chart_of_accounts` (declarative
tenant CoA) is live; `reporting_extension` / `custom_ontology` / `reporting_standard` land in later
sub-phases.
tenant CoA) is supported; `reporting_extension` / `custom_ontology` / `reporting_standard` are not
yet implemented.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down Expand Up @@ -168,8 +168,8 @@ def sync(

Create a taxonomy block atomically: one envelope carrying the taxonomy row plus its structures,
elements, associations, and rules. Dispatches by `taxonomy_type` — `chart_of_accounts` (declarative
tenant CoA) is live; `reporting_extension` / `custom_ontology` / `reporting_standard` land in later
sub-phases.
tenant CoA) is supported; `reporting_extension` / `custom_ontology` / `reporting_standard` are not
yet implemented.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down Expand Up @@ -216,8 +216,8 @@ async def asyncio_detailed(

Create a taxonomy block atomically: one envelope carrying the taxonomy row plus its structures,
elements, associations, and rules. Dispatches by `taxonomy_type` — `chart_of_accounts` (declarative
tenant CoA) is live; `reporting_extension` / `custom_ontology` / `reporting_standard` land in later
sub-phases.
tenant CoA) is supported; `reporting_extension` / `custom_ontology` / `reporting_standard` are not
yet implemented.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down Expand Up @@ -267,8 +267,8 @@ async def asyncio(

Create a taxonomy block atomically: one envelope carrying the taxonomy row plus its structures,
elements, associations, and rules. Dispatches by `taxonomy_type` — `chart_of_accounts` (declarative
tenant CoA) is live; `reporting_extension` / `custom_ontology` / `reporting_standard` land in later
sub-phases.
tenant CoA) is supported; `reporting_extension` / `custom_ontology` / `reporting_standard` are not
yet implemented.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,8 @@ def sync_detailed(

Runs every rule targeting the given structure (plus element- and association-scoped rules for the
structure's atoms), binds $Variable references to in-scope facts via qname lookup, writes one
VerificationResult row per rule, and returns the results plus a status-keyed summary. Phase delta.3
— decoding mode, 5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).
VerificationResult row per rule, and returns the results plus a status-keyed summary. Decoding mode,
5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down Expand Up @@ -167,8 +167,8 @@ def sync(

Runs every rule targeting the given structure (plus element- and association-scoped rules for the
structure's atoms), binds $Variable references to in-scope facts via qname lookup, writes one
VerificationResult row per rule, and returns the results plus a status-keyed summary. Phase delta.3
— decoding mode, 5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).
VerificationResult row per rule, and returns the results plus a status-keyed summary. Decoding mode,
5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down Expand Up @@ -214,8 +214,8 @@ async def asyncio_detailed(

Runs every rule targeting the given structure (plus element- and association-scoped rules for the
structure's atoms), binds $Variable references to in-scope facts via qname lookup, writes one
VerificationResult row per rule, and returns the results plus a status-keyed summary. Phase delta.3
— decoding mode, 5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).
VerificationResult row per rule, and returns the results plus a status-keyed summary. Decoding mode,
5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down Expand Up @@ -264,8 +264,8 @@ async def asyncio(

Runs every rule targeting the given structure (plus element- and association-scoped rules for the
structure's atoms), binds $Variable references to in-scope facts via qname lookup, writes one
VerificationResult row per rule, and returns the results plus a status-keyed summary. Phase delta.3
— decoding mode, 5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).
VerificationResult row per rule, and returns the results plus a status-keyed summary. Decoding mode,
5 patterns (EqualTo, RollUp, RollForward, Exists, CoExists).

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,18 +111,17 @@ def sync_detailed(
) -> Response[ErrorResponse | OperationEnvelope]:
"""Change Reporting Style

Switches the graph's Reporting Style (Phase 2 of §3.2). Synchronous: validates the target Style has
a complete composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports
are unaffected; new reports use the new Style. Idempotent on the same id.
Switches the graph's Reporting Style. Synchronous: validates the target Style has a complete
composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports are
unaffected; new reports use the new Style. Idempotent on the same id.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

Args:
graph_id (str):
idempotency_key (None | str | Unset):
body (ChangeReportingStyleOp): Body for the change-reporting-style operation (Phase 2 of
§3.2).
body (ChangeReportingStyleOp): Body for the change-reporting-style operation.

Switches the graph to a different Reporting Style. The target Style
must be a library- or customer-authored Structure with
Expand Down Expand Up @@ -162,18 +161,17 @@ def sync(
) -> ErrorResponse | OperationEnvelope | None:
"""Change Reporting Style

Switches the graph's Reporting Style (Phase 2 of §3.2). Synchronous: validates the target Style has
a complete composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports
are unaffected; new reports use the new Style. Idempotent on the same id.
Switches the graph's Reporting Style. Synchronous: validates the target Style has a complete
composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports are
unaffected; new reports use the new Style. Idempotent on the same id.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

Args:
graph_id (str):
idempotency_key (None | str | Unset):
body (ChangeReportingStyleOp): Body for the change-reporting-style operation (Phase 2 of
§3.2).
body (ChangeReportingStyleOp): Body for the change-reporting-style operation.

Switches the graph to a different Reporting Style. The target Style
must be a library- or customer-authored Structure with
Expand Down Expand Up @@ -208,18 +206,17 @@ async def asyncio_detailed(
) -> Response[ErrorResponse | OperationEnvelope]:
"""Change Reporting Style

Switches the graph's Reporting Style (Phase 2 of §3.2). Synchronous: validates the target Style has
a complete composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports
are unaffected; new reports use the new Style. Idempotent on the same id.
Switches the graph's Reporting Style. Synchronous: validates the target Style has a complete
composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports are
unaffected; new reports use the new Style. Idempotent on the same id.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

Args:
graph_id (str):
idempotency_key (None | str | Unset):
body (ChangeReportingStyleOp): Body for the change-reporting-style operation (Phase 2 of
§3.2).
body (ChangeReportingStyleOp): Body for the change-reporting-style operation.

Switches the graph to a different Reporting Style. The target Style
must be a library- or customer-authored Structure with
Expand Down Expand Up @@ -257,18 +254,17 @@ async def asyncio(
) -> ErrorResponse | OperationEnvelope | None:
"""Change Reporting Style

Switches the graph's Reporting Style (Phase 2 of §3.2). Synchronous: validates the target Style has
a complete composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports
are unaffected; new reports use the new Style. Idempotent on the same id.
Switches the graph's Reporting Style. Synchronous: validates the target Style has a complete
composition in the tenant schema, then updates `graphs.reporting_style_id`. Filed Reports are
unaffected; new reports use the new Style. Idempotent on the same id.

**Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours
return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

Args:
graph_id (str):
idempotency_key (None | str | Unset):
body (ChangeReportingStyleOp): Body for the change-reporting-style operation (Phase 2 of
§3.2).
body (ChangeReportingStyleOp): Body for the change-reporting-style operation.

Switches the graph to a different Reporting Style. The target Style
must be a library- or customer-authored Structure with
Expand Down
2 changes: 1 addition & 1 deletion robosystems_client/models/change_reporting_style_op.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

@_attrs_define
class ChangeReportingStyleOp:
"""Body for the change-reporting-style operation (Phase 2 of §3.2).
"""Body for the change-reporting-style operation.

Switches the graph to a different Reporting Style. The target Style
must be a library- or customer-authored Structure with
Expand Down
2 changes: 1 addition & 1 deletion robosystems_client/models/close_period_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ class ClosePeriodResponse:
False.
rule_summary (ClosePeriodResponseRuleSummaryType0 | None | Unset): Aggregated rule-eval outcome across every
schedule Structure with facts in the closed period — keys: pass/fail/error/skipped. None when no schedules had
facts in the period (§3.8 auto-run on close).
facts in the period (auto-run on close).
evaluated_structure_ids (list[str] | Unset): ids of schedule Structures whose rules were evaluated during the
close. Pairs with rule_summary.
"""
Expand Down
2 changes: 1 addition & 1 deletion robosystems_client/models/list_subgraphs_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ class ListSubgraphsResponse:
parent_graph_id (str): Parent graph identifier
parent_graph_name (str): Parent graph name
parent_graph_tier (str): Parent graph tier
subgraphs_enabled (bool): Whether subgraphs are enabled for this tier (requires LadybugDB Large/XLarge)
subgraphs_enabled (bool): Whether subgraphs are enabled for this tier (requires Large/XLarge tier)
subgraph_count (int): Total number of subgraphs
subgraphs (list[SubgraphSummary]): List of subgraphs
max_subgraphs (int | None | Unset): Maximum allowed subgraphs for this tier (None = unlimited)
Expand Down
23 changes: 11 additions & 12 deletions robosystems_client/models/rollforward_mechanics.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,29 +22,28 @@
class RollforwardMechanics:
"""Filter-based attribution mechanics for ``block_type='rollforward'``.

Implements Tier 2 of the rollforward attribution design
(``information-block.md`` §4.5). Each block decomposes one BS
source element's period delta into a list of flow concepts via
declared :class:`AttributionFilter` predicates. The renderer
evaluates the filters against ledger LineItems at envelope-build
time, emits one attributed fact per filter per period, and arbitrates
any residual against the default change tag (Tier 1 fallback).
Filter-based attribution: each block decomposes one BS source
element's period delta into a list of flow concepts via declared
:class:`AttributionFilter` predicates. The renderer evaluates the
filters against ledger LineItems at envelope-build time, emits one
attributed fact per filter per period, and arbitrates any residual
against the default change tag fallback.

Reads directly from the typed ``structures.artifact_mechanics`` JSONB
column. ``attribution_filters`` rides as nested JSON; the predicate
union widens as new predicate shapes ship (Phase 2 MVP carries only
``line_item_metadata_field``).
union widens as new predicate shapes are added — currently only
``line_item_metadata_field`` is carried.

Attributes:
bs_source_element_id (str): Element id of the balance-sheet source whose period delta this block decomposes.
Resolved from ``bs_source_qname`` at create time.
bs_source_qname (str): QName of the BS source element (e.g. ``mini:CashAndCashEquivalents``). Round-tripped for
caller convenience; ``bs_source_element_id`` is authoritative.
kind (Literal['rollforward'] | Unset): Default: 'rollforward'.
default_change_tag_element_id (None | str | Unset): Element id of the Tier 1 default change tag — the fallback
flow concept that receives any residual (Δ BS − Σ filter matches). Null when no default is declared; behavior on
default_change_tag_element_id (None | str | Unset): Element id of the default change tag — the fallback flow
concept that receives any residual (Δ BS − Σ filter matches). Null when no default is declared; behavior on
residual then follows ``validation_mode``.
default_change_tag_qname (None | str | Unset): QName of the Tier 1 default change tag (e.g. ``rs-
default_change_tag_qname (None | str | Unset): QName of the default change tag (e.g. ``rs-
gaap:IncreaseDecreaseInCashAndCashEquivalents``). Round-tripped for caller convenience and operator-readable
envelopes; ``default_change_tag_element_id`` is authoritative. Null iff ``default_change_tag_element_id`` is
null.
Expand Down
3 changes: 1 addition & 2 deletions robosystems_client/models/taxonomy_block_rule.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,7 @@ class TaxonomyBlockRule:

Exactly one of ``rule_pattern`` (arithmetic) or ``rule_check_kind``
(model-structure) is non-null per row, enforced by the
``check_rule_pattern_kind_xor`` DB constraint. See
information-block.md §5.2.2.
``check_rule_pattern_kind_xor`` DB constraint.

Attributes:
id (str):
Expand Down
3 changes: 1 addition & 2 deletions robosystems_client/models/taxonomy_block_rule_request.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,7 @@ class TaxonomyBlockRuleRequest:
``LeafHasClassification``, ``LibraryOriginImmutability``,
``UniqueQNameInTaxonomy``) are system-managed — they're auto-emitted
by :func:`emit_auto_rules` at taxonomy-block creation time and
populate ``rules.rule_check_kind`` instead of ``rule_pattern``. See
information-block.md §5.2.2 for the axis split.
populate ``rules.rule_check_kind`` instead of ``rule_pattern``.

Attributes:
name (str): Rule identifier, unique within envelope.
Expand Down
4 changes: 2 additions & 2 deletions robosystems_client/models/verification_category_summary.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ class VerificationCategorySummary:
"""Pass/fail/skip counts for one ``rule_category`` within a block's
verification results.

Drives the per-category accordions in the Verification Results panel
(financial-viewer §7.12). ``category`` is the rule's ``rule_category``
Drives the per-category accordions in the Verification Results panel.
``category`` is the rule's ``rule_category``
(one of the cm:VerificationRule subclasses), resolved by joining each
result to its Rule.

Expand Down
2 changes: 1 addition & 1 deletion robosystems_client/models/verification_summary.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class VerificationSummary:
"""Server-computed aggregate of a block's ``verification_results``.

Overall counts plus a per-``rule_category`` breakdown, so the viewer
renders the grouped Verification Results panel (financial-viewer §7.12)
renders the grouped Verification Results panel
without a client-side results→rules join. Status closure is
``pass | fail | error | skipped`` (the ``public.verification_results``
CHECK); ``total`` is their sum.
Expand Down
Loading