Skip to content

fix(acl): distinguish file and directory entries in native batched read checks - #29

Merged
opendev9 merged 3 commits into
devfrom
fix/native-directory-acl-batch-kind-20261023
Oct 23, 2026
Merged

opendev9 merged 3 commits into
devfrom
fix/native-directory-acl-batch-kind-20261023

Conversation

@servicememeai

Copy link
Copy Markdown

Change

The native C directory-listing batch previously sent every dirent as kind=dir to the Hub's shared Authority, including regular files. Read permissions for files must follow the containing directory; directory entries must use their own path. Read/write actions continue using the existing Hub/Redis ACL snapshot and identical policy resolver.

  • Read the native dirent mode and send kind=file for regular files, kind=dir for directories.
  • Fail closed on unsupported entry types rather than granting or silently exposing them.
  • Keep the current bounded native batch, internal JWT transport, error handling and Hub ACL cache unchanged.
  • Add a tiny source contract test to the existing quick workflow. No native build, database, or DEV/PROD access.

Related compatibility rollout: Hub bulk PR eaopen/cloudfile-hub#52 and EAP PR https://github.com/jcetech/etech-eap/pull/21. Independent of previous Server retry/lock fixes #27/#28.

Verification

The lightweight CI test checks mode extraction, kind discrimination and preservation of batch verdict checks. Before merging, check a mixed file/folder page, invisible subdirectory, shared-root boundary and file download permissions against real native C + Hub.

@opendev9
opendev9 merged commit e15f6a7 into dev Oct 23, 2026
1 check passed
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.

2 participants