- 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
38 lines
1.1 KiB
Bash
Executable File
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
|