deploy plan: generate ConceptVotes__NetworkTagSecret, defaults note, checkout page check #19

Merged
heimdall merged 2 commits from libby/networktagsecret-env-step into heimdall/deploy-main-plan 2026-11-09 15:50:31 +00:00 AGit
Member

Docs only, one file (docs/deploy-main-to-live.md), two commits on top of heimdall/deploy-main-plan (0eb68e49).

  • Env step 3: how to generate ConceptVotes__NetworkTagSecret (random, 64 hex chars via openssl rand -hex 32, appended into bifrost.env after the timestamped bifrost.env.pre-<UTC> backup, mode 600 owner bifrost, nothing printed; length checked by count only). Says generate once and do not rotate casually: ConceptAppraisal.NetworkTag stores tags (BifrostDbContext.cs:546) and PurgeAsync (ConceptAppraisalService.cs:154) misses old rows after a change.
  • Configuration table note: the Stripe (StripeOptions.cs:15,17) and Heimdall intake (HeimdallOptions.cs:7,9) validator checks are satisfied by defaults once the one secret is present.
  • Live check: one Stripe checkout page load, do not pay.
  • Re-run safe (second commit, 7895d05): the step greps for an existing ConceptVotes__NetworkTagSecret= line and skips with a message that prints no value; it never overwrites or duplicates (systemd takes the last duplicate). Exercised in a temp dir: first run appends a 64-char value, second run skips, count stays 1, mode 600.
  • Heimdall's restore-test ask was already in Precondition 2 (dump restored into a scratch database, member count equals live); unchanged.

Not run: the command is untested on the host (unverifiable from the repo). No merge.

🤖 Generated with Claude Code

Docs only, one file (`docs/deploy-main-to-live.md`), two commits on top of `heimdall/deploy-main-plan` (0eb68e49). - Env step 3: how to generate `ConceptVotes__NetworkTagSecret` (random, 64 hex chars via `openssl rand -hex 32`, appended into `bifrost.env` after the timestamped `bifrost.env.pre-<UTC>` backup, mode 600 owner `bifrost`, nothing printed; length checked by count only). Says generate once and do not rotate casually: `ConceptAppraisal.NetworkTag` stores tags (BifrostDbContext.cs:546) and `PurgeAsync` (ConceptAppraisalService.cs:154) misses old rows after a change. - Configuration table note: the Stripe (StripeOptions.cs:15,17) and Heimdall intake (HeimdallOptions.cs:7,9) validator checks are satisfied by defaults once the one secret is present. - Live check: one Stripe checkout page load, do not pay. - Re-run safe (second commit, 7895d05): the step greps for an existing `ConceptVotes__NetworkTagSecret=` line and skips with a message that prints no value; it never overwrites or duplicates (systemd takes the last duplicate). Exercised in a temp dir: first run appends a 64-char value, second run skips, count stays 1, mode 600. - Heimdall's restore-test ask was already in Precondition 2 (dump restored into a scratch database, member count equals live); unchanged. Not run: the command is untested on the host (unverifiable from the repo). No merge. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
heimdall merged commit c049793eca into heimdall/deploy-main-plan 2026-11-09 15:50:31 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/Bifrost!19
No description provided.