3 Commits
Author SHA1 Message Date
viettranx f1e71ee8fe test(integration): cover RBAC role bypass + non-bypass for file_writer permission
- A.10 AdminRoleBypass (3 sub-cases): admin, operator, owner roles in
  ctx allow write_file and cron in group context even when SenderID is
  empty (the bypass short-circuits before the synthetic-sender check).
- A.11 ViewerRoleDoesNotBypass (2 sub-cases): viewer and empty roles
  still hit the DENY path, guarding against the RBAC bypass leaking to
  unprivileged roles.

Integration suite 11 fixtures, all passing on pgvector pg18.
2026-04-16 14:17:48 +07:00
viettranx 24a098c580 test(integration): add #915 regression fixtures for re-ingress + synthetic senders
Extends Telegram group write_file permission coverage with four new
fixtures that exercise the edges exposed by the audit:

- A.6 EmptySenderDenied: empty SenderID in group context must deny
  (closes silent-bypass BUG-A)
- A.7 SyntheticSendersDenied: 7 sub-cases for subagent:, notification:,
  teammate:, system:, ticker:, session_send_tool, subagent:delegate:
  (reporter-reported denial BUG-B)
- A.8 PropagatedSenderAllowed: positive case for F2/F3 — once the real
  sender is propagated through announce re-ingress, a granted user can
  still write files
- A.9 DMEmptySenderPasses: guards against F1's deny-on-empty rule
  bleeding into DM context

Full suite: 9 fixtures, all passing on pgvector pg18.
2026-04-16 14:17:48 +07:00
viettranx 4fe293ae1e test(integration): cover Telegram group write_file permission flow
Add 5 fixtures mirroring gateway_consumer_normal.go + commands_writers.go
context/grant shapes. Proves the ConfigPermissionStore permission flow
resolves correctly in isolation: granted sender allowed, ungranted
denied, fail-open path distinguished, DM bypass preserved, and the
"|"-delimited sender split behaves as specified.

Regression coverage for issue #915.
2026-04-16 14:17:48 +07:00