unaltraweb 0.7.2 → 0.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: acaf4cf39c6e712f16e9815d41d137e94972a0224fb685d19fe36c3f82a7a195
4
- data.tar.gz: fc287067a780f72c8d51ec287a889767cdce5420557733aff7a5e988fa17e45a
3
+ metadata.gz: c5280a9154aff314292e2929ee157d6a2ebc7b2ab2b292cf9f7d995f3f147922
4
+ data.tar.gz: ad96a399ed437469d747634a7b5d69aa2958794e5f38395511b811ca99befd40
5
5
  SHA512:
6
- metadata.gz: 98a42d39c19df577bb5c69b08d2b20abdfa283d38e18dbbd45239cd7a887f0c43615b3d5a5d614f77f37f309b92aaaed666a5b90863a23595ff1e03f91e15de4
7
- data.tar.gz: 765b280a1315f2be24e6bfc6894d5dc9f394ce201ccce86d7a994a6643e518bc45aceec473fea77d2e5cd3bf647031ca1a4943a72c9470b8d6607c53f0843bb9
6
+ metadata.gz: bfe3e85558161e19ae69988d40d78179a18ea418d6d932597dfeadb82bbfbfaab5d9d3c8847b0b6245f05ef26bd732dd548dc459e46f674556f10ffa1d977bd1
7
+ data.tar.gz: 6d1fc3cb0ba53b7c6e780bc43f7a93c2c1ca55b3ffa9bab9da773d20f9c56410dedd12f49cb9cfd6e2c529088b76c79a74bf94dbd30abb1dd2982a45ee4866a1
data/Makefile CHANGED
@@ -1,8 +1,8 @@
1
1
  PYTHON ?= python3
2
2
  override PROJECT := $${MCP_CONSUMER_WORKSPACE:?MCP_CONSUMER_WORKSPACE is required}
3
3
  override PROJECT_ROOT := $(PROJECT)
4
- MCP_RUNTIME_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb:0.7.2
5
- MCP_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb-mcp:0.7.2
4
+ MCP_RUNTIME_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb:0.7.3
5
+ MCP_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb-mcp:0.7.3
6
6
  MCP_RELEASE_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb-mcp@sha256:6aa20cff86c3891a876e37ba0548fa36f3c5633c9f22ba672e9f50123d677cf6
7
7
  MCP_DOCKER_BUILD_NETWORK ?= default
8
8
  INIT_SITE_PROFILE ?= unaltreselfie
@@ -40,7 +40,7 @@ WEB_CAPTURE_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb-web-capture@sha256:0bf1b
40
40
  WEB_CAPTURE_DEV_IMAGE ?= unaltraweb-web-capture:dev
41
41
  WEB_CAPTURE_DOCKER_BUILD_NETWORK ?= default
42
42
  VEGAVISUALS_CLI ?=
43
- DOCKER_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb:0.7.2
43
+ DOCKER_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb:0.7.3
44
44
  MANUAL_PDF_IMAGE ?= ghcr.io/dosquartsdedocs/unaltraweb-manual-pdf@sha256:1bb3f2dafd741e96c28639ec1cc8ccaeb81cbaa73e649f787c0b4ef59997bd4b
45
45
  MANUAL_PDF_DEV_IMAGE ?= unaltraweb-manual-pdf:dev
46
46
  MCP_SMOKE_MANUAL_PDF_IMAGE ?= $(MANUAL_PDF_IMAGE)
@@ -0,0 +1,110 @@
1
+ # Web #109 — QGIS 0.6.1 compatibility point
2
+
3
+ Web **0.7.3 is prepared locally**, not yet published or selected by a real
4
+ consumer. This maintenance point changes the exact external private-QGIS
5
+ dependency from 0.6.0 to 0.6.1. Published Web 0.7.2 remains immutable.
6
+
7
+ Provider handoff: [Web #109](https://github.com/dosquartsdedocs/unaltraweb/issues/109#issuecomment-6283746978).
8
+ Hub preparation: [gaContExt #38](https://github.com/dosquartsdedocs/gacontext/issues/38#issuecomment-6301327451).
9
+ The latter has prepared/enrolled QGIS independently; it has not selected this new
10
+ Web point or changed a real consumer cohort.
11
+
12
+ ## Exact private dependency
13
+
14
+ All inputs below were downloaded through authenticated GitHub acquisition into
15
+ ignored `tmp/qgis-061-adoption-109/assets/`, then checked by bytes and SHA-256.
16
+ Only the public metadata descriptor travels in Web; no private source, wheel,
17
+ archive or credentials are included in the public wheel or image.
18
+
19
+ | Identity | Value |
20
+ | --- | --- |
21
+ | QGIS source/tag | `1ca6ed95195d44097057d7165dc5dc0730cdf1c0`, `v0.6.1` |
22
+ | External `release.json` | 1251 bytes, `c09148927767855e6694e246ae38a9bdda4181086d18f78c204999648ec1089c` |
23
+ | Private wheel | 334648 bytes, `89998d9e41dcc90b8768ac036bf480e3501138d715824e12f928ab15f75dfbb7` |
24
+ | Private two-image archive | 1372056314 bytes, `fa870962e40bf416aeea262047b32a148bb3a73f8ae2dff6cbd4b20426453d1d` |
25
+ | Controller configuration ID | `sha256:d06b742c3e7d2e9383cf8a1d22bce928dd806f316a0bcbb1f676f50e22e94b05` |
26
+ | Auxiliary QGIS engine | `sha256:1003721d96abe9607d8337b36851f9b29f84c2f8f92b377d1a73ff03c9d15cd2` |
27
+ | Release producer revision | `sha256:35443a3343f403892b387c1622656ff3a242044b890fe4ea0cd1e66dd52653e1` |
28
+ | Native `practice-schema` revision | `sha256:4604801be887a19747aa74c84a2d99141308fadde44f5cddacb4d821b6861398` |
29
+ | Separately scoped published D0 code revision | `sha256:8e5f451cd0669c80e17c6b1b72f3e22dce53dbd405098ef67f6980cf759553bc` |
30
+ | Web descriptor SHA-256 | `8f2ff3531ad2a65fab9992ac5ef01d3cec65b88625ee26d5b2149be8ad065b99` |
31
+
32
+ The canonical private receipt URL is
33
+ `https://github.com/dosquartsdedocs/unaltracaptura-qgis/releases/download/v0.6.1/release.json`.
34
+ Its source, version, producer, wheel and two images match the Web declaration.
35
+ The archive checksum, both configuration hashes, platform and declared layer
36
+ presence were checked without extracting/loading/retagging the archive.
37
+ The controller OCI source label remains actually absent (`null`), not the Git SHA.
38
+
39
+ The native practice fingerprint is **4604801b…**, observed both through the
40
+ installed provider CLI and inside its pinned controller. The D0 fingerprint
41
+ **8e5f451c…** cannot replace it: an initial schema probe using that other scope
42
+ was refused. Both v1/v2 probes pass with the native practice revision. Regression
43
+ tests reject the old 0.6.0 revision, the D0 revision and the release producer as
44
+ substitutes. The schema hashes remain respectively
45
+ `9bc7f15ede9d67b3e1209c329da13d9fcb08004090d05b27662a43de6edf3445` and
46
+ `528c8be229c72c346f134ffaa60094f94224094a25b6fb11bcc87802ddc7fffb`.
47
+
48
+ `practice_verifier` remains the Web startup worker role. `engine.image_id` is the
49
+ separate QGIS auxiliary, checked before native reopen, not a `qgis` entry in Web
50
+ `--worker-images`. The bridge and lifecycle implementation are unchanged.
51
+ PDF 0.7.1, its producer `b7ec1d7a139c65b3b0b88699cdbeb19080f13be1`, core/workflow
52
+ `3332e0b93933f12317e05f1ce8d38ce80046feab`, Dia 0.5.0 and Vega 0.5.1 retain their
53
+ independent selections. Public CI reports private execution as `not_run`.
54
+
55
+ ## Local synthetic acceptance
56
+
57
+ `test/qgis_compatibility_smoke.py` accepts explicit already-acquired inputs and
58
+ immutable image IDs. Its only GIS input is the provider's pinned
59
+ `examples/portable-practice/`: two invented projected points, an 80 m buffer and
60
+ a 32×24 synthetic raster. No manual, real dataset or existing screenshot is used.
61
+ The provider example stays outside Git/public packages and its source blobs and
62
+ hashes are retained alongside the downloaded inputs.
63
+
64
+ The complete passing run is
65
+ `tmp/qgis-061-adoption-109/local-acceptance-03/evidence.json`, SHA-256
66
+ `3122e0751813ad24f0f2456adae84c792f7d3b0693bc504f3d9d73a30201a6fc`.
67
+
68
+ - Local Web-only image: `sha256:765b10855cc70f5cdaf18d998bac8cdbe60621c3a8fcbc90f66bca8a02c0dfc7`.
69
+ - Local wheel: `14fca099e7b725a0041f42bc32dfdb80bc34c454d5983bfda9ffbc090fe17827`.
70
+ - Descriptor bytes match the source, built wheel and installed Web image.
71
+ - Real MCP initialization, both practice `resources/read`, worker identity and
72
+ dry-run/actual composition pass with the fresh installed host launcher.
73
+ - The native QGIS run retains eight successful controls, two GeoPackages, one
74
+ raster, two portable projects and its synthetic capture/bundle.
75
+ - Each recipient receives a PDF and ZIP. Exact declared ZIP membership, member
76
+ hashes, PDF bytes/receipts, readable pages, recipient-specific text and retained
77
+ original inputs are checked. Repeated composition refuses overwrite.
78
+ - Selected packet bytes extracted from each ZIP are rechecked and reopened in
79
+ QGIS. The observed engine uses only the selected readonly packet, network none,
80
+ and its exact CID is absent afterward. Private verifier teardown and Web
81
+ drain/EOF/session-status confirm resource release.
82
+
83
+ Attempts 01/02 are retained: the acceptance driver initially inherited the host
84
+ test `PYTHONPATH` in its wheel-install/session-status subprocesses. The driver now
85
+ scrubs that environment, as it already did for the MCP launch. These were test
86
+ driver failures, not successful installed acceptance or changes to production
87
+ transport. The complete attempt 03 passes with the same Web package/runtime.
88
+
89
+ Host suite: **731 discovered, 703 passed, 28 explicit optional skips**.
90
+ `distribution-check`, `workflow-check`, `wheel-check`, `gem-check`, `mcp-check`
91
+ and the full `mcp-smoke` pass. `docs-build` also passes. Docker Make checks use issue-owned development
92
+ names (`unaltraweb:issue109-073`, `unaltraweb-mcp:issue109-073` and
93
+ `unaltraweb-manual-pdf:issue109-073`), not published aliases. Gem checks execute
94
+ inside that prepared Web image with network disabled.
95
+ The wheel gate additionally checks descriptor/BOM byte equality and absence of
96
+ private QGIS package roots. Exact-head review/CI precede integration and immutable
97
+ publication.
98
+
99
+ ## Publication and adoption gates
100
+
101
+ Use the normal reviewed-source image/package workflows and receipt-only release
102
+ commit. Reverify exact downloaded Web artifacts and the same descriptor against
103
+ the final candidates; retain the public controller/PDF archives separately from
104
+ the private QGIS dependency. Do not publish the private intake directory.
105
+
106
+ Return final immutable Web/package/descriptor/receipt/image references to
107
+ gaContExt #38. The hub then owns new preparation, compatibility curation and any
108
+ explicit consumer CAS selection/reload. Local acceptance, verified publication
109
+ and actual consumer adoption are distinct states. No teaching approval, scientific
110
+ manual recomputation, W1/SDK expansion or automatic consumer migration is claimed.
@@ -76,6 +76,11 @@ def main() -> int:
76
76
  for installed_path, source_path in launcher_files.items():
77
77
  if archive.read(launcher_prefix + installed_path) != (ROOT / source_path).read_bytes():
78
78
  raise RuntimeError(f"Wheel launcher asset differs from source: {installed_path}")
79
+ for name in ("component-contract.json", "practice-verifier-runtime.json"):
80
+ if archive.read("unaltraweb_mcp/" + name) != (ROOT / "src/unaltraweb_mcp" / name).read_bytes():
81
+ raise RuntimeError(f"Wheel dependency declaration differs from source: {name}")
82
+ if any(name.startswith(("veure_qgis_mcp/", "unaltracaptura_annotations/")) for name in names):
83
+ raise RuntimeError("Private QGIS implementation leaked into the public wheel")
79
84
  forbidden_roots = {"docs", "scripts", "_layouts", "_includes", "_sass"}
80
85
  leaked = []
81
86
  for name in names:
@@ -2,8 +2,8 @@
2
2
  "$schema": "component-contract.schema.json",
3
3
  "schema_version": 1,
4
4
  "release": {
5
- "version": "0.7.2",
6
- "tag": "v0.7.2"
5
+ "version": "0.7.3",
6
+ "tag": "v0.7.3"
7
7
  },
8
8
  "consumer_integration": {
9
9
  "schema_version": 1,
@@ -62,10 +62,10 @@
62
62
  "gem": {
63
63
  "kind": "gem",
64
64
  "name": "unaltraweb",
65
- "version": "0.7.2",
66
- "release": "v0.7.2",
65
+ "version": "0.7.3",
66
+ "release": "v0.7.3",
67
67
  "release_status": "ready",
68
- "reference": "unaltraweb (= 0.7.2)",
68
+ "reference": "unaltraweb (= 0.7.3)",
69
69
  "repository": "https://github.com/dosquartsdedocs/unaltraweb",
70
70
  "included_in_wheel": false,
71
71
  "features": ["jekyll-core", "site-build"]
@@ -73,10 +73,10 @@
73
73
  "wheel": {
74
74
  "kind": "python-wheel",
75
75
  "name": "unaltraweb-mcp",
76
- "version": "0.7.2",
77
- "release": "v0.7.2",
76
+ "version": "0.7.3",
77
+ "release": "v0.7.3",
78
78
  "release_status": "ready",
79
- "reference": "unaltraweb-mcp==0.7.2",
79
+ "reference": "unaltraweb-mcp==0.7.3",
80
80
  "repository": "https://github.com/dosquartsdedocs/unaltraweb",
81
81
  "included_in_wheel": true,
82
82
  "features": ["calibre-import", "doctor", "new-web", "offline-inspection", "mcp-control-plane", "source-ci"]
@@ -84,10 +84,10 @@
84
84
  "runtime": {
85
85
  "kind": "container",
86
86
  "name": "unaltraweb runtime",
87
- "version": "0.7.2",
88
- "release": "v0.7.2",
87
+ "version": "0.7.3",
88
+ "release": "v0.7.3",
89
89
  "release_status": "ready",
90
- "reference": "ghcr.io/dosquartsdedocs/unaltraweb:0.7.2",
90
+ "reference": "ghcr.io/dosquartsdedocs/unaltraweb:0.7.3",
91
91
  "image_repository": "ghcr.io/dosquartsdedocs/unaltraweb",
92
92
  "repository": "https://github.com/dosquartsdedocs/unaltraweb",
93
93
  "included_in_wheel": false,
@@ -96,10 +96,10 @@
96
96
  "mcp": {
97
97
  "kind": "container",
98
98
  "name": "unaltraweb MCP runtime",
99
- "version": "0.7.2",
100
- "release": "v0.7.2",
99
+ "version": "0.7.3",
100
+ "release": "v0.7.3",
101
101
  "release_status": "ready",
102
- "reference": "ghcr.io/dosquartsdedocs/unaltraweb-mcp:0.7.2",
102
+ "reference": "ghcr.io/dosquartsdedocs/unaltraweb-mcp:0.7.3",
103
103
  "image_repository": "ghcr.io/dosquartsdedocs/unaltraweb-mcp",
104
104
  "repository": "https://github.com/dosquartsdedocs/unaltraweb",
105
105
  "included_in_wheel": false,
@@ -156,10 +156,10 @@
156
156
  "qgis_practice_verifier": {
157
157
  "kind": "companion",
158
158
  "name": "unaltracaptura-qgis",
159
- "version": "0.6.0",
160
- "release": "v0.6.0",
159
+ "version": "0.6.1",
160
+ "release": "v0.6.1",
161
161
  "release_status": "released",
162
- "reference": "https://github.com/dosquartsdedocs/unaltracaptura-qgis.git@v0.6.0",
162
+ "reference": "https://github.com/dosquartsdedocs/unaltracaptura-qgis.git@v0.6.1",
163
163
  "repository": "https://github.com/dosquartsdedocs/unaltracaptura-qgis",
164
164
  "included_in_wheel": false,
165
165
  "features": ["qgis-practice-v1", "qgis-practice-v2", "private-prepared-runtime"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unaltraweb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - dosquartsdedocs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-12 00:00:00.000000000 Z
11
+ date: 2026-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: classifier-reborn
@@ -817,6 +817,7 @@ files:
817
817
  - docs/agents/practice-pdf-installable-98.md
818
818
  - docs/agents/practice-runtime-archives-98.md
819
819
  - docs/agents/private-practice-verifier-98.md
820
+ - docs/agents/qgis-0.6.1-adoption-109.md
820
821
  - docs/agents/quarto-computation-adoption.md
821
822
  - docs/agents/retained-letter-import.md
822
823
  - docs/agents/source-ci-98.md