Skip to content

Complete declarative provider lifecycle cleanup - #36

Merged
davejohnson merged 1 commit into
mainfrom
agent/declarative-provider-lifecycle-cleanup
Jul 28, 2026
Merged

Complete declarative provider lifecycle cleanup#36
davejohnson merged 1 commit into
mainfrom
agent/declarative-provider-lifecycle-cleanup

Conversation

@davejohnson

Copy link
Copy Markdown
Owner

What changed

  • Promote Stripe products, recurring prices, runtime projections, and webhook endpoints into desired-state lifecycle resources under payments.stripe.
  • Add durable identity, explicit adoption/replacement/archive actions, action-id confirmation for data-bearing operations, and rollback/absence verification for webhook creation failures.
  • Add declarative iOS release state with server-deploy evidence, exact-SHA provenance gates, managed GitHub Actions workflows, App Store Connect environment secrets, TestFlight policy, and final submission checks.
  • Remove imperative payment setup, TestFlight upload/distribution, App Store asset, bundle-ID registration, and local Xcode deployment commands that bypassed the spec/plan/apply boundary.
  • Add safe GitHub credential aliases for NODE_AUTH_TOKEN, HYPERVIBE_GITHUB_TOKEN, and HYPERVIBE_GITHUB_PACKAGES_TOKEN, blocking when fallback values disagree.
  • Refresh the shared command registry documentation and add the static Hypervibe website entry point.

Why

These changes were left unstaged in the worktree after the deploy-failure-artifacts branch was committed and merged. Git commits include only staged content, so the local desired-state work never reached PR #31.

The removed commands also represented lifecycle mutations outside Hypervibe's central desired-state loop. This cleanup moves those resources into reviewed, persisted plan actions so both MCP and CLI share one contract and provider mutations remain action-scoped.

Impact

  • The shared MCP/CLI command surface decreases from 42 to 33 commands.
  • Existing users of the removed imperative commands must migrate to environment spec declarations followed by hv_plan and hv_apply.
  • Stripe catalog/webhook and iOS release changes now produce explicit plan actions, dependencies, confirmations, and receipts.
  • Secrets remain behind connection/credential references and one-way hashes; webhook signing values are never persisted or returned.

Validation

  • npm test — 108 files, 927 tests passed
  • npm run typecheck
  • npm run build
  • npm run docs:tools — generated 33-command registry documentation
  • npm_config_cache=/private/tmp/hypervibe-npm-cache npm run prepublish-check
  • git diff --check origin/main...HEAD

@davejohnson
davejohnson marked this pull request as ready for review July 28, 2026 17:18
@davejohnson
davejohnson merged commit 3e97f8c into main Jul 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant