fix(site): retain state when controller inventory is scope-filtered #7
Loading…
Reference in a new issue
No description provided.
Delete branch "test/site-permissions"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The isolated permission test reproduced a real unsafe absence classification: an existing site hidden from a scoped account was returned as ErrSiteNotFound. Require confirmed /users/current privilege.all=true before treating a complete inventory absence as deletion; unknown/scoped/denied visibility retains state with an error.
Adds client scope regressions and both-engine acceptance proving the existing binding survives permission-filtered inventory and visibility restoration without another create. Generated resource documentation updated. Candidate version advances to 0.13.1-homelab.3, with no production publication/deployment.
Adds opt-in exact-controller restricted-account proof using synthetic custom roles. Metadata role permits only globalDashboard=2, siteNetwork=2, devices=1; returned privileges are checked against the requested map. User/role inventories are denied. Both engines perform full provider lifecycle under the restricted account. A view-only role cannot create/update/delete; a primary-only account cannot falsely classify a hidden existing site as deleted. All accounts/roles remain inside the network-none disposable controller, with no production credentials/backend.
Local full Terraform mock suite, exact deployed OpenTofu site acceptance, generated docs, vet and lint pass. Isolated proof evidence/limits are in SITE_BOOTSTRAP_PROOF.md. This proves a narrow site role, not all-root/Open API permissions or a mathematically minimal permission set. Production ownership is unchanged. Follow-up for issue #3.