Files
proxmox/scripts/validation/validate-economics-strategy-json.sh
defiQUG dbd517b279 Sync workspace: config, docs, scripts, CI, operator rules, and submodule pointers.
- Update dbis_core, cross-chain-pmm-lps, explorer-monorepo, metamask-integration, pr-workspace/chains
- Omit embedded publish git dirs and empty placeholders from index

Made-with: Cursor
2026-04-12 06:12:20 -07:00

38 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# Validate economics toolkit strategy JSON files (parse-only via CLI).
# Optional: check-jsonschema against packages/economics-toolkit/config/strategy.schema.json when installed.
# Usage: bash scripts/validation/validate-economics-strategy-json.sh
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
cd "$PROJECT_ROOT"
CLI="$PROJECT_ROOT/packages/economics-toolkit/dist/cli.js"
SCHEMA="$PROJECT_ROOT/packages/economics-toolkit/config/strategy.schema.json"
if [[ ! -f "$CLI" ]]; then
pnpm run economics:build
fi
FILES=(
"$PROJECT_ROOT/packages/economics-toolkit/config/strategy-smoke.json"
"$PROJECT_ROOT/packages/economics-toolkit/config/strategy-template.json"
)
for f in "${FILES[@]}"; do
if [[ ! -f "$f" ]]; then
echo "[ERROR] Missing $f" >&2
exit 1
fi
node "$CLI" strategy validate --file "$f" --quiet
done
if command -v check-jsonschema &>/dev/null && [[ -f "$SCHEMA" ]]; then
for f in "${FILES[@]}"; do
check-jsonschema --schemafile "$SCHEMA" "$f" >/dev/null
done
fi
exit 0