Finalize GeoIntel 1.0.0 release identity
This commit is contained in:
@@ -7,6 +7,18 @@
|
|||||||
|
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 1.0.0 - Final Belgium and Belgian North Sea release (2026-07-19)
|
||||||
|
|
||||||
|
- Promoted the nationally federated, map-first GeoIntel workbench from the
|
||||||
|
release candidate to the final `1.0.0` version.
|
||||||
|
- Accepted the final post-RC repository gates, live PostGIS runtime and
|
||||||
|
browser golden journeys against the immutable release image.
|
||||||
|
- Accepted live SPW waterbed elevation analysis in EPSG:3812/mDNG for the
|
||||||
|
documented 2019-2022 survey period, including bounded raster persistence,
|
||||||
|
coverage metrics and explicit depth/volume limitations.
|
||||||
|
- Kept unavailable North Sea bathymetry and unsupported water volume visibly
|
||||||
|
unavailable; no source-integrity or vertical-datum rule was bypassed.
|
||||||
|
|
||||||
## National history and governed SPW bathymetry (2026-07-19)
|
## National history and governed SPW bathymetry (2026-07-19)
|
||||||
|
|
||||||
- Accepted the two documented official Statbel geometry-archive variants:
|
- Accepted the two documented official Statbel geometry-archive variants:
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ GeoIntel is not a generic dashboard or chatbot. The core product is:
|
|||||||
|
|
||||||
## Current milestone
|
## Current milestone
|
||||||
|
|
||||||
**v1.0.0-rc.1 - Belgium/North Sea release candidate**
|
**v1.0.0 - Belgium/North Sea release**
|
||||||
|
|
||||||
The canonical release controls are:
|
The canonical release controls are:
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class Settings(BaseSettings):
|
|||||||
|
|
||||||
app_env: str = Field(default="development", validation_alias="GEOINTEL_ENV")
|
app_env: str = Field(default="development", validation_alias="GEOINTEL_ENV")
|
||||||
app_version: str = Field(
|
app_version: str = Field(
|
||||||
default="1.0.0-rc.1",
|
default="1.0.0",
|
||||||
validation_alias="GEOINTEL_APP_VERSION",
|
validation_alias="GEOINTEL_APP_VERSION",
|
||||||
)
|
)
|
||||||
build_sha: str | None = Field(default=None, validation_alias="GEOINTEL_BUILD_SHA")
|
build_sha: str | None = Field(default=None, validation_alias="GEOINTEL_BUILD_SHA")
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "geointel-backend"
|
name = "geointel-backend"
|
||||||
version = "1.0.0rc1"
|
version = "1.0.0"
|
||||||
description = "GeoIntel Belgium and Belgian North Sea backend"
|
description = "GeoIntel Belgium and Belgian North Sea backend"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
requires-python = ">=3.11"
|
requires-python = ">=3.11"
|
||||||
|
|||||||
@@ -34,10 +34,10 @@ def test_release_version_is_consistent_across_runtime_packages() -> None:
|
|||||||
(ROOT / "frontend" / "package-lock.json").read_text(encoding="utf-8")
|
(ROOT / "frontend" / "package-lock.json").read_text(encoding="utf-8")
|
||||||
)
|
)
|
||||||
|
|
||||||
assert version == "1.0.0-rc.1"
|
assert version == "1.0.0"
|
||||||
assert f'default="{version}"' in config
|
assert f'default="{version}"' in config
|
||||||
assert "GEOINTEL_APP_VERSION" in config
|
assert "GEOINTEL_APP_VERSION" in config
|
||||||
assert 'version = "1.0.0rc1"' in pyproject
|
assert 'version = "1.0.0"' in pyproject
|
||||||
assert frontend["version"] == version
|
assert frontend["version"] == version
|
||||||
assert package_lock["version"] == version
|
assert package_lock["version"] == version
|
||||||
assert package_lock["packages"][""]["version"] == version
|
assert package_lock["packages"][""]["version"] == version
|
||||||
@@ -51,7 +51,7 @@ def test_release_image_carries_semantic_version_identity() -> None:
|
|||||||
encoding="utf-8"
|
encoding="utf-8"
|
||||||
)
|
)
|
||||||
|
|
||||||
assert "ARG GEOINTEL_APP_VERSION=1.0.0-rc.1" in dockerfile
|
assert "ARG GEOINTEL_APP_VERSION=1.0.0" in dockerfile
|
||||||
assert 'org.opencontainers.image.version="${GEOINTEL_APP_VERSION}"' in dockerfile
|
assert 'org.opencontainers.image.version="${GEOINTEL_APP_VERSION}"' in dockerfile
|
||||||
assert "GEOINTEL_APP_VERSION=\"$(tr -d '[:space:]' < VERSION)\"" in deploy
|
assert "GEOINTEL_APP_VERSION=\"$(tr -d '[:space:]' < VERSION)\"" in deploy
|
||||||
assert "--build-arg GEOINTEL_APP_VERSION=" in deploy
|
assert "--build-arg GEOINTEL_APP_VERSION=" in deploy
|
||||||
@@ -85,8 +85,8 @@ def test_release_package_signature_and_checksums_fail_closed(tmp_path: Path) ->
|
|||||||
)
|
)
|
||||||
manifest = {
|
manifest = {
|
||||||
"schema_version": 1,
|
"schema_version": 1,
|
||||||
"release_id": "v1.0.0-rc.1",
|
"release_id": "v1.0.0",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"scope": "Belgium and the Belgian North Sea",
|
"scope": "Belgium and the Belgian North Sea",
|
||||||
"signature": {"identity": identity, "namespace": namespace},
|
"signature": {"identity": identity, "namespace": namespace},
|
||||||
"evidence": [
|
"evidence": [
|
||||||
@@ -114,7 +114,7 @@ def test_release_package_signature_and_checksums_fail_closed(tmp_path: Path) ->
|
|||||||
module.write_checksums(package)
|
module.write_checksums(package)
|
||||||
|
|
||||||
verified = module.verify_package(package)
|
verified = module.verify_package(package)
|
||||||
assert verified["release_id"] == "v1.0.0-rc.1"
|
assert verified["release_id"] == "v1.0.0"
|
||||||
|
|
||||||
evidence.write_text("tampered\n", encoding="utf-8")
|
evidence.write_text("tampered\n", encoding="utf-8")
|
||||||
with pytest.raises(RuntimeError, match="Checksum mismatch"):
|
with pytest.raises(RuntimeError, match="Checksum mismatch"):
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ def test_release_evidence_manifest_is_secret_free_and_read_only(tmp_path: Path)
|
|||||||
|
|
||||||
assert manifest["schema_version"] == 1
|
assert manifest["schema_version"] == 1
|
||||||
assert manifest["release_id"] == "test-rc"
|
assert manifest["release_id"] == "test-rc"
|
||||||
assert manifest["version"] == "1.0.0-rc.1"
|
assert manifest["version"] == "1.0.0"
|
||||||
assert manifest["read_only"] is True
|
assert manifest["read_only"] is True
|
||||||
assert manifest["scope"] == "Belgium and the Belgian North Sea"
|
assert manifest["scope"] == "Belgium and the Belgian North Sea"
|
||||||
assert "DATABASE_URL" not in json.dumps(manifest).replace(
|
assert "DATABASE_URL" not in json.dumps(manifest).replace(
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ RUN chmod +x /usr/local/bin/geointel-all-in-one-start /usr/local/bin/gosu \
|
|||||||
|
|
||||||
ARG GEOINTEL_BUILD_SHA=unknown
|
ARG GEOINTEL_BUILD_SHA=unknown
|
||||||
ARG GEOINTEL_BUILD_TIME=unknown
|
ARG GEOINTEL_BUILD_TIME=unknown
|
||||||
ARG GEOINTEL_APP_VERSION=1.0.0-rc.1
|
ARG GEOINTEL_APP_VERSION=1.0.0
|
||||||
|
|
||||||
ENV GEOINTEL_BUILD_SHA="${GEOINTEL_BUILD_SHA}" \
|
ENV GEOINTEL_BUILD_SHA="${GEOINTEL_BUILD_SHA}" \
|
||||||
GEOINTEL_BUILD_TIME="${GEOINTEL_BUILD_TIME}" \
|
GEOINTEL_BUILD_TIME="${GEOINTEL_BUILD_TIME}" \
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Older handoff files are historical. If documents conflict, follow the precedence
|
|||||||
|
|
||||||
## Current milestone
|
## Current milestone
|
||||||
|
|
||||||
**v1.0.0-rc.1 - Belgium/North Sea release candidate**
|
**v1.0.0 - Belgium/North Sea release**
|
||||||
|
|
||||||
The implementation is in final release-candidate acceptance for Belgium and
|
The implementation is in final release-candidate acceptance for Belgium and
|
||||||
the Belgian North Sea. Mol and the Kempen remain golden regression areas, not
|
the Belgian North Sea. Mol and the Kempen remain golden regression areas, not
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ Returns process liveness only. It never queries PostgreSQL.
|
|||||||
{
|
{
|
||||||
"status": "ok",
|
"status": "ok",
|
||||||
"service": "geointel-backend",
|
"service": "geointel-backend",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"build_sha": null,
|
"build_sha": null,
|
||||||
"build_time": null
|
"build_time": null
|
||||||
}
|
}
|
||||||
@@ -75,7 +75,7 @@ degraded. Docker uses `/health/ready`.
|
|||||||
{
|
{
|
||||||
"status": "ok",
|
"status": "ok",
|
||||||
"service": "geointel-backend",
|
"service": "geointel-backend",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"database": "ok",
|
"database": "ok",
|
||||||
"postgis": "ok:3.x",
|
"postgis": "ok:3.x",
|
||||||
"migration": "ok:202607160001",
|
"migration": "ok:202607160001",
|
||||||
@@ -105,7 +105,7 @@ envelope. PostGIS and configured YOLO state are derived at runtime.
|
|||||||
"sam": false,
|
"sam": false,
|
||||||
"grb": "bounded",
|
"grb": "bounded",
|
||||||
"sentinel": "planned",
|
"sentinel": "planned",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"build_sha": null,
|
"build_sha": null,
|
||||||
"providers": []
|
"providers": []
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
"redis": "ok",
|
"redis": "ok",
|
||||||
"storage": "ok"
|
"storage": "ok"
|
||||||
},
|
},
|
||||||
"version": "1.0.0-rc.1"
|
"version": "1.0.0"
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
+11
-10
@@ -4,7 +4,7 @@ Updated: 2026-07-19
|
|||||||
|
|
||||||
## Current state
|
## Current state
|
||||||
|
|
||||||
GeoIntel `v1.0.0-rc.1` is an accepted map-first GeoAI workbench for Belgium
|
GeoIntel `v1.0.0` is an accepted map-first GeoAI workbench for Belgium
|
||||||
and the legally distinct Belgian maritime scopes. It runs as an immutable
|
and the legally distinct Belgian maritime scopes. It runs as an immutable
|
||||||
all-in-one Unraid image with PostGIS, FastAPI, React/MapLibre, local Ollama
|
all-in-one Unraid image with PostGIS, FastAPI, React/MapLibre, local Ollama
|
||||||
integration and optional local YOLO/PyTorch inference.
|
integration and optional local YOLO/PyTorch inference.
|
||||||
@@ -15,16 +15,17 @@ Brussels, a language-boundary selection, the coast and the Belgian North Sea.
|
|||||||
|
|
||||||
## Release status
|
## Release status
|
||||||
|
|
||||||
There are no open release blockers for the signed `v1.0.0-rc.1` evidence set.
|
There are no open release blockers for `v1.0.0`. RC-0 through RC-11 and the
|
||||||
RC-0 through RC-11 are complete. Backup/restore, fresh install, upgrade,
|
post-RC national data closeout are complete. Backup/restore, fresh install,
|
||||||
rollback, fail-closed readiness, one Alembic head, API contracts, supply-chain
|
upgrade, rollback, fail-closed readiness, one Alembic head, API contracts,
|
||||||
policy, responsive browser journeys and live PostGIS acceptance are proven.
|
supply-chain policy, responsive browser journeys and live PostGIS acceptance
|
||||||
|
are proven against the final release candidate image.
|
||||||
|
|
||||||
The active post-RC candidate extends real source coverage. Its repository gate
|
The final repository gate passes 1,052 backend tests, 22 frontend tests,
|
||||||
passes 1,052 backend tests, 22 frontend tests, frontend typecheck/build,
|
frontend typecheck/build, one Alembic head and the complete readiness script.
|
||||||
one Alembic head and the complete readiness script. Its remaining acceptance
|
The live SPW bathymetry persistence and browser journey are accepted for the
|
||||||
step is live SPW bathymetry persistence and browser verification before a new
|
final version: EPSG:3812 mDNG bed elevation, 2019-2022 survey period, bounded
|
||||||
immutable image is called releasable.
|
coverage and no unsupported depth/volume inference.
|
||||||
|
|
||||||
## Operational product loop
|
## Operational product loop
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,23 @@
|
|||||||
|
## 2026-07-19 - GeoIntel 1.0.0 final release closeout
|
||||||
|
|
||||||
|
- Promoted the current clean `main` revision to semantic version `1.0.0` in
|
||||||
|
`VERSION`, backend/frontend package metadata, health/API examples and the
|
||||||
|
immutable Docker runtime identity. Historical RC entries remain unchanged.
|
||||||
|
- Re-ran the final repository release gate after the version promotion:
|
||||||
|
backend compile/tests, frontend unit tests/typecheck/build, readiness,
|
||||||
|
Alembic single-head/offline SQL and live-smoke syntax all pass.
|
||||||
|
- The final Tower image is tied to commit
|
||||||
|
`04b8373d7ece0f5eb29674507d718f0ea51ed5c4` and passed health, PostGIS
|
||||||
|
migration, proxy and browser runtime checks.
|
||||||
|
- Final live browser acceptance selected the Walloon golden area, activated
|
||||||
|
Waterbodem, analysed the full area and displayed real SPW mDNG metrics:
|
||||||
|
mean `74.55 m`, measured surface `22.69 ha`, coverage `7.07%`, and explicit
|
||||||
|
no-depth/no-volume limitations. No unrelated on-demand source acquisition
|
||||||
|
was triggered.
|
||||||
|
- Remaining boundaries are deliberate V1 limitations: MDK North Sea
|
||||||
|
analytical bathymetry remains not configured, water volume requires a
|
||||||
|
governed surface/datum/uncertainty contract, and YOLO remains human-reviewed.
|
||||||
|
|
||||||
## Autonomous RC program for Belgium and the Belgian North Sea (2026-07-17)
|
## Autonomous RC program for Belgium and the Belgian North Sea (2026-07-17)
|
||||||
|
|
||||||
### Post-RC national data federation (2026-07-19)
|
### Post-RC national data federation (2026-07-19)
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ backward-compatible alias.
|
|||||||
{
|
{
|
||||||
"status": "ok",
|
"status": "ok",
|
||||||
"service": "geointel-backend",
|
"service": "geointel-backend",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"database": "ok",
|
"database": "ok",
|
||||||
"postgis": "ok:3.x",
|
"postgis": "ok:3.x",
|
||||||
"migration": "ok:202607160001",
|
"migration": "ok:202607160001",
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# GeoIntel v1.0.0-rc.1 Known Limitations
|
# GeoIntel v1.0.0 Known Limitations
|
||||||
|
|
||||||
## Release position
|
## Release position
|
||||||
|
|
||||||
|
|||||||
@@ -2,9 +2,9 @@
|
|||||||
|
|
||||||
## Status and purpose
|
## Status and purpose
|
||||||
|
|
||||||
This is the active autonomous implementation board after `v1.0.0-rc.1`.
|
This is the completed autonomous implementation board after `v1.0.0-rc.1`.
|
||||||
It is not an RC-12 phase. The signed RC remains immutable release evidence;
|
It is not an RC-12 phase. The signed `v1.0.0` release remains immutable
|
||||||
all work below targets the next version and must preserve the frozen API,
|
evidence; any future work must preserve the frozen API,
|
||||||
persistence, provenance and no-fake-data rules.
|
persistence, provenance and no-fake-data rules.
|
||||||
|
|
||||||
The goal is to make the national workbench useful with real data:
|
The goal is to make the national workbench useful with real data:
|
||||||
@@ -214,8 +214,8 @@ capabilities probe before implementation is marked operational.
|
|||||||
|
|
||||||
## P4 - Maritime and bathymetry hardening
|
## P4 - Maritime and bathymetry hardening
|
||||||
|
|
||||||
**State: repository-complete; SPW live acceptance is the final candidate gate
|
**State: complete; SPW live persistence and browser acceptance passed for
|
||||||
and MDK acquisition remains visibly blocked by strict-TLS evidence.**
|
`v1.0.0`; MDK acquisition remains visibly blocked by strict-TLS evidence.**
|
||||||
|
|
||||||
### Work
|
### Work
|
||||||
|
|
||||||
@@ -270,9 +270,8 @@ and MDK acquisition remains visibly blocked by strict-TLS evidence.**
|
|||||||
|
|
||||||
### Live evidence
|
### Live evidence
|
||||||
|
|
||||||
- Immutable AI image `301ecaccbd160fbe58daa245ba229270b6f16e09-ai`
|
- Immutable AI image `04b8373d7ece0f5eb29674507d718f0ea51ed5c4-ai` passed live
|
||||||
passed live PostGIS migration and browser proxy smoke before the final
|
PostGIS migration, browser proxy smoke and the final SPW bathymetry journey.
|
||||||
documentation-only closeout commit.
|
|
||||||
- The release journey reused all seven deterministic golden Areas and passed
|
- The release journey reused all seven deterministic golden Areas and passed
|
||||||
Brussels, Wallonia, language-boundary, coast, Mol, Kempen and North Sea
|
Brussels, Wallonia, language-boundary, coast, Mol, Kempen and North Sea
|
||||||
coverage without creating duplicates.
|
coverage without creating duplicates.
|
||||||
@@ -288,7 +287,7 @@ and MDK acquisition remains visibly blocked by strict-TLS evidence.**
|
|||||||
answer and a configured local-YOLO Job/AnalysisRun with map handoff.
|
answer and a configured local-YOLO Job/AnalysisRun with map handoff.
|
||||||
- PyTorch `2.13.0+cpu` and Ultralytics `8.4.99` import in the deployed AI
|
- PyTorch `2.13.0+cpu` and Ultralytics `8.4.99` import in the deployed AI
|
||||||
runtime. No model download or fabricated detection was used.
|
runtime. No model download or fabricated detection was used.
|
||||||
- The final repository gate passed 1,042 backend tests, 20 frontend tests,
|
- The final repository gate passed 1,052 backend tests, 22 frontend tests,
|
||||||
frontend typecheck/build, one Alembic head, the full offline migration SQL
|
frontend typecheck/build, one Alembic head, the full offline migration SQL
|
||||||
chain and live-smoke syntax.
|
chain and live-smoke syntax.
|
||||||
- MDK bathymetry remains `not_configured` because strict hostname validation
|
- MDK bathymetry remains `not_configured` because strict hostname validation
|
||||||
|
|||||||
+16
-16
@@ -7,8 +7,8 @@ the Kempen remain regression references. A successful release never implies
|
|||||||
that every theme is operational in every jurisdiction; the coverage API and
|
that every theme is operational in every jurisdiction; the coverage API and
|
||||||
source provenance remain authoritative.
|
source provenance remain authoritative.
|
||||||
|
|
||||||
The repository version is stored in `VERSION`. The current release candidate
|
The repository version is stored in `VERSION`. The current release is
|
||||||
is `v1.0.0-rc.1`.
|
`v1.0.0`.
|
||||||
|
|
||||||
## Mandatory preconditions
|
## Mandatory preconditions
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ large storage:
|
|||||||
bash scripts/backup_release_state.sh \
|
bash scripts/backup_release_state.sh \
|
||||||
--container geointel \
|
--container geointel \
|
||||||
--output-root /mnt/user/appdata/geointel/backups \
|
--output-root /mnt/user/appdata/geointel/backups \
|
||||||
--release-id v1.0.0-rc.1 \
|
--release-id v1.0.0 \
|
||||||
--storage-path /mnt/user/appdata/geointel/storage \
|
--storage-path /mnt/user/appdata/geointel/storage \
|
||||||
--models-path /mnt/user/appdata/geointel/models \
|
--models-path /mnt/user/appdata/geointel/models \
|
||||||
--inventory-mode sha256
|
--inventory-mode sha256
|
||||||
@@ -75,14 +75,14 @@ Verify and restore only into an automatically generated temporary database:
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
bash scripts/verify_release_backup.sh \
|
bash scripts/verify_release_backup.sh \
|
||||||
--backup-dir /mnt/user/appdata/geointel/backups/v1.0.0-rc.1 \
|
--backup-dir /mnt/user/appdata/geointel/backups/v1.0.0 \
|
||||||
--container geointel
|
--container geointel
|
||||||
bash scripts/restore_release_backup_smoke.sh \
|
bash scripts/restore_release_backup_smoke.sh \
|
||||||
--backup-dir /mnt/user/appdata/geointel/backups/v1.0.0-rc.1 \
|
--backup-dir /mnt/user/appdata/geointel/backups/v1.0.0 \
|
||||||
--container geointel \
|
--container geointel \
|
||||||
--confirm-isolated-restore
|
--confirm-isolated-restore
|
||||||
bash scripts/verify_release_upgrade_smoke.sh \
|
bash scripts/verify_release_upgrade_smoke.sh \
|
||||||
--backup-dir /mnt/user/appdata/geointel/backups/v1.0.0-rc.1 \
|
--backup-dir /mnt/user/appdata/geointel/backups/v1.0.0 \
|
||||||
--container geointel \
|
--container geointel \
|
||||||
--confirm-isolated-upgrade
|
--confirm-isolated-upgrade
|
||||||
```
|
```
|
||||||
@@ -96,11 +96,11 @@ their generated verification database.
|
|||||||
bash scripts/verify_release_fresh_install.sh \
|
bash scripts/verify_release_fresh_install.sh \
|
||||||
geointel-all-in-one:<release-commit>-ai
|
geointel-all-in-one:<release-commit>-ai
|
||||||
bash scripts/run_rc8_release_journeys.sh \
|
bash scripts/run_rc8_release_journeys.sh \
|
||||||
http://127.0.0.1:1202 artifacts/releases/v1.0.0-rc.1/rc8
|
http://127.0.0.1:1202 artifacts/releases/v1.0.0/rc8
|
||||||
bash scripts/run_rc9_ux_audit.sh \
|
bash scripts/run_rc9_ux_audit.sh \
|
||||||
http://127.0.0.1:1202 artifacts/releases/v1.0.0-rc.1/rc9
|
http://127.0.0.1:1202 artifacts/releases/v1.0.0/rc9
|
||||||
bash scripts/run_rc10_data_operations_audit.sh \
|
bash scripts/run_rc10_data_operations_audit.sh \
|
||||||
artifacts/releases/v1.0.0-rc.1/rc10
|
artifacts/releases/v1.0.0/rc10
|
||||||
```
|
```
|
||||||
|
|
||||||
The RC10 command is read-only and runs cleanup in dry-run mode only.
|
The RC10 command is read-only and runs cleanup in dry-run mode only.
|
||||||
@@ -113,10 +113,10 @@ cd frontend && npm audit --audit-level=high
|
|||||||
cd ..
|
cd ..
|
||||||
bash scripts/generate_container_sbom.sh \
|
bash scripts/generate_container_sbom.sh \
|
||||||
geointel-all-in-one:<release-commit>-ai \
|
geointel-all-in-one:<release-commit>-ai \
|
||||||
artifacts/releases/v1.0.0-rc.1/geointel-sbom.spdx.json
|
artifacts/releases/v1.0.0/geointel-sbom.spdx.json
|
||||||
bash scripts/scan_container_image.sh \
|
bash scripts/scan_container_image.sh \
|
||||||
geointel-all-in-one:<release-commit>-ai \
|
geointel-all-in-one:<release-commit>-ai \
|
||||||
artifacts/releases/v1.0.0-rc.1/container-vulnerabilities.json
|
artifacts/releases/v1.0.0/container-vulnerabilities.json
|
||||||
```
|
```
|
||||||
|
|
||||||
The complete vulnerability report remains evidence. The executable policy
|
The complete vulnerability report remains evidence. The executable policy
|
||||||
@@ -144,8 +144,8 @@ release key; never add the private key to the repository:
|
|||||||
```bash
|
```bash
|
||||||
git -c gpg.format=ssh \
|
git -c gpg.format=ssh \
|
||||||
-c user.signingkey=/secure/path/release-key \
|
-c user.signingkey=/secure/path/release-key \
|
||||||
tag -s v1.0.0-rc.1 -m "GeoIntel v1.0.0-rc.1"
|
tag -s v1.0.0 -m "GeoIntel v1.0.0"
|
||||||
git push origin v1.0.0-rc.1
|
git push origin v1.0.0
|
||||||
```
|
```
|
||||||
|
|
||||||
Place the collected evidence files in an ignored package directory and create
|
Place the collected evidence files in an ignored package directory and create
|
||||||
@@ -153,14 +153,14 @@ the detached SSH signature plus complete checksum inventory:
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
python scripts/build_release_package.py build \
|
python scripts/build_release_package.py build \
|
||||||
--output-dir artifacts/releases/v1.0.0-rc.1 \
|
--output-dir artifacts/releases/v1.0.0 \
|
||||||
--release-id v1.0.0-rc.1 \
|
--release-id v1.0.0 \
|
||||||
--image-name geointel-all-in-one:<release-commit>-ai \
|
--image-name geointel-all-in-one:<release-commit>-ai \
|
||||||
--image-id sha256:<image-id> \
|
--image-id sha256:<image-id> \
|
||||||
--image-revision <release-commit> \
|
--image-revision <release-commit> \
|
||||||
--signing-key /secure/path/release-key
|
--signing-key /secure/path/release-key
|
||||||
python scripts/build_release_package.py verify \
|
python scripts/build_release_package.py verify \
|
||||||
--package-dir artifacts/releases/v1.0.0-rc.1
|
--package-dir artifacts/releases/v1.0.0
|
||||||
```
|
```
|
||||||
|
|
||||||
The builder refuses a dirty worktree, a tag not pointing at `HEAD`, a mismatched
|
The builder refuses a dirty worktree, a tag not pointing at `HEAD`, a mismatched
|
||||||
|
|||||||
+4
-4
@@ -2,10 +2,10 @@
|
|||||||
|
|
||||||
## Actieve post-RC datadekkingsfase
|
## Actieve post-RC datadekkingsfase
|
||||||
|
|
||||||
`docs/POST_RC_DATA_COVERAGE_ROADMAP_BELGIUM_NORTH_SEA.md` is het actieve
|
`docs/POST_RC_DATA_COVERAGE_ROADMAP_BELGIUM_NORTH_SEA.md` was het autonome
|
||||||
autonome uitvoeringsbord na `v1.0.0-rc.1`. Dit is geen RC-12. De ondertekende
|
uitvoeringsbord na `v1.0.0-rc.1` en is nu afgesloten voor `v1.0.0`. Dit is geen
|
||||||
RC blijft immutable bewijs; deze fase maakt echte, begrensde nationale en
|
RC-12. De definitieve release blijft immutable bewijs; verdere databronnen
|
||||||
maritieme databronnen bruikbaar in de volgende versie.
|
zijn post-V1 uitbreidingen.
|
||||||
|
|
||||||
- [x] P0: bestaande NGI/RBINS-lagen als kaartthema en selectieanalyse ontsluiten.
|
- [x] P0: bestaande NGI/RBINS-lagen als kaartthema en selectieanalyse ontsluiten.
|
||||||
- [x] P0: readiness baseren op bruikbare analysethema's, niet alleen datasetaantal.
|
- [x] P0: readiness baseren op bruikbare analysethema's, niet alleen datasetaantal.
|
||||||
|
|||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "geointel-frontend",
|
"name": "geointel-frontend",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "geointel-frontend",
|
"name": "geointel-frontend",
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"maplibre-gl": "^4.7.1",
|
"maplibre-gl": "^4.7.1",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "geointel-frontend",
|
"name": "geointel-frontend",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "1.0.0-rc.1",
|
"version": "1.0.0",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "vite",
|
"start": "vite",
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ if 'prompts/codex/m14/CODEX_FIRST_DAY_MASTER_PROMPT.md' not in start:
|
|||||||
|
|
||||||
readme = (ROOT / 'README.md').read_text(encoding='utf-8')
|
readme = (ROOT / 'README.md').read_text(encoding='utf-8')
|
||||||
active_terms = [
|
active_terms = [
|
||||||
'v1.0.0-rc.1',
|
'v1.0.0',
|
||||||
'docs/RC_SCOPE_FREEZE_BELGIUM_NORTH_SEA.md',
|
'docs/RC_SCOPE_FREEZE_BELGIUM_NORTH_SEA.md',
|
||||||
'docs/RC_ROADMAP_BELGIUM_NORTH_SEA.md',
|
'docs/RC_ROADMAP_BELGIUM_NORTH_SEA.md',
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user