Skip to content

LeapView v0.2.0-rc.1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Jul 12:48
dfb3086

LeapView v0.2.0-rc.1

This is an immutable release candidate for controlled testing of the single-node LeapView server. It is not GA and does not imply broad production support.

Release identity

  • Version: 0.2.0-rc.1
  • Source revision: dfb3086d59284c6597180e99a7d07f41e36a7f7e
  • OCI image: ghcr.io/yacobolo/leapview@sha256:8b32fc291c86005c69c2ca1fa673dcaa4cb84d39cfc951e065a2775b122f81d9
  • Runtime platforms: linux/amd64, linux/arm64
  • Operations bundles: linux/amd64, linux/arm64, darwin/amd64, darwin/arm64

Use the digest above anywhere repeatability matters. The version tag is only a convenience.

Five-minute evaluation

Prerequisites: Docker Engine on an amd64 or arm64 host, at least 2 logical CPUs, 4 GiB memory, and a free local port 8080. No source checkout, registry login, Go, Bun, Task, YAML editing, or external dataset is required.

IMAGE='ghcr.io/yacobolo/leapview@sha256:8b32fc291c86005c69c2ca1fa673dcaa4cb84d39cfc951e065a2775b122f81d9'
docker pull "$IMAGE"
docker run --detach --name leapview-evaluate --init \
  --publish 127.0.0.1:8080:8080 \
  --volume leapview-evaluate:/var/lib/leapview \
  "$IMAGE" evaluate
docker exec leapview-evaluate leapview healthcheck
docker exec leapview-evaluate leapview evaluate first-login

Open http://localhost:8080, sign in with the one-time credential, and change the temporary password. Open Five-minute Sales Evaluation, select State SP, and confirm that the Orders KPI, revenue chart, and governed order table update together.

The credential can be read only once. If it is lost, reset this disposable evaluator. Evaluation mode intentionally uses local HTTP and generated local secrets; do not expose it to a LAN or the internet.

docker restart leapview-evaluate
docker exec leapview-evaluate leapview healthcheck
docker logs leapview-evaluate

# Safe cleanup: remove the container but retain its state.
docker rm --force leapview-evaluate

# Destructive cleanup: remove the persisted evaluation state.
docker volume rm leapview-evaluate

Download a production operations bundle

The bundles contain the native leapviewctl controller, Compose definitions, pinned image reference, Caddy HTTPS configuration, executable qualification workflow, release identity, and internal checksums.

VERSION='v0.2.0-rc.1'
case "$(uname -s)" in
  Linux) OS=linux ;;
  Darwin) OS=darwin ;;
  *) echo "unsupported OS: $(uname -s)" >&2; exit 1 ;;
esac
case "$(uname -m)" in
  x86_64|amd64) ARCH=amd64 ;;
  arm64|aarch64) ARCH=arm64 ;;
  *) echo "unsupported architecture: $(uname -m)" >&2; exit 1 ;;
esac
ARCHIVE="leapview-compose-${VERSION}-${OS}-${ARCH}.tar.gz"
BASE="https://github.com/Yacobolo/leapview/releases/download/${VERSION}"
curl --fail --location --remote-name "$BASE/$ARCHIVE"
curl --fail --location --remote-name "$BASE/$ARCHIVE.sha256"
if command -v sha256sum >/dev/null 2>&1; then
  sha256sum --check "$ARCHIVE.sha256"
else
  shasum -a 256 --check "$ARCHIVE.sha256"
fi
tar -xzf "$ARCHIVE"
cd "${ARCHIVE%.tar.gz}"
if command -v sha256sum >/dev/null 2>&1; then
  sha256sum --check SHA256SUMS
else
  shasum -a 256 --check SHA256SUMS
fi
cat release-identity.json
./leapviewctl version --json

All checksum checks must report OK. The identity files, controller, OCI labels, and container version --json output must agree on the version and full source revision, with "dirty": false and "development": false.

Initialize and operate one durable instance

Additional production prerequisites: Docker Compose v2, a DNS hostname pointing to this host, ports 80/443 reachable when using bundled Caddy, durable secret storage, and encrypted off-host backup storage.

cp deployment.env.example deployment.env
./leapviewctl init \
  --admin-email admin@example.com \
  --domain dash.example.com \
  --environment prod
./leapviewctl start
./leapviewctl status
./leapviewctl first-login

Initialization validates production configuration, generates secrets, creates the state volume, and derives LEAPVIEW_PUBLIC_URL=https://dash.example.com. Replace both example values before running it. The default Caddy overlay obtains HTTPS automatically. Use --no-https only behind an existing trusted HTTPS reverse proxy; secure cookies and the public HTTPS origin remain required.

The instance starts empty. Authored source files and customer data are not automatically active: deploy your own project after initialization. The synthetic workspace is available only through the disposable evaluate path and the bundled qualification workflow.

Common operations:

./leapviewctl status
./leapviewctl logs
./leapviewctl backup
./leapviewctl restore backups/leapview-<timestamp>.tar.gz
./leapviewctl upgrade ghcr.io/yacobolo/leapview@sha256:<compatible-new-digest>
./leapviewctl rollback --confirm

backup creates and validates a full-instance archive. Restore while no other process owns the state. Upgrades pair an image change with a state checkpoint and automatically recover after a failed health check. Manual rollback is destructive to state created after the checkpoint and therefore requires --confirm.

Before adoption, run the archive's exact installed-candidate workflow:

./qualification/qualify.sh

It verifies anonymous distribution, identity, real initialization, first login, the five-minute sample, governed access and denial auditing, restart persistence, performance/resource budgets, interruption recovery, backup, and isolated restore. It emits bounded redacted evidence and removes its isolated containers, volumes, and credentials on exit.

Supply-chain verification

Install the GitHub CLI, authenticate only to the GitHub API if required by your environment, and verify the signed GitHub build provenance stored with the public OCI image:

IMAGE='ghcr.io/yacobolo/leapview@sha256:8b32fc291c86005c69c2ca1fa673dcaa4cb84d39cfc951e065a2775b122f81d9'
gh attestation verify "oci://$IMAGE" \
  --repo Yacobolo/leapview \
  --signer-workflow Yacobolo/leapview/.github/workflows/release.yml \
  --source-digest dfb3086d59284c6597180e99a7d07f41e36a7f7e \
  --bundle-from-oci
docker buildx imagetools inspect "$IMAGE" --format '{{ json .SBOM }}' > sbom.json

Verification must identify the release workflow and exact source revision. The attached SPDX SBOM covers each runtime architecture.

Compatibility and known limitations

  • This is a controlled-testing candidate, not GA.
  • v0.1.0 state is fresh-install-only. Do not point this package at a v0.1.0 volume and do not pass the v0.1.0 image to leapviewctl upgrade. Preserve the old image, configuration, volume, and its own backup; provision fresh v0.2.0-rc.1 state, then redeploy projects, reload source data, and reprovision identities and grants.
  • Single-node/single-process operation only. HA, multi-node topology, availability SLA, Wails desktop distribution, every external connector/IdP/cloud topology, and every AI-model-dependent workflow are outside this candidate's scope.
  • The public leapview.dev documentation deployment is currently unavailable because its DNS/TLS endpoint is not configured for the generated site. Until that release blocker is resolved, use this release page and the version-matched README.md and QUALIFICATION.md inside the downloaded archive.
  • In the archived QUALIFICATION.md performance table, the filter and table ceilings are stale. The executable, authoritative qualification/performance-policy.json correctly enforces 5,000 ms and 2,000 ms respectively; all other displayed ceilings agree. This documentation defect is retained here rather than rewriting the immutable artifact.

Report reproducible findings with the version, immutable image digest, host OS/architecture, first failing step, and redacted evidence. Never attach credentials, cookies, tokens, leapview.env, or browser storage state.

Full changelog: v0.1.0...v0.2.0-rc.1