Skip to content

feat(localnet): go-daml Ledger API readiness probe on up/start/restart - #344

Draft
zheli wants to merge 2 commits into
mainfrom
poc/go-daml-ledger-connectivity
Draft

zheli wants to merge 2 commits into
mainfrom
poc/go-daml-ledger-connectivity

Conversation

@zheli

@zheli zheli commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Wire go-daml into the production readiness path: after Docker compose health succeeds, localnet up / start / restart (unless --no-wait) probe the app-provider Ledger API (GetLedgerApiVersion + GetLedgerEnd) and fail with LEDGER_UNREACHABLE if it never becomes ready.

Transaction dials still use dazl-client via internal/canton/ledger; go-daml is the readiness probe only. CLI and Web UI share the same RunUp / start / restart paths.

Changes

  • Add internal/localnet/ensureLedgerReady (polls go-daml; role app-provider)
  • Call it from up, start, and restart after Docker WaitForHealthy + port capture
  • New error code LEDGER_UNREACHABLE + Web UI remediation panel
  • Progress copy: "Waiting for services and Ledger API to become healthy"
  • Document deviation in docs/changes-from-proposal.md

Test plan

  • go test ./internal/localnet/ ./internal/poc/godamlprobe/
  • make lint
  • npx vitest run src/screens/remediation.test.ts
  • Optional: live LocalNet up and confirm ledger probe line / failure path

Checklist

  • Tests pass locally (touched packages)
  • CLI ↔ Web UI parity (shared RunUp / start / restart + error code + step label)
  • docs/changes-from-proposal.md updated

Adds an isolated experimental package that dials a participant with
noders-team/go-daml (GetLedgerApiVersion + GetLedgerEnd) so we can
compare it against the existing dazl-client path without changing
production WaitForHealthy or token dial wiring.
… health

Wire the go-daml connectivity probe into up/start/restart so bring-up
fails with LEDGER_UNREACHABLE when app-provider gRPC is not ready,
instead of reporting success on container health alone.
@zheli zheli changed the title poc: evaluate go-daml for Ledger API connectivity probes feat(localnet): go-daml Ledger API readiness probe on up/start/restart Sep 22, 2026

This branch has not been deployed

No deployments
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