Skip to content

Create missing default run ancestors privately #493

Description

@Anionix

Source review comment:
#477 (comment)

Exact reviewed SHA: da6b5a09504f709f42a66e2d9683088815ea4e21

Trigger

Use the default root/runs/<id> destination when root/runs is missing under
umask 002 or 000.

Expected

Every newly created lifecycle ancestor is private.

Actual

Path.mkdir(parents=True, mode=0o700) applies 0700 only to the leaf and
creates the missing runs ancestor through the process umask.

Impact

Another principal can rename or replace the whole run directory between later
commands that reopen it by path.

Required regression

Create the default root/runs parent explicitly at 0700 before creating the
run leaf, and prove both modes under collaborative umasks.

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

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions