Skip to content

security: enforce the approved keyframe repository and package boundary #323

Description

@WalksWithASwagger

Summary

Enforce the human-approved repository and npm-package boundary for keyframe configuration files.

Context

Implementation Notes

Acceptance Criteria

  • Files classified private in decision(security): classify tracked keyframe configs before public release #322 are absent from the tracked tree and npm tarball.
  • Any approved replacement is a sanitized public template with an unambiguous filename.
  • package.json contains no broad config/keyframes*.json package wildcard.
  • Package checking fails when an unapproved keyframe config enters the tarball.
  • Public-boundary checking rejects tracked private keyframe configuration.
  • .gitignore, package policy, and FLOYO documentation describe the same boundary.
  • No keyframe contents are printed into CI logs or PR discussion.

Tests/Evals

  • Extend public- and package-boundary regression fixtures using synthetic filenames and content only.
  • Preserve existing keyframe job behavior tests.

Verification

  • python3 -m pytest tests/test_public_boundary.py tests/test_keyframe_jobs.py -q
  • npm run public:check
  • npm run pack:check
  • npm pack --dry-run --json
  • git ls-files 'config/keyframes*'
  • npm test

Agent Instructions

Human Checkpoints

Out of Scope

  • Git history rewriting.
  • Credential rotation, provider calls, npm publishing, or generated outputs.
  • Changing keyframe generation behavior.

Linear

Not applicable. Rafiki delivery is GitHub-only; do not create or update a Linear issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    configurationConfiguration and environment setupphase-1Phase 1 — Polish & StabilitysecuritySecurity and secrets managementtestsTest coverage, smoke checks, and acceptance automationtype:taskImplementation task

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions