MANAGE_BILLING_PROVIDER (277), a child of commerce settings

Featurekamo-shared-library
Ya
27 Agosti 2026, 20:39 UTC
Mwandishi
Kamo
Ahadi ya
5210fe6

Task 8, mirror 1 of 6 (the Java enum) and mirror 2 (the parent(...) line). Id 277 was re-derived from origin/main immediately before allocating it, NOT taken from the plan: git show **************** | grep -oE '\(\s*[0-9]+\s*,' ... count: 267 max: 276 missing up to max: [1, 2, 19, 64, 72, 73, 74, 75, 76] Every gap below the maximum is one of the nine already-burned ids, so 277 is the first free one. MANAGE_PRICING(276) is the previous last constant. This matters more than it looks: RoleRightsSyncService seeds at boot and its Collectors.toMap throws on a duplicate id, which stops EVERY service booting. Parent is MANAGE_SUBSCRIPTION_SETTINGS, mirroring MANAGE_PAYROLL_PROVIDER under MANAGE_HRS_SETTINGS. Deciding WHERE an organization's invoices and payments are transmitted is a commerce-settings act. Not a child of an invoice VIEW right — anybody who can read invoices must not be able to redirect them. Not a root — a role that loses commerce settings would keep the redirect grant live. ServiceType.POS because the permission editors filter with right.serviceType === section.serviceType and there is exactly one commerce section. A right whose serviceType matches no section cannot be granted at all, and nothing says so. Counts move by exactly two, as the shape predicts: total 267 -> 268 and children 193 -> 194. Neither root bucket moves, because MANAGE_SUBSCRIPTION_SETTINGS is itself a child of ACCESS_COMMERCE and so never appears in getRoots(). RED (test edited first — counts bumped and the placement case added, before the enum constant existed): [ERROR] **************** cannot find symbol symbol: variable MANAGE_BILLING_PROVIDER location: class **************** [ERROR] **************** cannot find symbol [ERROR] **************** cannot find symbol GREEN: Tests run: 13, Failures: 0, Errors: 0 (RoleRightHierarchyTest) Tests run: 17, Failures: 0, Errors: 0 (with RoleRightTypeHrTabRightsTest) Full library suite: Tests run: 2289, Failures: 0, Errors: 0, Skipped: 0 Both tests proven able to fail, by mutation, observed verbatim: A. **************** ...) -> **************** ...): **************** expected: MANAGE_SUBSCRIPTION_SETTINGS but was: VIEW_SUBSCRIPTION_INVOICES B. parent(...) line deleted entirely — three tests red at once, which is the whole point of pinning counts as well as placement: **************** expected: MANAGE_SUBSCRIPTION_SETTINGS but was: null **************** expected: 194L but was: 193L rootsAreASensibleSubset Expected size: 74 but was: 75 Both reverted. Built and tested in an ISOLATED tree (git archive of origin/main + these two files, own target/, own -Dmaven.repo.local). This checkout is shared with other sessions and currently carries ~7 dirty files that are not mine; a red suite run here would have been someone else's TDD red phase, not a regression. Those files were left untouched.

Mabadiliko yote

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei