Problem
Evaluating fullsend requires provisioning GCP infrastructure (Cloud Functions, Secret Manager, WIF) before the platform can be tested. This creates a significant barrier to adoption — teams cannot try fullsend without first committing to a cloud provider.
Solution
Add a standalone development token mint (fullsend mint run) that replaces GCP infrastructure with local equivalents:
- Secret Manager → disk: PEM files stored in a local data directory
- WIF → JWKS: OIDC tokens verified directly via GitHub's JWKS endpoint
- Cloud Functions → HTTP server: Plain HTTP server on localhost, optionally exposed via cloudflared tunnel
Security trade-offs
- OIDC verification is enabled by default;
--insecure-no-auth is available for local-only testing and cannot be combined with --tunnel
- Permissive workflow defaults (
*) are an accepted risk for short-lived development use; --allowed-workflows provides tighter controls
- PEM files are stored unencrypted on disk, protected by filesystem permissions
Acceptance criteria
Problem
Evaluating fullsend requires provisioning GCP infrastructure (Cloud Functions, Secret Manager, WIF) before the platform can be tested. This creates a significant barrier to adoption — teams cannot try fullsend without first committing to a cloud provider.
Solution
Add a standalone development token mint (
fullsend mint run) that replaces GCP infrastructure with local equivalents:Security trade-offs
--insecure-no-authis available for local-only testing and cannot be combined with--tunnel*) are an accepted risk for short-lived development use;--allowed-workflowsprovides tighter controlsAcceptance criteria
fullsend mint run --data-dir <dir>starts a local mint that serves real GitHub App installation tokensfullsend admin install --skip-mint-check --mint-url http://localhost:8321 --mint-data-dir <dir>writes PEMs to disk--tunnelflag creates a cloudflared quick tunnel for GitHub Actions access