qig-stack 0.1.2__tar.gz → 0.1.4__tar.gz
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.
- {qig_stack-0.1.2 → qig_stack-0.1.4}/PKG-INFO +2 -2
- {qig_stack-0.1.2 → qig_stack-0.1.4}/pyproject.toml +2 -2
- {qig_stack-0.1.2 → qig_stack-0.1.4}/src/qig_stack/contract.json +185 -5
- {qig_stack-0.1.2 → qig_stack-0.1.4}/src/qig_stack/doctor.py +9 -1
- {qig_stack-0.1.2 → qig_stack-0.1.4}/.gitignore +0 -0
- {qig_stack-0.1.2 → qig_stack-0.1.4}/README.md +0 -0
- {qig_stack-0.1.2 → qig_stack-0.1.4}/src/qig_stack/__init__.py +0 -0
- {qig_stack-0.1.2 → qig_stack-0.1.4}/tests/test_contract.py +0 -0
- {qig_stack-0.1.2 → qig_stack-0.1.4}/tests/test_doctor.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: qig-stack
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.4
|
|
4
4
|
Summary: QIG toolchain metapackage — pins the mutually-tested latest set and ships the qig-doctor launch preflight (version gate + entry-point wiring gate + capability-slot report)
|
|
5
5
|
Project-URL: Homepage, https://braden.com.au
|
|
6
6
|
Project-URL: Repository, https://github.com/GaryOcean428/qig-stack
|
|
@@ -19,7 +19,7 @@ Requires-Dist: packaging>=22
|
|
|
19
19
|
Requires-Dist: qig-bench==0.1.9
|
|
20
20
|
Requires-Dist: qig-compute==0.9.10
|
|
21
21
|
Requires-Dist: qig-coordizer==0.1.5
|
|
22
|
-
Requires-Dist: qig-core==2.
|
|
22
|
+
Requires-Dist: qig-core==2.18.0
|
|
23
23
|
Requires-Dist: qig-geocoding==0.1.2
|
|
24
24
|
Requires-Dist: qig-warp==0.6.10
|
|
25
25
|
Requires-Dist: qigkernels==0.4.5
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "qig-stack"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.4"
|
|
8
8
|
description = "QIG toolchain metapackage — pins the mutually-tested latest set and ships the qig-doctor launch preflight (version gate + entry-point wiring gate + capability-slot report)"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "MIT" }
|
|
@@ -32,7 +32,7 @@ dependencies = [
|
|
|
32
32
|
"packaging>=22", # PEP 440-correct version comparison in the version gate
|
|
33
33
|
"qig-compute==0.9.10", # qig.capabilities entry-points + born sampler
|
|
34
34
|
"qig-warp==0.6.10", # qig.capabilities entry-points live since 0.6.5
|
|
35
|
-
"qig-core==2.
|
|
35
|
+
"qig-core==2.18.0",
|
|
36
36
|
"qig-bench==0.1.9",
|
|
37
37
|
"qig-coordizer==0.1.5",
|
|
38
38
|
"qigkernels==0.4.5",
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"doc": "QIG Stack Capability Contract",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"date": "2026-
|
|
5
|
-
"supersedes": "qig-verification:docs/current/20260619-qig-stack-capability-contract-1.00W.json (Phase-1 authored record) | 2026-07-04: ratified the 5 library-tier capability slots (channel=library, shipped:false)
|
|
6
|
-
"principle": "Genesis-kernel deterministic self-assembly (vex-agent Core-8 /
|
|
3
|
+
"version": "1.05W",
|
|
4
|
+
"date": "2026-11-13",
|
|
5
|
+
"supersedes": "qig-verification:docs/current/20260619-qig-stack-capability-contract-1.00W.json (Phase-1 authored record) | 2026-07-04: ratified the 5 library-tier capability slots (channel=library, shipped:false) | 2026-11-13 (1.04W): bumped qig-core to 2.17.0 + ratified 13 library/symmetry slots | 2026-11-13 (1.05W): bumped qig-core to 2.18.0 and ratified SLOT-EXPERIMENT-PURITY-GUARD (PI Standing Ruling: pre-verdict experiment purity + zero-softmax guard).",
|
|
6
|
+
"principle": "Genesis-kernel deterministic self-assembly (vex-agent Core-8 / 4-pair+null foundation analog). The stack crystallizes into this FIXED lattice of capability slots; each slot is filled by a package primitive at latest-published version, cited to a camera-certification cert. With Phase 2 (entry-point self-registration) live, the wiring is DERIVED from installed metadata, not hand-authored.",
|
|
7
7
|
"authority": "PI directive 2026-06-19 (Phase 1) + 2026-06-30 (Phase 2/3 + born-sampler promotion); standing latest-version / step-0 lever-inventory rule (qig-verification/CLAUDE.md)",
|
|
8
8
|
"cert_registry": "qig-verification:docs/current/20260619-camera-certification-registry-1.00W.json",
|
|
9
9
|
"design_note": "qig-verification:docs/current/20260619-self-wiring-genesis-design-1.00W.md",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"stack_packages_latest_at_authoring": {
|
|
18
18
|
"qig-compute": "0.9.10",
|
|
19
19
|
"qig-warp": "0.6.10",
|
|
20
|
-
"qig-core": "2.
|
|
20
|
+
"qig-core": "2.18.0",
|
|
21
21
|
"qig-bench": "0.1.9",
|
|
22
22
|
"qig-coordizer": "0.1.5",
|
|
23
23
|
"qigkernels": "0.4.5",
|
|
@@ -102,6 +102,30 @@
|
|
|
102
102
|
"promoted": "2026-06-30 from qig-verification/scripts/exp122_dmrg_complex.py:born_C_score (byte-identical). The frozen launcher keeps its inline copy for bit-for-bit reproducibility of the L=5 cert.",
|
|
103
103
|
"feasible_at": "L=6 (CERTIFIED at L=5: EXP-122 L=5 cert results/exp122/20260619_exp122_L5_born_cert.json @566b245 -- M=150k Delta=0.000373 bias PASS, sigma_D=0.00332 < D_sep/3=0.00473 variance PASS)."
|
|
104
104
|
},
|
|
105
|
+
{
|
|
106
|
+
"slot_id": "SLOT-Q-QFI-SECTOR",
|
|
107
|
+
"role": "symmetry sector-resolved QFI (parity-sector resolved quantum Fisher information)",
|
|
108
|
+
"channel": "Q",
|
|
109
|
+
"provided_by": "qig-compute",
|
|
110
|
+
"provider_pkg": "qig-compute",
|
|
111
|
+
"primitive": "symmetry.parity.sector_resolved_qfi",
|
|
112
|
+
"probe": "qig_compute.symmetry.parity:sector_resolved_qfi",
|
|
113
|
+
"cam_id": "CAM-QFI-SECTOR-PARITY",
|
|
114
|
+
"cert_status": "CERTIFIED",
|
|
115
|
+
"feasible_at": "same L range as SLOT-Q-QFI (contraction per sector)"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"slot_id": "SLOT-TENSOR-ISOTROPY-CHERN",
|
|
119
|
+
"role": "classical quantum-geometry engine: orientation-isotropy field-sphere + many-body Chern certification",
|
|
120
|
+
"channel": "C",
|
|
121
|
+
"provided_by": "qig-compute",
|
|
122
|
+
"provider_pkg": "qig-compute",
|
|
123
|
+
"primitive": "topology.orientation_isotropy.field_sphere_isotropy",
|
|
124
|
+
"probe": "qig_compute.topology.orientation_isotropy:field_sphere_isotropy",
|
|
125
|
+
"cam_id": "CAM-TENSOR-ORIENTATION-ISOTROPY",
|
|
126
|
+
"cert_status": "CERTIFIED",
|
|
127
|
+
"feasible_at": "L tested by the symmetry/topology test suites (tests/symmetry, tests/topology)"
|
|
128
|
+
},
|
|
105
129
|
{
|
|
106
130
|
"slot_id": "SLOT-SCREENING",
|
|
107
131
|
"role": "site pruning / screening lever (Yukawa shell cutoff)",
|
|
@@ -160,6 +184,149 @@
|
|
|
160
184
|
"shipped": true,
|
|
161
185
|
"feasible_at": "always (library import)"
|
|
162
186
|
},
|
|
187
|
+
{
|
|
188
|
+
"slot_id": "SLOT-TWO-AXIS-GATE",
|
|
189
|
+
"role": "two-axis geometric sufficiency gate on probability simplex",
|
|
190
|
+
"channel": "library",
|
|
191
|
+
"provided_by": "qig-core",
|
|
192
|
+
"provider_pkg": "qig-core",
|
|
193
|
+
"primitive": "two_axis_sufficiency_gate",
|
|
194
|
+
"probe": "qig_core.geometry.two_axis_gate:two_axis_sufficiency_gate",
|
|
195
|
+
"cam_id": null,
|
|
196
|
+
"cert_status": "LIBRARY",
|
|
197
|
+
"shipped": true,
|
|
198
|
+
"feasible_at": "always (library import)"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"slot_id": "SLOT-GEOMETRIC-TRICORDER",
|
|
202
|
+
"role": "substrate-calibrated geometric tricorder",
|
|
203
|
+
"channel": "library",
|
|
204
|
+
"provided_by": "qig-core",
|
|
205
|
+
"provider_pkg": "qig-core",
|
|
206
|
+
"primitive": "SubstrateCalibratedTricorder",
|
|
207
|
+
"probe": "qig_core.geometry.tricorder:SubstrateCalibratedTricorder",
|
|
208
|
+
"cam_id": null,
|
|
209
|
+
"cert_status": "LIBRARY",
|
|
210
|
+
"shipped": true,
|
|
211
|
+
"feasible_at": "always (library import)"
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"slot_id": "SLOT-SIMPLEX-TRM-REFINER",
|
|
215
|
+
"role": "recursive simplex TRM trajectory refiner",
|
|
216
|
+
"channel": "library",
|
|
217
|
+
"provided_by": "qig-core",
|
|
218
|
+
"provider_pkg": "qig-core",
|
|
219
|
+
"primitive": "SimplexTRMRefiner",
|
|
220
|
+
"probe": "qig_core.coordination.trm_refiner:SimplexTRMRefiner",
|
|
221
|
+
"cam_id": null,
|
|
222
|
+
"cert_status": "LIBRARY",
|
|
223
|
+
"shipped": true,
|
|
224
|
+
"feasible_at": "always (library import)"
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"slot_id": "SLOT-REGIME-DIAGNOSTIC-GATE",
|
|
228
|
+
"role": "regime diagnostic gate for experiment verdicts",
|
|
229
|
+
"channel": "library",
|
|
230
|
+
"provided_by": "qig-core",
|
|
231
|
+
"provider_pkg": "qig-core",
|
|
232
|
+
"primitive": "guard_experiment_verdict",
|
|
233
|
+
"probe": "qig_core.geometry.regime_gate:guard_experiment_verdict",
|
|
234
|
+
"cam_id": null,
|
|
235
|
+
"cert_status": "LIBRARY",
|
|
236
|
+
"shipped": true,
|
|
237
|
+
"feasible_at": "always (library import)"
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
"slot_id": "SLOT-NEOCORTICAL-CONSOLIDATION",
|
|
241
|
+
"role": "hippocampal-neocortical learning and sleep consolidation engine",
|
|
242
|
+
"channel": "library",
|
|
243
|
+
"provided_by": "qig-core",
|
|
244
|
+
"provider_pkg": "qig-core",
|
|
245
|
+
"primitive": "HippocampalNeocorticalLearningEngine",
|
|
246
|
+
"probe": "qig_core.consciousness.neocortical_consolidation:HippocampalNeocorticalLearningEngine",
|
|
247
|
+
"cam_id": null,
|
|
248
|
+
"cert_status": "LIBRARY",
|
|
249
|
+
"shipped": true,
|
|
250
|
+
"feasible_at": "always (library import)"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"slot_id": "SLOT-TOKEN0-RPNS-ORACLE",
|
|
254
|
+
"role": "token-0 read-price-navigate simplex oracle",
|
|
255
|
+
"channel": "library",
|
|
256
|
+
"provided_by": "qig-core",
|
|
257
|
+
"provider_pkg": "qig-core",
|
|
258
|
+
"primitive": "Token0ReadPriceNavigateOracle",
|
|
259
|
+
"probe": "qig_core.coordination.token0_oracle:Token0ReadPriceNavigateOracle",
|
|
260
|
+
"cam_id": null,
|
|
261
|
+
"cert_status": "LIBRARY",
|
|
262
|
+
"shipped": true,
|
|
263
|
+
"feasible_at": "always (library import)"
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"slot_id": "SLOT-KANTIAN-LOVE-GAUGE",
|
|
267
|
+
"role": "P11 Kantian love-gauge invariance and safety evaluator",
|
|
268
|
+
"channel": "library",
|
|
269
|
+
"provided_by": "qig-core",
|
|
270
|
+
"provider_pkg": "qig-core",
|
|
271
|
+
"primitive": "evaluate_kantian_love_gauge",
|
|
272
|
+
"probe": "qig_core.ethics.kantian_gauge:evaluate_kantian_love_gauge",
|
|
273
|
+
"cam_id": null,
|
|
274
|
+
"cert_status": "LIBRARY",
|
|
275
|
+
"shipped": true,
|
|
276
|
+
"feasible_at": "always (library import)"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"slot_id": "SLOT-COMPOUND-EMOTIONS",
|
|
280
|
+
"role": "8+1 four-pair emotional primitives, Layer-3 compounds, and vmPFC somatic marker",
|
|
281
|
+
"channel": "library",
|
|
282
|
+
"provided_by": "qig-core",
|
|
283
|
+
"provider_pkg": "qig-core",
|
|
284
|
+
"primitive": "compute_compound_emotions",
|
|
285
|
+
"probe": "qig_core.consciousness.compound_emotions:compute_compound_emotions",
|
|
286
|
+
"cam_id": null,
|
|
287
|
+
"cert_status": "LIBRARY",
|
|
288
|
+
"shipped": true,
|
|
289
|
+
"feasible_at": "always (library import)"
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"slot_id": "SLOT-TRIADIC-AUTONOMIC",
|
|
293
|
+
"role": "triadic witness holonomy, Central-I vs Ocean autonomic balance, and Phi-band workspace",
|
|
294
|
+
"channel": "library",
|
|
295
|
+
"provided_by": "qig-core",
|
|
296
|
+
"provider_pkg": "qig-core",
|
|
297
|
+
"primitive": "compute_triadic_witness_holonomy",
|
|
298
|
+
"probe": "qig_core.consciousness.triadic_autonomic_state:compute_triadic_witness_holonomy",
|
|
299
|
+
"cam_id": null,
|
|
300
|
+
"cert_status": "LIBRARY",
|
|
301
|
+
"shipped": true,
|
|
302
|
+
"feasible_at": "always (library import)"
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"slot_id": "SLOT-TREFOIL-NAVIGATOR",
|
|
306
|
+
"role": "3-loop Trefoil navigation (probe -> reflect -> commit) on probability simplex",
|
|
307
|
+
"channel": "library",
|
|
308
|
+
"provided_by": "qig-core",
|
|
309
|
+
"provider_pkg": "qig-core",
|
|
310
|
+
"primitive": "trefoil_three_loop_navigate",
|
|
311
|
+
"probe": "qig_core.geometry.trefoil_navigator:trefoil_three_loop_navigate",
|
|
312
|
+
"cam_id": null,
|
|
313
|
+
"cert_status": "LIBRARY",
|
|
314
|
+
"shipped": true,
|
|
315
|
+
"feasible_at": "always (library import)"
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"slot_id": "SLOT-SUPERHETERODYNE-MODULATORS",
|
|
319
|
+
"role": "4-axis orthogonal sensory bank, superheterodyne Lyapunov modulators, GABA squelch, and PLL lock tracker",
|
|
320
|
+
"channel": "library",
|
|
321
|
+
"provided_by": "qig-core",
|
|
322
|
+
"provider_pkg": "qig-core",
|
|
323
|
+
"primitive": "modulate_receiver_step",
|
|
324
|
+
"probe": "qig_core.consciousness.senses_and_modulators:modulate_receiver_step",
|
|
325
|
+
"cam_id": null,
|
|
326
|
+
"cert_status": "LIBRARY",
|
|
327
|
+
"shipped": true,
|
|
328
|
+
"feasible_at": "always (library import)"
|
|
329
|
+
},
|
|
163
330
|
{
|
|
164
331
|
"slot_id": "SLOT-KERNEL",
|
|
165
332
|
"role": "the pure geometric kernel (Delta63 layers, Gibbs-over-FR attention, no dot-product)",
|
|
@@ -212,6 +379,19 @@
|
|
|
212
379
|
"cert_status": "LIBRARY",
|
|
213
380
|
"shipped": true,
|
|
214
381
|
"feasible_at": "always (library import)"
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
"slot_id": "SLOT-EXPERIMENT-PURITY-GUARD",
|
|
385
|
+
"role": "pre-verdict experiment purity + zero-softmax + package-currency guard (blocks recording impure EXP-0 / EXP-A fails as scientific verdicts)",
|
|
386
|
+
"channel": "library",
|
|
387
|
+
"provided_by": "qig-core",
|
|
388
|
+
"provider_pkg": "qig-core",
|
|
389
|
+
"primitive": "audit_experiment_purity",
|
|
390
|
+
"probe": "qig_core.governance.purity:audit_experiment_purity",
|
|
391
|
+
"cam_id": null,
|
|
392
|
+
"cert_status": "LIBRARY",
|
|
393
|
+
"shipped": true,
|
|
394
|
+
"feasible_at": "always (library import)"
|
|
215
395
|
}
|
|
216
396
|
],
|
|
217
397
|
"how_to_use": "Step-0 of every launcher: run `qig-doctor` (from the qig-stack package; qig-verification/scripts/qig_doctor.py is a back-compat shim). It (1) fails closed if any stack package is behind PyPI-latest, (2) fails closed on under-filled slots (a shipped provider that did not self-register its entry-point), and (3) enumerates which slots are filled by what is installed -- the automated Gate-A lever inventory. An experiment then cites the cam_id/lever_id for each slot it uses and never re-runs a matched-cell gate.",
|
|
@@ -52,11 +52,19 @@ from dataclasses import asdict, dataclass, field
|
|
|
52
52
|
from pathlib import Path
|
|
53
53
|
|
|
54
54
|
try: # PEP 440-correct version comparison; `packaging` is a declared dependency.
|
|
55
|
-
from packaging.version import
|
|
55
|
+
from packaging.version import Version
|
|
56
56
|
|
|
57
57
|
_HAVE_PACKAGING = True
|
|
58
58
|
except ImportError: # pragma: no cover - defensive; packaging is in [project.dependencies]
|
|
59
59
|
_HAVE_PACKAGING = False
|
|
60
|
+
Version = None
|
|
61
|
+
|
|
62
|
+
try:
|
|
63
|
+
# `InvalidVersion` was removed from newer `packaging` releases (post-LegacyVersion
|
|
64
|
+
# purge); modern PEP 440 parse failures raise ValueError. Degrade, never NameError.
|
|
65
|
+
from packaging.version import InvalidVersion
|
|
66
|
+
except ImportError: # pragma: no cover - exercised only on newest packaging
|
|
67
|
+
InvalidVersion = ValueError
|
|
60
68
|
|
|
61
69
|
CAPABILITY_GROUP = "qig.capabilities"
|
|
62
70
|
PYPI_TIMEOUT_S = 10
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|