Skip to content

Compile disabled storage admission in the native library on Windows #1222

Closed

Description

@rmcdaniel

The CLI's accepted standalone development runtime (durable-workflow/cli#160, implementation #161) links the native Server library. Its actual Windows build fails in storage_admission.rs, which imports Unix metadata/open flags and calls geteuid even when storage admission is disabled. The module is byte-identical at the pinned 3.10 source and current main.

Required outcome:

  • Keep the existing Unix descriptor, effective-UID, ownership/mode, no-follow, nonblocking and bounded-file checks intact.
  • Compile the library on unsupported file-observation platforms with admission disabled; default admission stays disabled/normal.
  • Configured observations on those platforms remain enabled but unavailable/fenced. Do not invent Windows UID trust or read files through a weaker fallback.
  • Keep Unix regression controls and add platform-boundary coverage. Obtain the consuming CLI's exact Windows build proof, plus ordinary Server source/security/CI checks.

Scope is the library cfg boundary and its documentation/tests, not Windows native-image qualification, a runtime download/launcher, an admission collector, or any #980/#1204/release action. CLI owns its actual standalone lifecycle/platform proof and development-build identity. No published tag is changed.

Activity

  1. added
    kind:defectA public product behavior is incorrect
    priority:P2Normal-priority product work
    status:in-progressApproved work is actively being implemented or validated
    on Nov 14, 2026
  2. rmcdaniel commented on Nov 14, 2026

    @rmcdaniel
    MemberAuthor

    The native library portability fix is integrated by #1223 at accepted main 3d90086f73533ac4437735bae6b9d0446558577c. The accepted tree ceeac261d5cc3176d2dca2c01ce32b6b4e246893 exactly matches the reviewed/tested head, and the remote topic branch is absent. Unix descriptor/UID/no-follow/mode/size/depth checks remain unchanged. Default admission stays disabled on other targets; configured file observations return the existing unavailable/fenced state.

    The exact reviewed source 63cea4854ec6ebe56ab1603b014e246b907aedc0 has all ordinary Server checks successful (one declared skip) and independent Security approval. The consuming Windows job compiled that exact dependency and passed empty-PATH startup/readiness, workflow admission, restart persistence and configured-file HTTP 503 / storage_admission_unavailable. Its broader CLI run has unrelated failures and remains CLI-owned; this does not claim a CLI release or Windows Server-image qualification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent:serverkind:defectA public product behavior is incorrectpriority:P2Normal-priority product workstatus:in-progressApproved work is actively being implemented or validated

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions