Skip to content

release: v1.0.0#134

Draft
seanmcgary wants to merge 18 commits into
masterfrom
release/v1.0.0
Draft

release: v1.0.0#134
seanmcgary wants to merge 18 commits into
masterfrom
release/v1.0.0

Conversation

@seanmcgary
Copy link
Copy Markdown
Member

No description provided.

seanmcgary and others added 7 commits May 4, 2026 21:27
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rewrote the top-up command to support both USDC and credit card payment methods.
Users can now choose between on-chain USDC payment or credit card checkout.

Changes:
- Added method flag to select payment method (usdc or card)
- Extracted USDC flow into handleUsdc() method
- Added handleCard() method for credit card checkout flow
- Added pollForCredits() helper to share polling logic
- Updated description and examples
- Integrated with new SDK methods: getPaymentMethods and purchaseCredits

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
seanmcgary and others added 11 commits May 4, 2026 21:28
Rebuilt from eigencompute-containers@3fa22e5 (master). Picks up:

- eigencompute-containers#10 — exponential-backoff retry on ACME
  certificate issuance failures (merged 2026-03-10)
- eigencompute-containers#11 — DNS pre-check before ACME to avoid
  burning LE's failed-validation rate limit (5/hostname/hour) on
  DNS-propagation races (merged 2026-03-16)

Observed the bug on 2026-05-05 in dev when a fresh VM boot hit a
transient LE staging 503 and terminated the VM before Caddy could
start. The old binary pre-dates #10 and has no retry of any kind.
The fixes above live in the Go source, so this is just a binary
bump to bring the tree up to date.

Replaces #142 (shell-level wrapper that tried to fix the same
thing at the wrong layer — the wrapper still burned LE rate limit
on DNS-propagation races, which #11 prevents).

Build
-----
  cd eigencompute-containers/tls-client  # HEAD=3fa22e5
  CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \
    -trimpath -buildvcs=false \
    -ldflags="-s -w -extldflags '-static'" \
    -o tls-keygen-linux-amd64 ./cmd/tls-client
  upx --best tls-keygen-linux-amd64

Artifact
--------
  size: 4,389,808 bytes (was 4,114,232; +6.7%)
  file: ELF 64-bit LSB executable, x86-64, statically linked,
        no section header
  proof of PR #11 presence (strings, unpacked):
    "DNS not yet propagated, waiting"
    "obtain certificate: DNS not propagated after %d attempts: %w"
  proof of staleness of old binary: neither string present.

Note: upstream Dockerfile and CI do not run upx; the existing
on-disk binary is upx-packed, so this bump matches that convention.
Local go toolchain was 1.26.2; repo go.mod pins 1.25.0 (forward-
compat build, not a reproducible verifiable-build artifact).
# Summary
- Add Base chain support for USDC credit purchases (Base Sepolia for
now)
- When a user selects USDC in the top-up flow and Base is configured for
their environment, they're prompted to choose between Ethereum and Base
- Chain selection is transparent — same contract interface, just
different network/RPC/contract address
## Changes
### SDK (packages/sdk)
- Added baseSepolia to SUPPORTED_CHAINS, BASE_SEPOLIA_CHAIN_ID constant
- Added baseUsdcCreditsAddress and baseRPCURL optional fields to
EnvironmentConfig
- Populated Base Sepolia config for sepolia-dev and sepolia environments
(contract: 0x7673a47463F80c6a3553Db9E54c8cDcd5313d0ac)
- Added BillingChain type ("ethereum" | "base") and hasBaseSupport() to
billing module
- getTopUpInfo and topUp now accept an optional chain param — creates
Base-specific viem clients internally when chain: "base"
### CLI (packages/cli)
- Added --chain flag to billing top-up command
- Added "Which network?" prompt (Ethereum/Base) when Base is configured
— skipped when only Ethereum is available or when --chain flag is passed
- Chain-aware "No USDC in wallet" messaging
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.

2 participants