Skip to content
This repository was archived by the owner on Oct 9, 2026. It is now read-only.
This repository was archived by the owner on Oct 9, 2026. It is now read-only.

Reduce managed approval friction in dogfood workflows #313

Closed as not planned

Description

@shiny-code-bot

Objective

Reduce repetitive approval interruptions for the standard Codex Lab dogfood workflow—linked worktrees, Git metadata, language/package caches, and bot-owned GitHub planning helpers—without weakening the managed sandbox or allowing repository-local configuration to silently expand trust.

Finish Line

The documented dogfood permission profile completes known-safe recurring operations with bounded, auditable grants, while unexpected filesystem, network, credential, and command access still prompts or fails.

Current Status

State: Waiting dogfood ergonomics follow-up; the former #307 and #311 prerequisites are complete.

The converged execution, sandbox, workspace-root, approval, and provenance substrate is available. The remaining finish line is empirical: reproduce current installed/private-release approval denials, classify them, and reduce safe recurring prompts without broadening managed trust.

Next action: capture a fresh denial inventory from a provenance-verified installed workflow and classify each event as a required grant, product/tool defect, path-propagation defect, or intentionally interactive approval.

Blocked by: no native issue dependency.

Waiting for: post-release dogfood evidence and prioritization.

Last verified: August 10, 2026.

Scope

  • In: linked-worktree Git metadata, workspace roots, uv/cargo/npm cache paths, bot-owned gh-plan/GitHub helper operations, command-prefix persistence, approval explanations, denial diagnostics, and least-privilege regression tests.
  • Out: blanket home-directory access, unrestricted network, credential-store bypass, repository-local permission escalation, auto-approving unknown commands, or account-routing/quota policy from Classify deferred multi-account routing and quota-priming policy #290.

Acceptance Criteria

  • Each observed dogfood approval is reproduced and classified before policy changes.
  • Safe recurring operations use the narrowest stable path, command, host, and capability grants available.
  • Linked worktrees can access their shared Git metadata without granting unrelated repository or home access.
  • Approved package caches are scoped to known cache roots and cannot become arbitrary write access.
  • Bot-owned GitHub helpers retain explicit repository/operation boundaries and clear network attribution.
  • Repository-local files cannot silently broaden the managed permission profile.
  • Unknown commands, hosts, credential access, and out-of-scope paths still prompt or fail with actionable diagnostics.
  • Deterministic tests cover allowed, denied, moved-worktree, symlink, and stale-prefix cases.
  • A provenance-recorded dogfood run demonstrates materially fewer repeated approvals without a broader security envelope.

Relationships

Validation

  • Replay captured approval events in isolated worktrees and homes.
  • Test allow/deny boundaries, symlinks, renamed worktrees, cache roots, and GitHub host/repository scope.
  • Run one current-binary dogfood workflow and compare approval count/categories with the baseline.

Decisions

  • Reduce repeated prompts through precise managed grants, not blanket trust.
  • Permission policy remains outside repository-local control.

Open Questions

  • Which safe grants belong in the built-in development profile versus user-confirmed persistent prefix rules.

Activity

  1. added
    planDurable planning issue
    plan:blockedPlan blocked by an open native dependency issue
    on Jul 11, 2026
  2. added
    plan:waitingDurable plan parked pending a decision, event, or non-issue condition; not for PR QA
    and removed
    plan:blockedPlan blocked by an open native dependency issue
    on Aug 10, 2026
  3. added
    plan:donePlan completed or superseded
    and removed
    plan:waitingDurable plan parked pending a decision, event, or non-issue condition; not for PR QA
    on Sep 27, 2026
  4. shiny-code-app commented on Sep 27, 2026

    @shiny-code-app

    Backlog reconciliation — 2026-09-26

    Closing against the merged DIRECTION.md. Main is now upstream 2deb542491 plus the fresh-start files and the tools/account-router sidecar; the old Lab code stays preserved on archive/lab-main-2026-09-24. Evidence and history in this thread are kept.

    Disposition: superseded (not planned). DIRECTION.md retires "the installed Lab build and its services", including the remote-control app-server, housekeeping jobs, and the self-hosted release and signing runners. The managed profile and provenance-verified install this tuned no longer exist; stock approval friction is user config and catalog hooks.

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

    planDurable planning issueplan:donePlan completed or superseded

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions