Skip to content
MirrorFirm

What fields and links make up a generated approval record schema?

A generated release can use JSONL or Parquet tables with stable identifiers that connect requests, rules, delegations, role holders and decision events.

A release can ship as one file per table, in JSONL for readability or Parquet for volume. Each row carries a stable identifier, and links are explicit fields rather than text references.

- `approval_request`: `request_id`, `request_type`, `amount`, `currency`, `risk_flags`, `requester_role_id`, `related_request_ids`, `raised_at`. - `authority_rule`: `rule_id`, `request_type`, `amount_min`, `amount_max`, `risk_condition`, `required_role_id`, `aggregation_scope`, `valid_from`, `valid_to`. - `role_holder`: `role_id`, `holder_id`, `valid_from`, `valid_to`, `absence_status`. - `delegation`: `delegation_id`, `from_role_id`, `to_holder_id`, `scope_rule_ids`, `starts_at`, `ends_at`, `sub_delegation_allowed`. - `conflict_rule`: `rule_id`, `condition`, `effect`, such as exclude or require second approver. - `decision_event`: `event_id`, `request_id`, `approver_id`, `authority_basis` (a rule or delegation id), `decision`, `decided_at`. - `expected_outcome`: `request_id`, `valid_approver_ids`, `expected_decision`, `acceptable_escalations`.

The key link is `authority_basis` on each decision, because it lets a grader check whether the approver's authority was valid at `decided_at`.

Keep `expected_outcome` in a separate file so it can be withheld from training splits. Version the rule and delegation tables together, since a decision is only meaningful against the rules in force at its date.

All values are generated. Field names can be adapted to your own conventions as part of scoping.

Stable keys and explicit foreign links let you join tables, replay decisions and build graders without parsing free text or guessing which record belongs to which.

Audience:
Agent developers
Content type:
Integration
Buyer question:
What can be generated

Content release: r-a220eb6e099b243b

More on Delegated approval