Skip to content

[bot] Merge 26.3 to 26.7#1795

Merged
github-actions[bot] merged 3 commits into
release26.7-SNAPSHOTfrom
26.7_fb_bot_merge_26.3
Jul 8, 2026
Merged

[bot] Merge 26.3 to 26.7#1795
github-actions[bot] merged 3 commits into
release26.7-SNAPSHOTfrom
26.7_fb_bot_merge_26.3

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

Generated automatically.
Merging changes from: 210bd3d
Approve all matching PRs simultaneously.
Approval will trigger automatic merge.
Verify all PRs before approving: https://internal.labkey.com/Scrumtime/Backlog/harvest-gitOpenPullRequests.view?branch=26.7_fb_bot_merge_26.3

kollil and others added 3 commits July 7, 2026 10:48
Added more filters:
1. Remove cases in which the ID has a surrogate dam entered in prime.
(There are several but 41043 is one example)
2. Remove cases in which the observed dam is "unknown"
3. Remove cases in which the observed dam ID is not an ONPRC. E.g. there
are several NEPRC IDs of the format ###-####.
## Rationale

ONPRC_BillingManager.deleteBillingRuns built SimpleFilters over the raw
onprc_billing tables (invoicedItems, invoiceRuns, miscCharges) from
request-supplied primary keys with no container predicate, and the
method received no Container. Since DeleteBillingPeriodAction's
permission check is evaluated only against the current folder, a billing
admin in one folder could delete or detach billing rows belonging to any
other folder by POSTing arbitrary object IDs - a cross-container
horizontal privilege-escalation bug. This change confines every
operation to the caller's folder. This is the 26.3 port of
#1759 (originally against release25.7-SNAPSHOT).

## Related Pull Requests

- #1759 (original, against release25.7-SNAPSHOT)

## Changes

- Add a Container parameter to deleteBillingRuns and pass getContainer()
from both DeleteBillingPeriodAction call sites.
- Add integration test ONPRC_BillingManager.TestCase asserting a delete
from one container cannot affect another, registered in
ONPRC_BillingModule.getIntegrationTests().
- Drop two unused row-count locals from the Table.delete calls.

## Container filters added on

All tables are in the onprc_billing schema:

- invoiceRuns - container filter on the PK->run-id lookup and on the
final delete.
- invoicedItems - the preview read and the delete both carry a direct
container filter (SimpleFilter.createContainerFilter) plus an invoiceId
restriction to the container-scoped run ids.
- miscCharges - the read and the detaching Table.update are keyed off
container-authorized run ids only; intentionally NOT container-scoped
(source charges may live in satellite containers) but can only match
runs the caller already owns.
@github-actions github-actions Bot merged commit f2a3299 into release26.7-SNAPSHOT Jul 8, 2026
9 of 10 checks passed
@github-actions github-actions Bot deleted the 26.7_fb_bot_merge_26.3 branch July 8, 2026 00:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants