diff --git a/.github/scripts/landing-constants-guard.sh b/.github/scripts/landing-constants-guard.sh index 9cdb56804..7ff3b42ac 100755 --- a/.github/scripts/landing-constants-guard.sh +++ b/.github/scripts/landing-constants-guard.sh @@ -52,6 +52,17 @@ if [ -z "${VERSION:-}" ]; then VERSION="$(git tag --list 'v1.0.0-rc.*' 2>/dev/null | sort -V | tail -1 | sed 's/^v//')" fi +# The tree's own version (engine/Cargo.toml). A release PR stamps the footers +# with the version it is cutting BEFORE that version's tag exists, so requiring +# tag-equality on a release branch is unsatisfiable by construction — rc.76 +# dodged it only by cutting directly on main, which skipped every release gate +# (#474). A footer matching the version of the tree it ships in is +# self-consistent, not drift; the stale-footer drift this check exists for is a +# footer matching NEITHER the tag NOR the tree. The allowed set is therefore +# {newest released tag, engine/Cargo.toml version} — which collapses to just +# the tag on every non-release branch. +TREE_VERSION="$(awk -F'"' '/^version = /{print $2; exit}' engine/Cargo.toml 2>/dev/null || true)" + fails=0 note() { printf ' %s\n' "$1"; } fail() { printf 'FAIL %s\n' "$1"; fails=$((fails + 1)); } @@ -114,15 +125,20 @@ rm -f /tmp/.lcg_conf.$$ # falsify a real run. Only the footer claims "this is the current release". if [ -n "${VERSION:-}" ]; then vre="$(echo "$VERSION" | sed 's/\./\\./g')" + tre="$(printf '%s' "$TREE_VERSION" | sed 's/\./\\./g')" + allow_ver="V${vre}([^0-9]|$)" + if [ -n "$tre" ] && [ "$tre" != "$vre" ]; then + allow_ver="V(${vre}|${tre})([^0-9]|$)" + fi bad_ver="$(grep -rniE 'XERJ\.AI[^<]*V1\.0\.0-RC\.?[0-9]+' "$LANDING" --include='*.html' 2>/dev/null \ - | grep -viE "V${vre}([^0-9]|$)" \ + | grep -viE "$allow_ver" \ | grep -v ' diff --git a/landing/blog/does-xerj-beat-jev.html b/landing/blog/does-xerj-beat-jev.html index 8dd35feec..5b42bcb7f 100644 --- a/landing/blog/does-xerj-beat-jev.html +++ b/landing/blog/does-xerj-beat-jev.html @@ -763,7 +763,7 @@

Reprod diff --git a/landing/blog/index.html b/landing/blog/index.html index 84323a13b..248fc353d 100644 --- a/landing/blog/index.html +++ b/landing/blog/index.html @@ -294,7 +294,7 @@

Does XERJ beat JEV? On the bill, outright. On FiQA, no.

diff --git a/landing/docs/agents/endpoints.html b/landing/docs/agents/endpoints.html index df6221d74..b7272b512 100644 --- a/landing/docs/agents/endpoints.html +++ b/landing/docs/agents/endpoints.html @@ -472,7 +472,7 @@

Data endpoints the ops build on

diff --git a/landing/docs/agents/index.html b/landing/docs/agents/index.html index d27e73724..a1faf8847 100644 --- a/landing/docs/agents/index.html +++ b/landing/docs/agents/index.html @@ -322,7 +322,7 @@

What is honest to claim

diff --git a/landing/docs/agents/quickstart.html b/landing/docs/agents/quickstart.html index f3ecbaa4c..5ddfafd53 100644 --- a/landing/docs/agents/quickstart.html +++ b/landing/docs/agents/quickstart.html @@ -380,7 +380,7 @@

Clean up

diff --git a/landing/docs/aggregations.html b/landing/docs/aggregations.html index e560e2e0e..2c363c2e8 100644 --- a/landing/docs/aggregations.html +++ b/landing/docs/aggregations.html @@ -322,7 +322,7 @@

Request shape

@@ -380,7 +380,7 @@

Request shape

diff --git a/landing/docs/analyzers.html b/landing/docs/analyzers.html index 179822161..6329e9b29 100644 --- a/landing/docs/analyzers.html +++ b/landing/docs/analyzers.html @@ -248,7 +248,7 @@

Per-field override

@@ -306,7 +306,7 @@

Per-field override

diff --git a/landing/docs/api-es-compat.html b/landing/docs/api-es-compat.html index 4a33aa7ca..5c1cd26d9 100644 --- a/landing/docs/api-es-compat.html +++ b/landing/docs/api-es-compat.html @@ -351,7 +351,7 @@

Bulk indexing example

@@ -409,7 +409,7 @@

Bulk indexing example

diff --git a/landing/docs/api-native.html b/landing/docs/api-native.html index 9f7848c11..35c93d8b1 100644 --- a/landing/docs/api-native.html +++ b/landing/docs/api-native.html @@ -303,7 +303,7 @@

Request body shape — /v1/indices/:name/search

@@ -361,7 +361,7 @@

Request body shape — /v1/indices/:name/search

diff --git a/landing/docs/backup-restore.html b/landing/docs/backup-restore.html index 623d65835..73f7659fe 100644 --- a/landing/docs/backup-restore.html +++ b/landing/docs/backup-restore.html @@ -288,7 +288,7 @@

Clustered backup

@@ -346,7 +346,7 @@

Clustered backup

diff --git a/landing/docs/cli.html b/landing/docs/cli.html index bd13bba74..6552abe01 100644 --- a/landing/docs/cli.html +++ b/landing/docs/cli.html @@ -327,7 +327,7 @@

xerj mcp

@@ -385,7 +385,7 @@

xerj mcp

diff --git a/landing/docs/clustering.html b/landing/docs/clustering.html index 6b41c54c2..9a79edfd9 100644 --- a/landing/docs/clustering.html +++ b/landing/docs/clustering.html @@ -343,7 +343,7 @@

When not to cluster

@@ -401,7 +401,7 @@

When not to cluster

diff --git a/landing/docs/compression.html b/landing/docs/compression.html index f6da7af3f..86e9c98a4 100644 --- a/landing/docs/compression.html +++ b/landing/docs/compression.html @@ -252,7 +252,7 @@

Column encodings

@@ -310,7 +310,7 @@

Column encodings

diff --git a/landing/docs/config.html b/landing/docs/config.html index ddcd60814..0f4927b63 100644 --- a/landing/docs/config.html +++ b/landing/docs/config.html @@ -359,7 +359,7 @@

[rerank]

@@ -417,7 +417,7 @@

[rerank]

diff --git a/landing/docs/env.html b/landing/docs/env.html index 98e340828..bcfb49e75 100644 --- a/landing/docs/env.html +++ b/landing/docs/env.html @@ -264,7 +264,7 @@

Rerank provider

@@ -322,7 +322,7 @@

Rerank provider

diff --git a/landing/docs/index.html b/landing/docs/index.html index 822e00055..69cc8221e 100644 --- a/landing/docs/index.html +++ b/landing/docs/index.html @@ -356,7 +356,7 @@

Start here

@@ -414,7 +414,7 @@

Start here

diff --git a/landing/docs/ingest.html b/landing/docs/ingest.html index a2108876f..ac677857e 100644 --- a/landing/docs/ingest.html +++ b/landing/docs/ingest.html @@ -254,7 +254,7 @@

Back-pressure

@@ -312,7 +312,7 @@

Back-pressure

diff --git a/landing/docs/install.html b/landing/docs/install.html index e4a1eba3f..f33b39dc0 100644 --- a/landing/docs/install.html +++ b/landing/docs/install.html @@ -338,7 +338,7 @@

Docker

@@ -396,7 +396,7 @@

Docker

diff --git a/landing/docs/metrics.html b/landing/docs/metrics.html index c9fffe0e7..30c932fba 100644 --- a/landing/docs/metrics.html +++ b/landing/docs/metrics.html @@ -267,7 +267,7 @@

Scrape config

@@ -325,7 +325,7 @@

Scrape config

diff --git a/landing/docs/migration-from-es.html b/landing/docs/migration-from-es.html index f5157b6c6..2e95a594a 100644 --- a/landing/docs/migration-from-es.html +++ b/landing/docs/migration-from-es.html @@ -289,7 +289,7 @@

A 10-minute migration

@@ -347,7 +347,7 @@

A 10-minute migration

diff --git a/landing/docs/operations.html b/landing/docs/operations.html index 66ee56cf3..e54d49701 100644 --- a/landing/docs/operations.html +++ b/landing/docs/operations.html @@ -328,7 +328,7 @@

File descriptors

@@ -386,7 +386,7 @@

File descriptors

diff --git a/landing/docs/playbooks/full-text.html b/landing/docs/playbooks/full-text.html index 92f87e5bf..7d224da26 100644 --- a/landing/docs/playbooks/full-text.html +++ b/landing/docs/playbooks/full-text.html @@ -283,7 +283,7 @@

Filtered search with facets

@@ -341,7 +341,7 @@

Filtered search with facets

diff --git a/landing/docs/playbooks/log-analytics.html b/landing/docs/playbooks/log-analytics.html index 7535d8a7a..15592ece6 100644 --- a/landing/docs/playbooks/log-analytics.html +++ b/landing/docs/playbooks/log-analytics.html @@ -291,7 +291,7 @@

Dashboard

@@ -349,7 +349,7 @@

Dashboard

diff --git a/landing/docs/playbooks/observability.html b/landing/docs/playbooks/observability.html index b07062da0..9cc591168 100644 --- a/landing/docs/playbooks/observability.html +++ b/landing/docs/playbooks/observability.html @@ -289,7 +289,7 @@

Dashboards

@@ -347,7 +347,7 @@

Dashboards

diff --git a/landing/docs/playbooks/siem.html b/landing/docs/playbooks/siem.html index 8672e2a30..89ac613de 100644 --- a/landing/docs/playbooks/siem.html +++ b/landing/docs/playbooks/siem.html @@ -341,7 +341,7 @@

Dashboard

@@ -399,7 +399,7 @@

Dashboard

diff --git a/landing/docs/playbooks/vector-search.html b/landing/docs/playbooks/vector-search.html index d1d670a5a..6a911cca1 100644 --- a/landing/docs/playbooks/vector-search.html +++ b/landing/docs/playbooks/vector-search.html @@ -299,7 +299,7 @@

Dashboards

@@ -357,7 +357,7 @@

Dashboards

diff --git a/landing/docs/queries.html b/landing/docs/queries.html index fc2742276..37e0ad406 100644 --- a/landing/docs/queries.html +++ b/landing/docs/queries.html @@ -322,7 +322,7 @@

Recognised and rejected

@@ -380,7 +380,7 @@

Recognised and rejected

diff --git a/landing/docs/quickstart.html b/landing/docs/quickstart.html index 8b2d87fdc..da5e66311 100644 --- a/landing/docs/quickstart.html +++ b/landing/docs/quickstart.html @@ -284,7 +284,7 @@

5 · Scrape metrics

@@ -342,7 +342,7 @@

5 · Scrape metrics

diff --git a/landing/docs/recipes/agentic-memory.html b/landing/docs/recipes/agentic-memory.html index 00c79075a..2ed87d49d 100644 --- a/landing/docs/recipes/agentic-memory.html +++ b/landing/docs/recipes/agentic-memory.html @@ -424,7 +424,7 @@

Notes, limits, and going to production

diff --git a/landing/docs/recipes/anomaly-detection.html b/landing/docs/recipes/anomaly-detection.html index 427e436d3..55ae12967 100644 --- a/landing/docs/recipes/anomaly-detection.html +++ b/landing/docs/recipes/anomaly-detection.html @@ -443,7 +443,7 @@

Endpoint cheat-sheet

diff --git a/landing/docs/recipes/continuous-anomaly-datafeeds.html b/landing/docs/recipes/continuous-anomaly-datafeeds.html index 257f35b0c..5093c1de8 100644 --- a/landing/docs/recipes/continuous-anomaly-datafeeds.html +++ b/landing/docs/recipes/continuous-anomaly-datafeeds.html @@ -457,7 +457,7 @@

Endpoint cheat-sheet

diff --git a/landing/docs/recipes/document-folder-index.html b/landing/docs/recipes/document-folder-index.html index 7c6c350ab..8d26d8b62 100644 --- a/landing/docs/recipes/document-folder-index.html +++ b/landing/docs/recipes/document-folder-index.html @@ -457,7 +457,7 @@

Reproduce it yourself

@@ -515,7 +515,7 @@

Reproduce it yourself

diff --git a/landing/docs/recipes/hybrid-search.html b/landing/docs/recipes/hybrid-search.html index 4bf1e94ae..10e6af770 100644 --- a/landing/docs/recipes/hybrid-search.html +++ b/landing/docs/recipes/hybrid-search.html @@ -357,7 +357,7 @@

Notes & limits

@@ -415,7 +415,7 @@

Notes & limits

diff --git a/landing/docs/recipes/index.html b/landing/docs/recipes/index.html index df9e99911..5b3cae1e7 100644 --- a/landing/docs/recipes/index.html +++ b/landing/docs/recipes/index.html @@ -283,7 +283,7 @@

Recipes

@@ -341,7 +341,7 @@

Recipes

diff --git a/landing/docs/recipes/log-analytics.html b/landing/docs/recipes/log-analytics.html index 618045b3e..2b4144709 100644 --- a/landing/docs/recipes/log-analytics.html +++ b/landing/docs/recipes/log-analytics.html @@ -362,7 +362,7 @@

Notes and honest limits

@@ -420,7 +420,7 @@

Notes and honest limits

diff --git a/landing/docs/recipes/migrate-from-elasticsearch.html b/landing/docs/recipes/migrate-from-elasticsearch.html index 201b433d3..ad300f3c8 100644 --- a/landing/docs/recipes/migrate-from-elasticsearch.html +++ b/landing/docs/recipes/migrate-from-elasticsearch.html @@ -463,7 +463,7 @@

Benchmarks

diff --git a/landing/docs/recipes/passage-retrieval.html b/landing/docs/recipes/passage-retrieval.html index 3cb04b620..d4d34061d 100644 --- a/landing/docs/recipes/passage-retrieval.html +++ b/landing/docs/recipes/passage-retrieval.html @@ -298,7 +298,7 @@

Notes and limits

@@ -356,7 +356,7 @@

Notes and limits

diff --git a/landing/docs/recipes/semantic-search-rag.html b/landing/docs/recipes/semantic-search-rag.html index cd207baac..9c4652b0c 100644 --- a/landing/docs/recipes/semantic-search-rag.html +++ b/landing/docs/recipes/semantic-search-rag.html @@ -395,7 +395,7 @@

Measuring ranking quality with _rank_eval

@@ -453,7 +453,7 @@

Measuring ranking quality with _rank_eval

diff --git a/landing/docs/recipes/vector-quantization.html b/landing/docs/recipes/vector-quantization.html index 8e5afb11c..0870a10ea 100644 --- a/landing/docs/recipes/vector-quantization.html +++ b/landing/docs/recipes/vector-quantization.html @@ -367,7 +367,7 @@

Notes and limits

diff --git a/landing/docs/recipes/vector-search-knn.html b/landing/docs/recipes/vector-search-knn.html index ac7f1c727..f5c078b9e 100644 --- a/landing/docs/recipes/vector-search-knn.html +++ b/landing/docs/recipes/vector-search-knn.html @@ -362,7 +362,7 @@

Gotchas

@@ -420,7 +420,7 @@

Gotchas

diff --git a/landing/docs/recipes/zero-config-autoindex.html b/landing/docs/recipes/zero-config-autoindex.html index c1f1d87ef..bf61f4e11 100644 --- a/landing/docs/recipes/zero-config-autoindex.html +++ b/landing/docs/recipes/zero-config-autoindex.html @@ -389,7 +389,7 @@

Honest caveats

@@ -447,7 +447,7 @@

Honest caveats

diff --git a/landing/docs/security.html b/landing/docs/security.html index b6d03d627..8b4a9b411 100644 --- a/landing/docs/security.html +++ b/landing/docs/security.html @@ -254,7 +254,7 @@

Network

@@ -312,7 +312,7 @@

Network

diff --git a/landing/docs/storage.html b/landing/docs/storage.html index ba9563ab1..dad57d2c8 100644 --- a/landing/docs/storage.html +++ b/landing/docs/storage.html @@ -272,7 +272,7 @@

Cluster metadata

@@ -330,7 +330,7 @@

Cluster metadata

diff --git a/landing/docs/troubleshooting.html b/landing/docs/troubleshooting.html index 0a0b075d6..f28f2636c 100644 --- a/landing/docs/troubleshooting.html +++ b/landing/docs/troubleshooting.html @@ -281,7 +281,7 @@

Getting help

@@ -339,7 +339,7 @@

Getting help

diff --git a/landing/docs/upgrades.html b/landing/docs/upgrades.html index 78cf95247..9eb68d5d9 100644 --- a/landing/docs/upgrades.html +++ b/landing/docs/upgrades.html @@ -297,7 +297,7 @@

Rolling back

@@ -355,7 +355,7 @@

Rolling back

diff --git a/landing/docs/vectors.html b/landing/docs/vectors.html index 853fc39fb..a1ccbee50 100644 --- a/landing/docs/vectors.html +++ b/landing/docs/vectors.html @@ -300,7 +300,7 @@

Hybrid — BM25 + KNN in one planner pass

@@ -358,7 +358,7 @@

Hybrid — BM25 + KNN in one planner pass

diff --git a/landing/for-agents.html b/landing/for-agents.html index c94f0fdaf..d6abe6f80 100644 --- a/landing/for-agents.html +++ b/landing/for-agents.html @@ -485,7 +485,7 @@

THE SEARCH · DATA ·
MEMORY LAY diff --git a/landing/index.html b/landing/index.html index 499979ab6..f713e3486 100644 --- a/landing/index.html +++ b/landing/index.html @@ -289,7 +289,7 @@ RECIPES DASHBOARDS GITHUB - ↓ v1.0.0-rc.76 + ↓ v1.0.0-rc.77 · @@ -702,7 +702,7 @@

THE ADVANTAGE,
FEATURE BY FEATURE.