Skip to content

fix(adapters): enforce safe-integer duration ceilings and integer-exact epoch timestamps across Cedar, OPA, and AGT policy adapters (#111) - #116

Open
drk-ram wants to merge 1 commit into
agentrust-io:mainfrom
drk-ram:drk-ram-fix-policy-adapters-111
Open

drk-ram wants to merge 1 commit into
agentrust-io:mainfrom
drk-ram:drk-ram-fix-policy-adapters-111

Conversation

@drk-ram

@drk-ram drk-ram commented Oct 25, 2026

Copy link
Copy Markdown

Closes #111

Summary

  • Enforce type(evaluation_duration_ns) is int and 0 <= evaluation_duration_ns <= 9_007_199_254_740_991 in Python cedar_policy_decision, opa_decision_log, and agt_policy_decision to match TypeScript Number.isSafeInteger checks.
  • Compute _timestamp_ns in Python opa_decision_log and agt_policy_decision using exact integer epoch delta arithmetic instead of float datetime.timestamp(), and reject pre-epoch (< 1970-01-01T00:00:00Z) timestamps in both Python and TypeScript (packages/typescript/src/adapters.ts).
  • Add subTest-isolated Python and TypeScript unit tests in tests/test_adapters.py and packages/typescript/test/adapters.test.ts.

Validation

  • pytest tests/test_adapters.py tests/test_agt_adapter.py -q — passed (23 passed)

@drk-ram
drk-ram requested review from a team and imran-siddique as code owners October 25, 2026 06:47
@github-actions

github-actions Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

🟡 Contributor Check: MEDIUM

Check Result
Profile MEDIUM
Credential LOW
Overall MEDIUM

Automated check by AgenTrust Contributor Check.

…ct epoch timestamps across Cedar, OPA, and AGT policy adapters (agentrust-io#111)

Signed-off-by: Raghuvar Karthik Durga <177662415+drk-ram@users.noreply.github.com>
@drk-ram
drk-ram force-pushed the drk-ram-fix-policy-adapters-111 branch from 302ab51 to 996c5c9 Compare October 29, 2026 17:14

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-review:MEDIUM Contributor check flagged MEDIUM risk

Projects

None yet

Development

Successfully merging this pull request may close these issues.

adapters (cedar, opa, agt): Python policy adapters miss safe-integer duration ceilings and integer-exact epoch timestamp conversion

1 participant