Skip to content

Releases: layerx-labs/chain-cast

1.2.1

08 Jan 11:51

Choose a tag to compare

Added

  • DSL Compiler (castc): YAML-based domain-specific language for pipeline definitions
    • New CLI tool (castc) with compile, validate, and decompile commands
    • YAML parser for human-readable pipeline configurations
    • AST-based compiler with comprehensive validation
    • Decompiler to convert JSON programs back to YAML
    • Template transformers for variable interpolation
    • Comprehensive DSL documentation (doc/DSL-GUIDE.md)
    • Full test suite for DSL components (cli, compiler, decompiler, parser, validator, transformers)
  • New dependencies: commander for CLI, yaml for YAML parsing
  • New example: examples/lx-token-monitor.json for $LX token monitoring on Ethereum mainnet

Changed

  • Docker: Changed from Alpine to Debian base image for Prisma/OpenSSL compatibility
  • Updated dependencies to latest semver-compatible versions:
    • typescript: 5.0.4 → 5.9.3
    • viem: 2.21.0 → 2.43.5
    • zod: 3.21.4 → 3.25.76
    • @elastic/elasticsearch: 8.8.1 → 8.19.1
    • axios: 1.4.0 → 1.13.2
    • graphql: 16.6.0 → 16.12.0
    • And other minor updates
  • Updated GETTING-STARTED.md to use Ethereum mainnet ($LX token) instead of Ganache
  • Updated README with DSL programming guide reference and custom pipelines section
  • Updated README with universal event support clarification
  • Updated CLAUDE.md with local development instructions (Anvil/Hardhat)

Removed

  • Ganache dependency and related scripts (ganache:dev, setup:ganache)

1.2.0

08 Jan 11:53
d17edda

Choose a tag to compare

Added

  • Comprehensive unit test suite with 80%+ coverage
    • VM and instruction tests
    • GraphQL resolver tests
    • Service layer tests (ChainCast Manager, Secret Manager)
    • Utility function tests
  • Test mocks for external services (Prisma, viem, logging)
  • Test fixtures for casts, events, and programs
  • New viem-client.ts module for blockchain interactions
  • Object utility helpers in src/lib/object.ts
  • Webhook integration for swap events (TKAI-BEPRO to Zapier)
  • CLAUDE.md development guide for AI assistants
  • Governance presentation documentation

Changed

  • Runtime Migration: Migrated from Node.js to Bun for improved performance
    • Replaced ts-node-dev with bun --watch
    • Updated all scripts to use Bun runtime
    • Replaced Jest with Bun's built-in test framework
  • Blockchain Library: Replaced ethers.js and @taikai/dappkit with viem
    • TypeScript-first approach with better type safety
    • Improved performance and smaller bundle size
    • Updated Contract Event Retriever to use viem clients
    • Updated Contract Listener to use viem
  • Linting/Formatting: Migrated from ESLint + Prettier to Biome
    • Single configuration file (biome.json)
    • 10-100x faster linting and formatting
    • Auto-organized imports
    • Removed 14 ESLint/Prettier dependencies
  • CI/CD: Upgraded GitHub Actions
    • Updated setup-bun to v2
    • Updated codecov-action to v5
    • Renamed workflow from node.js.yml to ci-cd.yml
  • Improved TypeScript configuration with stricter settings
  • Enhanced error handling with proper type annotations
  • Refactored logging service for better modularity

Removed

  • Node.js-specific dependencies (ts-node, ts-node-dev, tsconfig-paths)
  • ESLint and Prettier configuration files and dependencies
  • Jest configuration and dependencies
  • contract-listener-factory.ts (consolidated into contract-listener)
  • model-factory.ts (no longer needed)
  • @taikai/dappkit dependency
  • package-lock.json (replaced with bun.lock)

Fixed

  • TypeScript catch clause type annotations (catch (e: unknown))