Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
3d0b66d
test(ppl-lint): add invalid-capture-group-name validation contract
Jul 25, 2026
4799935
feat(ci): validate default-error PPL lint rules across engine versions
Jul 25, 2026
da0fa6d
fix(ci): stop the multi-version lint check from passing vacuously
Jul 25, 2026
2b505e9
fix(ci): forward ppl.lint.* system properties to the test JVM by prefix
Jul 26, 2026
2edc319
test(ppl-lint): pin per-version rejection shapes observed on 3.6 and 3.7
Jul 26, 2026
33a3ffe
fix(ci): treat a missing version expectation as an observation, not a…
Jul 26, 2026
c2920cc
fix(ci): do not report an unsupported command as a too-narrow version…
Jul 26, 2026
03ae9ed
fix(ci): apply the unobserved-verdict rule to the out-of-scope path too
Jul 26, 2026
052fbb1
test(ci): TEMPORARY drift probe — do not merge
Jul 27, 2026
7cf8df2
Revert "test(ci): TEMPORARY drift probe — do not merge"
Jul 27, 2026
35ed509
feat(ci): surface PPL lint drift as GitHub annotations
Jul 27, 2026
4f9b599
feat(ci): validate the compiled-simplified lint surface too
Jul 27, 2026
0050f83
feat(ci): add compiled-surface legs for engines below the grammar floor
Jul 27, 2026
152fc2c
fix(ci): stop the index wipe racing plugin initialization
Jul 27, 2026
ead9ae0
test(ci): probe the framework's startup requests on a compiled leg
Jul 27, 2026
f7f4e8b
test(ci): probe HTTP/2 negotiation on a pre-3.x engine
Jul 27, 2026
4c80f7b
fix(test): pin the REST test client to HTTP/1.1
Jul 27, 2026
70e7b03
fix(ci): tell a partial engine fix from a full one before advising ve…
Jul 27, 2026
aef2c1a
feat(ci): harvest a discovery corpus so trigger coverage can support …
Jul 27, 2026
2ec07ac
feat(ci): harvest each test file's lint context so context-gated rule…
Jul 27, 2026
f35ad5c
fix(test): write the target manifest even without a grammar bundle
Jul 27, 2026
000d4fe
fix(ci): run discovery on the runtime-bundle surface, not only the co…
Jul 27, 2026
a19bdf6
test(ppl-lint): add a second trigger to every enforced contract that …
Jul 27, 2026
98c6d12
test(ci): probe REST client connectivity from a JVM
Jul 27, 2026
aa6e981
test(ppl-lint): run the whole contract corpus on every PR, not just t…
Jul 27, 2026
6f1d6dd
fix(ci): make the connectivity probe actually run
Jul 27, 2026
f70929e
fix(ppl-lint): scope the trigger differential to rules the engine act…
Jul 27, 2026
e5dec9d
fix(test): make the connectivity probe discoverable
Jul 27, 2026
252876d
test(ci): validate the latest patch of each line, and probe client va…
Jul 27, 2026
1969648
fix(test): tolerate a pre-Calcite engine in observe-only mode
Jul 27, 2026
e46d1ec
fix(test): skip the whole Calcite settings family on a pre-Calcite en…
Jul 27, 2026
5a3cd06
revert(test): un-pin the REST client from HTTP/1.1
Jul 27, 2026
042a123
test(ppl-lint): pin dense_rank's 3.7 rejection wording
Jul 27, 2026
60f8672
feat(ci): observe PPL lint contracts on analytics engine
Jul 28, 2026
a20046c
fix(ci): follow current analytics artifact names
Jul 28, 2026
814517b
fix(ci): harden analytics lint observation
Jul 28, 2026
5576c8a
fix(ci): resolve analytics lint contracts
Jul 28, 2026
e44dfdb
fix(ci): support append-only analytics fixtures
Jul 28, 2026
288eb5a
test(analytics): preserve bulk separators
Jul 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,181 changes: 1,181 additions & 0 deletions .github/workflows/ppl-lint-multiversion-validation.yml

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions .github/workflows/ppl-lint-rule-validation.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
name: PPL lint rule validation

permissions:
contents: read

concurrency:
group: ppl-lint-rule-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

# Cross-repository check: the OpenSearch-Dashboards (OSD) PPL lint detectors and
# the SQL backend must agree on the SAME candidate runtime grammar. A shared,
# reviewed corpus of contract files pins each rule's OSD detector diagnostic
Expand Down Expand Up @@ -134,6 +141,8 @@ jobs:
su "$(id -un 1000)" -c "./gradlew :integ-test:integTest \
--tests org.opensearch.sql.calcite.remote.PplLintRuleValidationIT \
-Dppl.lint.schedule=${{ steps.schedule.outputs.value }} \
-Dppl.lint.execution_backend=standard \
-Dppl.lint.sql_sha=${GITHUB_SHA} \
-Dppl.lint.report=$(pwd)/backend-report.json \
-Dppl.lint.grammar.bundle=$(pwd)/ppl-grammar-bundle.json \
-Dppl.lint.target=$(pwd)/target.json"
Expand Down
Loading
Loading