Skip to content

package: ship a prebuilt React portal in the npm tarball #333

Description

@WalksWithASwagger

Summary

Package the prebuilt React portal and prove the npm tarball works from a disposable installation.

Context

Implementation Notes

  • Build the frontend as part of packaging and include only the required self-contained output.
  • Run install smoke from a disposable tarball directory, never from repository assumptions.
  • Preserve /legacy-suite and /legacy-library for this release and mark them deprecated.
  • Keep generated frontend/.output ignored and absent from Git.

Acceptance Criteria

  • npm pack builds and includes the required self-contained Nitro output.
  • frontend/.output remains ignored and uncommitted.
  • A disposable tarball-install smoke proves React routes, static assets, API proxying, dry-run generation, and clean shutdown.
  • Package-boundary checking fails if required bundle entrypoints are missing or forbidden files enter the tarball.
  • Legacy suite and library routes remain available and visibly deprecated.
  • Full deterministic and security verification passes from the reviewed commit.

Tests/Evals

  • Add an installed-package smoke that uses temporary directories and dry-run fixtures only.
  • No provider, deployment, or network generation calls.

Verification

  • npm run pack:check
  • Run the installed-tarball smoke in a disposable directory.
  • npm run verify
  • npm run verify:security
  • git status --short proves no build artifacts were committed.

Agent Instructions

Human Checkpoints

  • Maintainer review is required before merge because this changes the public tarball contract.

Out of Scope

  • npm publication or GitHub release creation.
  • Legacy route deletion.
  • Provider calls or generated image evaluation.
  • Broad server refactoring.

Linear

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    blockedWork cannot proceed until a blocker is resolved.enhancementNew feature or requestphase-1Phase 1 — Polish & StabilitypipelineCore pipeline toolingtestsTest 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