Skip to content

Commit 7a2fee3

Browse files
committed
ci(alloy): add optional multi-chain full-scope
1 parent 2eef232 commit 7a2fee3

2 files changed

Lines changed: 20 additions & 0 deletions

File tree

alloy/check_fbf_where.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
55
ALS="/work/gfql_fbf_where.als"
66
IMAGE="local/alloy6:latest"
77
FULL=${FULL:-0}
8+
MULTI=${MULTI:-0}
89

910
# Build image if missing
1011
if ! docker image inspect "$IMAGE" >/dev/null 2>&1; then
@@ -23,3 +24,8 @@ fi
2324
for ASSERT in SpecNoWhereEqAlgoNoWhereMultiChain SpecWhereEqAlgoLoweredMultiChain SpecWhereEqAlgoLoweredFan SpecWhereEqAlgoLoweredCycle SpecWhereEqAlgoLoweredParallel SpecWhereEqAlgoLoweredDisconnected SpecWhereEqAlgoLoweredAliasWhere SpecWhereEqAlgoLoweredMixedWhere SpecWhereEqAlgoLoweredFilterMix; do
2425
docker run --rm -v "$HERE":/work "$IMAGE" exec -c "$ASSERT" -o - "$ALS"
2526
done
27+
28+
if [ "$MULTI" = "1" ]; then
29+
docker run --rm -v "$HERE":/work "$IMAGE" exec -c SpecNoWhereEqAlgoNoWhereMultiChainFull -o - "$ALS"
30+
docker run --rm -v "$HERE":/work "$IMAGE" exec -c SpecWhereEqAlgoLoweredMultiChainFull -o - "$ALS"
31+
fi

alloy/gfql_fbf_where.als

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,16 @@ assert SpecWhereEqAlgoLoweredMultiChain {
160160
Algo[c] and SpecAlgoEq[c]
161161
}
162162

163+
assert SpecNoWhereEqAlgoNoWhereMultiChainFull {
164+
all c: Chain |
165+
Algo[c] and (no c.wheres implies SpecAlgoEq[c])
166+
}
167+
168+
assert SpecWhereEqAlgoLoweredMultiChainFull {
169+
all c: Chain |
170+
Algo[c] and SpecAlgoEq[c]
171+
}
172+
163173
// Convenience aliases for alternate scopes
164174
assert SpecNoWhereEqAlgoNoWhereSmall {
165175
all c: Chain |
@@ -244,6 +254,10 @@ check SpecWhereEqAlgoLoweredSmall for 4 but 3 Step, 3 Value, 3 Binding, 4 Node,
244254
check SpecNoWhereEqAlgoNoWhereMultiChain for 4 but 3 Step, 3 Value, 2 Binding, 4 Node, 4 Edge, 2 Chain
245255
check SpecWhereEqAlgoLoweredMultiChain for 4 but 3 Step, 3 Value, 2 Binding, 4 Node, 4 Edge, 2 Chain
246256

257+
// Multi-chain fuller scope (optional; gated via script env to keep runtime predictable)
258+
check SpecNoWhereEqAlgoNoWhereMultiChainFull for 8 but 4 Step, 4 Value, 4 Binding, 2 Chain
259+
check SpecWhereEqAlgoLoweredMultiChainFull for 8 but 4 Step, 4 Value, 4 Binding, 2 Chain
260+
247261
// Scenario-specific coverage (smaller scopes to keep solving fast)
248262
check SpecWhereEqAlgoLoweredFan for 6 but 3 Step, 3 Value, 3 Binding, 6 Node, 6 Edge, 1 Chain
249263
check SpecWhereEqAlgoLoweredCycle for 6 but 3 Step, 3 Value, 3 Binding, 6 Node, 6 Edge, 1 Chain

0 commit comments

Comments
 (0)