Skip to content

Harden package devshell, remote cache, and publish provenance #75

Description

@Jesssullivan

Context

scheduling-kit is public and should be a clean reusable package consumer of the shared JS/Bazel workflow. Current package metadata is consistent at 0.7.2, and CI publishes Bazel output from ./bazel-bin/pkg, but the devshell and release hardening are not yet enterprise-grade.

Gaps

  • flake.nix is present but no committed flake.lock was found in the audit clone.
  • devshell does not clearly include Bazel/Bazelisk alongside the pinned Node/pnpm path.
  • Bazel config is local-cache only; no documented remote-cache contract for contributors or CI canaries.
  • workflows inherit secrets broadly and do not visibly declare least-privilege permissions, provenance, SBOM, or release concurrency.

Exit criteria

  • committed lockfile or an explicit decision documenting why this public package does not lock the devshell
  • documented nix develop validation command for contributors
  • Bazel cache config documents local fallback and CI remote-cache behavior without private topology
  • publish workflow uses explicit permissions, release concurrency, npm provenance where supported, and package/SBOM attestation or a documented deferral
  • public docs remain free of private runner topology

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions