1.8.2 (2026-05-29)
1.8.1 (2026-05-29)
1.8.0 (2026-05-29)
1.7.1 (2026-05-29)
1.7.0 (2026-05-28)
- add JSDoc to all public API functions (#316) (eca0923)
- complete OpenAPI 3.0 spec for all API endpoints (#307) (e15d906)
- document public verifier API for third-party integrations (#313) (9eb74ff)
1.6.0 (2026-05-28)
1.5.0 (2026-05-28)
1.4.0 (2026-05-28)
1.3.0 (2026-05-28)
1.2.0 (2026-05-28)
1.1.0 (2026-05-28)
- responsive dashboard, certificate detail page, toast notifications, and accessibility improvements (704c0a5)
- #12: add toast notification system for transaction feedback (c3ae97c), closes #12
- #13: implement certificate retirement flow in the UI (093620a), closes #13
- #14: add chart visualizations for energy generation over time (5a35ae7), closes #14
- add /certificate/[id] chain-of-custody detail page (cb622a8)
- add audit registry deduplication + local Soroban integration scripts (3db8f31)
- add automated CodeQL security scanning (#88) (8021a4f)
- add copy-to-clipboard functionality for IDs and hashes (c35dd6a), closes #23
- add Docker Compose setup for local development (#82) (6c6fb8b)
- add npm and cargo audit to CI pipeline (#91) (24549f0)
- add OpenAPI spec, /api/docs endpoint, Swagger UI, and CI validation (#107) (ed079cf)
- add POST /api/readings/batch endpoint (514e01f)
- add real-time dashboard updates with WebSocket support (091499c), closes #9
- add Redis/Upstash caching for certificate queries (#43) (a7f7583)
- add Vercel Analytics and Speed Insights (#94) (e79473c)
- api: append-only audit_log for operator actions (767e161), closes #44
- api: implement CORS policy for API routes (235e9b8), closes #46
- api: implement Ed25519 signature verification in POST /api/readings (#26) (6f92870)
- api: implement idempotency for meter reading submissions (#28) (8c8ebc2)
- api: implement webhook notifications for certificate events (#38) (b2a5323)
- api: retry with exponential backoff for anchor/mint transactions (89294a1), closes #31
- auth: implement JWT + Supabase Auth for operator routes (#40) (94311fc)
- backup: daily pg_dump to S3 with 30-day retention and Slack alerts (#90) (bb7d2de)
- bitmap vote storage for community_governance (#71) (6b9378d)
- configurable quorum_bps and threshold_bps in community_governance (#64) (9cb685b)
- configure Vercel preview deployments for every PR (#78) (ad997f7)
- contracts: add multisig_admin contract for 2-of-3 admin ops (#69) (740383b)
- contracts: add version tracking and migration support (#70) (b057beb)
- contracts: cargo-fuzz targets for mint, anchor, vote (30ffc81), closes #67
- contracts: emit events for mint/retire/anchor/propose/vote (b4cc652), closes #60
- cursor-based paginated certificate list at /certificates (1d55113)
- energy_token: implement retire() for REC compliance (#54) (842042a)
- env var validation at startup with @t3-oss/env-nextjs (#79) (f386b18)
- governance: add contract upgrade mechanism with 48h timelock (f335d8c), closes #55
- governance: add proposal execution timelock (#65) (e2ed39e)
- health: comprehensive health check endpoint with DB + Stellar RPC checks (#45) (c0ebc47)
- implement POST /api/certificates/[id]/retire (#34) (1d7e055)
- implement SEP-41 token interface compliance for energy_token (#61) (d9788f9)
- implement Supabase RLS for multi-operator isolation (#36) (5e7bdf2)
- implement token transfer pause mechanism (#66) (e7fc62a)
- infra: set up staging environment on Vercel (#89) (7ad4dae)
- initial SolarProof — cryptographic renewable energy certification (404fce6)
- integrate Sentry error monitoring in Next.js app (#83) (da4fe77)
- load Stellar signing key from AWS Secrets Manager with rotation support (7b81c1a), closes #50
- meters: add meter management UI and API routes (e379c87), closes #18
- migrations: add rollback scripts and operator_sessions migration (#37) (d0e432c)
- mobile responsive, skeleton loaders, dark mode, ARIA a11y (ae45c53)
- monitoring: add uptime checks for /api/health and /verify (#84) (cd5d44e)
- optimize audit_registry storage — hash-only on-chain (#59) (6f233cd)
- overflow protection for energy_token mint arithmetic (#51) (9857d35)
- pin Rust toolchain and harden CI for Soroban contracts (#77) (d61094a)
- pre-flight account and trustline checks before mint (7de0635)
- queue: async Stellar transaction queue with job status API (0fc6c1d), closes #42
- rate limiting, meter name, tracer-sim, verify chain-of-custody (5b2f413), closes #27 #30 #32 #35
- resolve issues #10 #15 #16 #17 — i18n, governance form, voting UI, verify stepper (b7ecc3b)
- scripts: add idempotent deploy-testnet and deploy-mainnet scripts (e7c4855), closes #63
- stellar: add 10s timeout and circuit breaker to all RPC calls (866fffe), closes #41
- structured log aggregation via Logtail (Better Stack) (23bc6ac), closes #92
- structured logging, API versioning, pagination, governance tests (7b74132), closes #33 #39 #47 #58
- Supabase IaC migrations and CI validation (#95) (302f23e)
- web: add custom 404 and 500 error pages (d8d9895), closes #22
- web: make contract addresses and network config env-configurable (#62) (b393066)
- #11: persist Freighter wallet connection state across page refreshes (32045d4), closes #11
- a11y: improve keyboard accessibility on verify page (1751ba4)
- add error boundaries to isolate component failures (39f715b)
- add input validation to verify and retire API routes (#29) (4ea58a6)
- add spinner and disable buttons during form submission (7ef2928), closes #21
- audit-registry: add access control to anchor() (a042f18), closes #52
- cargo fmt, Rust 1.88.0 toolchain, remove pnpm version conflict (ea5a393)
- ci: commit pnpm lockfile for frozen-lockfile enforcement (#86) (0752cbd)
- governance: add reentrancy guard to vote() (0e051d2), closes #53
- regenerate lockfile, bump rust-toolchain.toml to 1.88.0 (158d740)
- remove empty with: blocks from pnpm/action-setup steps (b8ebced)
- resolve all build, type, and lint errors (8a67ea0)
- resolve issues #19, #20, #24, #25 (78448aa)
- secrets management - placeholder .env.example + secret scanning (#85) (17435bd)
- add API reference for all endpoints (#96) (d66dbe4)
- add contract deployment guide and deployments.md (#108) (e084e5e)
- add descriptions and examples to .env.example (#105) (e834f15)
- add developer onboarding guide (#97) (3b77c50)
- add end-user guide for public verifier (#106) (a151440)
- adr: add ADR template, index, and 4 ADRs (#99) (28db52c)
- contracts: add interface and error code docs for all three contracts (b6d39fd), closes #98
- contracts: add NatSpec-style doc comments to all public functions (#68) (ed9a056)
- expand CONTRIBUTING.md with branch naming, commit format, PR checklist, and review expectations (b26a136), closes #100
- prepare contracts for security audit (#75) (295766b)
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Maintenance note: This file is updated automatically by semantic-release on every release from
main. To add an entry manually, follow the format below and open a PR.
- STRIDE-based threat model (
docs/THREAT_MODEL.md) covering 13 attack vectors across all 6 STRIDE categories (#110) - TSDoc comments and inline explanations on all exported functions in
packages/stellar/src/index.ts,apps/web/src/lib/stellar.ts, andapps/web/src/lib/crypto.ts(#103) - Vitest unit tests for
buildTransaction,anchorReading(build_anchor_tx),mintCertificates(build_mint_tx), andretireCertificate(build_retire_tx) with mocked Stellar RPC (#118)
1.0.0 — 2026-04-21
- End-to-end cryptographic proof pipeline: Ed25519 meter signing → on-chain anchor → certificate minting → retirement
- Three Soroban smart contracts:
energy_token(SEP-41),audit_registry,community_governance packages/stellarshared utilities:buildTransaction,kwhToStroops,stroopsToKwh,addressToScVal,amountToScVal,bytesToScVal- Next.js 15 web app with dashboard, public verifier (
/verify), and API routes POST /api/readingsendpoint: verifies Ed25519 signature, anchors hash, mints certificates- tracer-sim integration for automatic diagnosis of failed Soroban transactions
- Supabase backend for off-chain reading storage and meter registry
- Docker Compose stack (Next.js + Supabase + Redis) for local development
- Meter simulation scripts (
scripts/gen-meter-key.mjs,scripts/send-reading.mjs) - CI workflow with GitHub Actions (lint, type-check, build, contract tests)
- Gitleaks secret-scanning workflow
- semantic-release configuration for automated versioning and changelog generation
- Architecture Decision Records (
docs/adr/) - API reference (
docs/API.md), deployment guide (docs/DEPLOYMENT.md), onboarding guide (docs/ONBOARDING.md)