equiframe-benchmark 0.12.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.
Files changed (152) hide show
  1. equiframe_benchmark-0.12.4/CHANGELOG.md +317 -0
  2. equiframe_benchmark-0.12.4/LICENSE +21 -0
  3. equiframe_benchmark-0.12.4/PKG-INFO +343 -0
  4. equiframe_benchmark-0.12.4/PROTOCOL_V2.md +172 -0
  5. equiframe_benchmark-0.12.4/README.md +308 -0
  6. equiframe_benchmark-0.12.4/THIRD_PARTY_NOTICES.md +8 -0
  7. equiframe_benchmark-0.12.4/examples/evaluation_local.py +148 -0
  8. equiframe_benchmark-0.12.4/examples/integration_local.py +324 -0
  9. equiframe_benchmark-0.12.4/examples/pairwise_evaluation.py +42 -0
  10. equiframe_benchmark-0.12.4/examples/scale_local.py +38 -0
  11. equiframe_benchmark-0.12.4/pyproject.toml +84 -0
  12. equiframe_benchmark-0.12.4/schemas/AwardReconciliationResult-1.0.schema.json +239 -0
  13. equiframe_benchmark-0.12.4/schemas/AwardReconciliationSpec-1.0.schema.json +71 -0
  14. equiframe_benchmark-0.12.4/schemas/BootstrapPlan-1.0.schema.json +52 -0
  15. equiframe_benchmark-0.12.4/schemas/BundleLimits-1.0.schema.json +44 -0
  16. equiframe_benchmark-0.12.4/schemas/CalibrationManifest-1.0.schema.json +106 -0
  17. equiframe_benchmark-0.12.4/schemas/CalibrationSelection-1.0.schema.json +1350 -0
  18. equiframe_benchmark-0.12.4/schemas/Candidate-1.0.schema.json +157 -0
  19. equiframe_benchmark-0.12.4/schemas/Catalog-1.0.schema.json +1910 -0
  20. equiframe_benchmark-0.12.4/schemas/ComparisonReceipt-1.0.schema.json +145 -0
  21. equiframe_benchmark-0.12.4/schemas/CostComparisonResult-1.0.schema.json +4470 -0
  22. equiframe_benchmark-0.12.4/schemas/CostProtocol-1.0.schema.json +78 -0
  23. equiframe_benchmark-0.12.4/schemas/CostSpec-1.0.schema.json +2794 -0
  24. equiframe_benchmark-0.12.4/schemas/DetectorSelectionAudit-1.0.schema.json +62 -0
  25. equiframe_benchmark-0.12.4/schemas/DistributionReadiness-1.0.schema.json +704 -0
  26. equiframe_benchmark-0.12.4/schemas/EvaluationConfig-1.0.schema.json +126 -0
  27. equiframe_benchmark-0.12.4/schemas/EvaluationRecord-1.0.schema.json +246 -0
  28. equiframe_benchmark-0.12.4/schemas/EvaluationReport-1.0.schema.json +998 -0
  29. equiframe_benchmark-0.12.4/schemas/FreezeAudit-1.0.schema.json +127 -0
  30. equiframe_benchmark-0.12.4/schemas/FreezeDefinition-1.0.schema.json +5833 -0
  31. equiframe_benchmark-0.12.4/schemas/FreezeManifest-1.0.schema.json +6104 -0
  32. equiframe_benchmark-0.12.4/schemas/FrozenFamilyModel-1.0.schema.json +2209 -0
  33. equiframe_benchmark-0.12.4/schemas/IntegrationResult-1.0.schema.json +5066 -0
  34. equiframe_benchmark-0.12.4/schemas/IntegrationSpec-1.0.schema.json +2316 -0
  35. equiframe_benchmark-0.12.4/schemas/NameCheck-1.0.schema.json +83 -0
  36. equiframe_benchmark-0.12.4/schemas/OracleResult-1.0.schema.json +3322 -0
  37. equiframe_benchmark-0.12.4/schemas/OracleVerificationBridge-1.0.schema.json +306 -0
  38. equiframe_benchmark-0.12.4/schemas/PairwiseReport-1.0.schema.json +1388 -0
  39. equiframe_benchmark-0.12.4/schemas/ProcessObservation-1.0.schema.json +407 -0
  40. equiframe_benchmark-0.12.4/schemas/ReproductionBundle-1.0.schema.json +108 -0
  41. equiframe_benchmark-0.12.4/schemas/ReproductionRecord-1.0.schema.json +46 -0
  42. equiframe_benchmark-0.12.4/schemas/Review-1.0.schema.json +55 -0
  43. equiframe_benchmark-0.12.4/schemas/ReviewAssignment-1.0.schema.json +50 -0
  44. equiframe_benchmark-0.12.4/schemas/ReviewPacket-1.0.schema.json +1824 -0
  45. equiframe_benchmark-0.12.4/schemas/ScaleFinalization-1.0.schema.json +59 -0
  46. equiframe_benchmark-0.12.4/schemas/ScaleRun-1.0.schema.json +4143 -0
  47. equiframe_benchmark-0.12.4/schemas/ScaleSpec-1.0.schema.json +284 -0
  48. equiframe_benchmark-0.12.4/schemas/ScaleTrial-1.0.schema.json +3453 -0
  49. equiframe_benchmark-0.12.4/schemas/ScaleWorkerCompletion-1.0.schema.json +66 -0
  50. equiframe_benchmark-0.12.4/schemas/Scenario-1.0.schema.json +1876 -0
  51. equiframe_benchmark-0.12.4/schemas/SnapshotManifest-1.0.schema.json +427 -0
  52. equiframe_benchmark-0.12.4/schemas/SplitManifest-1.0.schema.json +101 -0
  53. equiframe_benchmark-0.12.4/schemas/StudyResult-1.0.schema.json +8071 -0
  54. equiframe_benchmark-0.12.4/schemas/TableExport-1.0.schema.json +75 -0
  55. equiframe_benchmark-0.12.4/schemas/TrainingManifest-1.0.schema.json +105 -0
  56. equiframe_benchmark-0.12.4/schemas/TrainingSelection-1.0.schema.json +1350 -0
  57. equiframe_benchmark-0.12.4/schemas/protocol-v2/CommonSupportV2-2.0.schema.json +327 -0
  58. equiframe_benchmark-0.12.4/schemas/protocol-v2/ContrastSpecV2-2.0.schema.json +37 -0
  59. equiframe_benchmark-0.12.4/schemas/protocol-v2/EvaluationConfigV2-2.0.schema.json +184 -0
  60. equiframe_benchmark-0.12.4/schemas/protocol-v2/EvaluationReportV2-2.0.schema.json +1237 -0
  61. equiframe_benchmark-0.12.4/schemas/protocol-v2/EvaluationStratumV2-2.0.schema.json +747 -0
  62. equiframe_benchmark-0.12.4/schemas/protocol-v2/FreezeDefinitionV2-2.0.schema.json +5951 -0
  63. equiframe_benchmark-0.12.4/schemas/protocol-v2/FreezeManifestV2-2.0.schema.json +6222 -0
  64. equiframe_benchmark-0.12.4/schemas/protocol-v2/PrincipalContrastV2-2.0.schema.json +578 -0
  65. equiframe_benchmark-0.12.4/schemas/protocol-v2/ProtocolReviewV2-2.0.schema.json +56 -0
  66. equiframe_benchmark-0.12.4/schemas/protocol-v2/SignedMetricV2-2.0.schema.json +51 -0
  67. equiframe_benchmark-0.12.4/schemas/protocol-v2/StudyCaseResultV2-2.0.schema.json +4881 -0
  68. equiframe_benchmark-0.12.4/schemas/protocol-v2/StudyResultV2-2.0.schema.json +8370 -0
  69. equiframe_benchmark-0.12.4/schemas/protocol-v2/TableExportV2-2.0.schema.json +75 -0
  70. equiframe_benchmark-0.12.4/src/equiframe_benchmark/__init__.py +284 -0
  71. equiframe_benchmark-0.12.4/src/equiframe_benchmark/__main__.py +3 -0
  72. equiframe_benchmark-0.12.4/src/equiframe_benchmark/_scale_workload.py +375 -0
  73. equiframe_benchmark-0.12.4/src/equiframe_benchmark/calibration_types.py +112 -0
  74. equiframe_benchmark-0.12.4/src/equiframe_benchmark/cli.py +196 -0
  75. equiframe_benchmark-0.12.4/src/equiframe_benchmark/commands.py +149 -0
  76. equiframe_benchmark-0.12.4/src/equiframe_benchmark/commands_scale.py +38 -0
  77. equiframe_benchmark-0.12.4/src/equiframe_benchmark/commands_step10.py +275 -0
  78. equiframe_benchmark-0.12.4/src/equiframe_benchmark/commands_v2.py +206 -0
  79. equiframe_benchmark-0.12.4/src/equiframe_benchmark/cost_table.py +62 -0
  80. equiframe_benchmark-0.12.4/src/equiframe_benchmark/costs.py +788 -0
  81. equiframe_benchmark-0.12.4/src/equiframe_benchmark/distribution.py +932 -0
  82. equiframe_benchmark-0.12.4/src/equiframe_benchmark/evaluation.py +614 -0
  83. equiframe_benchmark-0.12.4/src/equiframe_benchmark/evaluation_v2.py +428 -0
  84. equiframe_benchmark-0.12.4/src/equiframe_benchmark/fixtures.py +299 -0
  85. equiframe_benchmark-0.12.4/src/equiframe_benchmark/freeze.py +869 -0
  86. equiframe_benchmark-0.12.4/src/equiframe_benchmark/freeze_v2.py +412 -0
  87. equiframe_benchmark-0.12.4/src/equiframe_benchmark/integration.py +655 -0
  88. equiframe_benchmark-0.12.4/src/equiframe_benchmark/io.py +29 -0
  89. equiframe_benchmark-0.12.4/src/equiframe_benchmark/models.py +313 -0
  90. equiframe_benchmark-0.12.4/src/equiframe_benchmark/models_v2.py +13 -0
  91. equiframe_benchmark-0.12.4/src/equiframe_benchmark/mutations.py +34 -0
  92. equiframe_benchmark-0.12.4/src/equiframe_benchmark/oracle.py +264 -0
  93. equiframe_benchmark-0.12.4/src/equiframe_benchmark/pairwise.py +248 -0
  94. equiframe_benchmark-0.12.4/src/equiframe_benchmark/pilot.py +254 -0
  95. equiframe_benchmark-0.12.4/src/equiframe_benchmark/py.typed +0 -0
  96. equiframe_benchmark-0.12.4/src/equiframe_benchmark/reconciliation.py +294 -0
  97. equiframe_benchmark-0.12.4/src/equiframe_benchmark/reproduction.py +542 -0
  98. equiframe_benchmark-0.12.4/src/equiframe_benchmark/scale_io.py +19 -0
  99. equiframe_benchmark-0.12.4/src/equiframe_benchmark/scale_process.py +1077 -0
  100. equiframe_benchmark-0.12.4/src/equiframe_benchmark/scale_types.py +120 -0
  101. equiframe_benchmark-0.12.4/src/equiframe_benchmark/scaling.py +529 -0
  102. equiframe_benchmark-0.12.4/src/equiframe_benchmark/selection.py +178 -0
  103. equiframe_benchmark-0.12.4/src/equiframe_benchmark/snapshot.py +24 -0
  104. equiframe_benchmark-0.12.4/src/equiframe_benchmark/splits.py +92 -0
  105. equiframe_benchmark-0.12.4/src/equiframe_benchmark/study.py +526 -0
  106. equiframe_benchmark-0.12.4/src/equiframe_benchmark/study_bundle.py +379 -0
  107. equiframe_benchmark-0.12.4/src/equiframe_benchmark/study_bundle_v2.py +388 -0
  108. equiframe_benchmark-0.12.4/src/equiframe_benchmark/study_v2.py +544 -0
  109. equiframe_benchmark-0.12.4/src/equiframe_benchmark/tables.py +347 -0
  110. equiframe_benchmark-0.12.4/src/equiframe_benchmark/tables_v2.py +340 -0
  111. equiframe_benchmark-0.12.4/src/equiframe_benchmark/training_types.py +52 -0
  112. equiframe_benchmark-0.12.4/tests/conftest.py +131 -0
  113. equiframe_benchmark-0.12.4/tests/test_calibration.py +165 -0
  114. equiframe_benchmark-0.12.4/tests/test_cli.py +39 -0
  115. equiframe_benchmark-0.12.4/tests/test_cli_diagnostics.py +64 -0
  116. equiframe_benchmark-0.12.4/tests/test_commands.py +154 -0
  117. equiframe_benchmark-0.12.4/tests/test_costs.py +672 -0
  118. equiframe_benchmark-0.12.4/tests/test_direct_backport_dependency.py +71 -0
  119. equiframe_benchmark-0.12.4/tests/test_distribution.py +542 -0
  120. equiframe_benchmark-0.12.4/tests/test_evaluation.py +521 -0
  121. equiframe_benchmark-0.12.4/tests/test_evaluation_boundaries.py +166 -0
  122. equiframe_benchmark-0.12.4/tests/test_fixtures_dates.py +56 -0
  123. equiframe_benchmark-0.12.4/tests/test_freeze.py +660 -0
  124. equiframe_benchmark-0.12.4/tests/test_generated_assets.py +71 -0
  125. equiframe_benchmark-0.12.4/tests/test_integration.py +518 -0
  126. equiframe_benchmark-0.12.4/tests/test_integration_cli.py +103 -0
  127. equiframe_benchmark-0.12.4/tests/test_integration_verify_flag.py +87 -0
  128. equiframe_benchmark-0.12.4/tests/test_io_pilot.py +58 -0
  129. equiframe_benchmark-0.12.4/tests/test_oracle.py +176 -0
  130. equiframe_benchmark-0.12.4/tests/test_pairwise.py +335 -0
  131. equiframe_benchmark-0.12.4/tests/test_protocol_v2.py +532 -0
  132. equiframe_benchmark-0.12.4/tests/test_reconciliation.py +174 -0
  133. equiframe_benchmark-0.12.4/tests/test_reproduction.py +553 -0
  134. equiframe_benchmark-0.12.4/tests/test_scale_process.py +1030 -0
  135. equiframe_benchmark-0.12.4/tests/test_scale_read_safety.py +43 -0
  136. equiframe_benchmark-0.12.4/tests/test_scaling.py +364 -0
  137. equiframe_benchmark-0.12.4/tests/test_selection.py +176 -0
  138. equiframe_benchmark-0.12.4/tests/test_snapshot.py +420 -0
  139. equiframe_benchmark-0.12.4/tests/test_snapshot_core_aliases.py +43 -0
  140. equiframe_benchmark-0.12.4/tests/test_splits.py +120 -0
  141. equiframe_benchmark-0.12.4/tests/test_step10_cli.py +311 -0
  142. equiframe_benchmark-0.12.4/tests/test_strict_literal_types.py +108 -0
  143. equiframe_benchmark-0.12.4/tests/test_study.py +511 -0
  144. equiframe_benchmark-0.12.4/tests/test_study_bundle.py +286 -0
  145. equiframe_benchmark-0.12.4/tests/test_tables.py +175 -0
  146. equiframe_benchmark-0.12.4/tests/test_venv_creator_chain.py +78 -0
  147. equiframe_benchmark-0.12.4/tests/test_verify_bridge.py +83 -0
  148. equiframe_benchmark-0.12.4/tools/generate_assets.py +144 -0
  149. equiframe_benchmark-0.12.4/tools/generate_assets_v2.py +71 -0
  150. equiframe_benchmark-0.12.4/tools/reproducible_wheel.py +51 -0
  151. equiframe_benchmark-0.12.4/tools/verify_distribution.py +240 -0
  152. equiframe_benchmark-0.12.4/uv.lock +1947 -0
@@ -0,0 +1,317 @@
1
+ ## 0.12.4 - portable raw-metadata regression
2
+
3
+ - Keep the paired release-gate negative fixture distinct from the candidate
4
+ version. The local 0.12.3 attempt retains its original checks and was not uploaded.
5
+ - Construct explicit LF and CRLF PKG-INFO fixture bytes and verify their distinct
6
+ raw SHA-256 identities on each platform. Keep production metadata hashing raw;
7
+ do not normalize line endings or execute a build backend to inventory metadata.
8
+ - Pair exactly with core 0.12.4 and admit its producer in the active schemas,
9
+ preserving historical schemas, fixtures and scientific outcomes.
10
+ - Require new artifact-bound release checks. Previous 0.12.2 results remain tied
11
+ to their original artifacts and do not establish this candidate's validation
12
+ or publication.
13
+
14
+ ## 0.12.2 — paired tagged release
15
+
16
+ - Pair exactly with core `equiframe 0.12.2`, using Git-derived release versions.
17
+ - Inspect Git-derived versions using the identified wheel or matching `PKG-INFO`
18
+ metadata, without running a build backend or project code.
19
+ - Preserve previous producer identities while admitting the new producer in
20
+ current schemas; historical fixtures and scientific outcomes remain unchanged.
21
+ - Use the same reviewed-artifact security and manual publication process as core.
22
+ The benchmark APIs and scientific protocols retain their Beta status.
23
+
24
+ ## 0.12.0 — exact core pairing and public distribution preparation
25
+
26
+ - Pair exactly with core `equiframe 0.12.0` in base, engines and ML extras.
27
+ - Reject special files and links during cost-artifact verification instead of
28
+ blocking on a FIFO; preserve unavailable and mismatched artifact states.
29
+ - Admit the new detector producer identity in current schemas while preserving
30
+ all historical fixtures and supported producer versions.
31
+ - Include MIT licensing, notices and the same factual manual release checks
32
+ as the core. The benchmark's scientific protocols and APIs remain experimental;
33
+ release does not establish accepted research results or external adoption.
34
+
35
+ ## 0.12.0a14 — private Alpha pairing
36
+
37
+ Pair with core A14's optional EDA. No detector training, thesis metrics or
38
+ historic evidence rewritten. Existing V1 benchmark documents and APIs remain
39
+ unchanged; the V2 additions below are explicit opt-in interfaces.
40
+
41
+ ### Paired principal protocol V2 — source development of 26 October 2026
42
+
43
+ - Add protocol `paired-principal-2.0` with schema version `2.0`. Each declared
44
+ method contrast uses its own paired evaluable support with confirmed O;
45
+ the complete R/M/B/H intersection remains an additional reported support.
46
+ Preserve the three primary families crossed with all three engine pairs.
47
+ - Add `EvaluationConfigV2`, `EvaluationReportV2`, `ContrastSpecV2`,
48
+ `FreezeDefinitionV2`, `FreezeManifestV2`, `ProtocolReviewV2`, `StudyResultV2`
49
+ and `TableExportV2`, with explicit `_v2` evaluation, freeze, study, table,
50
+ bundle and regeneration entry points. Keep V1 formats and fingerprints intact.
51
+ - Bind final protocol adoption to an explicit review of its exact fingerprint.
52
+ Keep uncertainty paired by whole groups and preserve undefined metrics,
53
+ exclusions and unavailable methods without inventing zeroes or labels.
54
+ - Document the new workflow in [PROTOCOL_V2.md](PROTOCOL_V2.md). This change
55
+ implements the evaluation machinery; it does not approve a protocol, train a
56
+ model, supply reviewed corpus labels or establish scientific results.
57
+
58
+ - Support Windows environments created from another virtual environment. Validate
59
+ up to 16 creator configurations, requiring the current interpreter's base and
60
+ rejecting cycles, duplicate keys, relative creators, mismatched homes and large
61
+ or linked configurations. Never execute a configured creator or an unbound command.
62
+ - Preserve rejection of missing scale finalization with safe OS error classes and
63
+ keep missing-directory I/O recovery separate. Refuse linked operation roots
64
+ and special inventory members before accepting stored measurements.
65
+ - Extract the synthetic UTC date fixture with Pandas' native microsecond timezone
66
+ dtype, preserving NULL and date32 for empty outputs without requiring Arrow's
67
+ separate Windows C++ timezone database. The literal expected dates stay unchanged.
68
+ - Construct the fixture's native UTC Series directly with an explicit
69
+ microsecond dtype, supported by older and recent pandas stubs under strict
70
+ Python 3.10 type checking. Preserve the existing precision, timezone, input
71
+ values and expected dates.
72
+ - Preserve failed native integration evidence when an expected output is supplied.
73
+ Mark that expected comparison unavailable instead of recording a comparison that
74
+ never captured its right-hand artifact; independent healthy comparisons remain.
75
+
76
+ ## 0.12.0a13 — package quality and producer identity (2026-10-10)
77
+
78
+ - Remove a process-test race by capturing OS descendant identities before real
79
+ cleanup instead of requiring the terminated worker to finish writing a file.
80
+ Check every captured descendant stops; supervisor behavior remains unchanged.
81
+
82
+ - Correct detector producer identity: new evidence identifies A13 instead of
83
+ retaining A11 when executed from A12. Preserve explicit historical producer
84
+ records and admit A12/A13 without changing `equiframe-if-mad-1.0`, R/M/B/H/O,
85
+ model parameters, training support or expected outputs.
86
+ - Regenerate current producer-containing schemas and their asset hashes;
87
+ preserve all historical fixture and receipt bytes. Keep the exact paired
88
+ core dependency and align current installation guides.
89
+ - Add the source-carried standard-library offline wheel integrity audit and
90
+ tests for corruption, unsafe paths, Unicode metadata and occupied receipts.
91
+ Fix strict typing of heterogeneous observations in the option-trace tool.
92
+ - Public distribution, license approval, ecosystem adoption and full platform
93
+ acceptance remain independent pending gates; no Actions or paid resources.
94
+
95
+ ## 0.12.0a12 — exact core onboarding candidate pairing (2026-10-10)
96
+
97
+ - Pair the benchmark with exactly core A12 after adding core installation
98
+ diagnosis and role demos. Dependency ranges and scientific algorithms remain.
99
+ - Previous universality/benchmark receipts retain their A11 identities; this
100
+ release does not claim new scientific or human-adoption results.
101
+
102
+ ## 0.12.0a11 — exact core candidate pairing (2026-10-09)
103
+
104
+ - Require the exact new private core A11 candidate for all Arrow/engine/ML extras.
105
+ - Use the same sdist-shipped wheel ZIP creator convention on Windows and Linux.
106
+ - Regenerate schemas containing the new producer identity. Scientific algorithms,
107
+ independent detector paths and historical expected results remain unchanged.
108
+ - This metadata pairing does not establish a new native universality matrix or
109
+ independent human acceptance; manual artifact-specific validation is required.
110
+
111
+ ## 0.12.0a10 — remediación del laboratorio de universalidad (2026-10-09)
112
+
113
+ - Require binary-compatible candidates during minimum/latest benchmark resolution,
114
+ matching the existing binary-only hash-locked synchronization step.
115
+ - Preserve dependency ranges, native benchmark behavior and scientific protocols.
116
+ - Keep A9 receipts historical; they do not establish A10 support.
117
+
118
+ ## 0.12.0a9 — candidato de universalidad (sin publicación pública)
119
+
120
+ Nueva identidad distribuida para herramientas/guías revisadas y dependencia directa de typing-extensions en benchmark. A8 permanece histórico. La matriz de veinte celdas requiere recibos nativos; preparación no equivale a soporte observado.
121
+
122
+ - Target CPython 3.10-3.13 without discarding existing native extras or semantic gates
123
+ - Replace post-3.10 syntax/std-library requirements with typed equivalents; preserve named aliases, historical formats and nanosecond/Decimal semantics
124
+ - Resolve dependency branches by interpreter and propagate the chosen Python through validation tools
125
+ - Preserve the paired native pilot, resource supervisor and benchmark public profiles across the selected interpreters
126
+ - Keep the candidate private Alpha. VM/platform receipts, rights, governance, security coverage and actual independent acceptance remain explicit gates
127
+
128
+ ## 0.12.0a8 - Python compatibility maturity candidate (2026-10-08)
129
+
130
+ # Private benchmark alpha 0.12.0a7 — 2026-10-07
131
+
132
+ - Require exactly `equiframe[arrow]==0.12.0a7` and matching engine/ML extras
133
+ - Identify rebuilt artifacts after the minimum-Polars expression composition
134
+ correction; preserve the benchmark algorithms and historical producer readers
135
+
136
+ No scientific method, detector independence or evidence format changes.
137
+
138
+ # Private benchmark alpha 0.12.0a6 — 2026-10-07
139
+
140
+ - Require exactly `equiframe[arrow]==0.12.0a6` and matching engine/ML extras
141
+ - Identify rebuilt artifacts after the core unsupported-input guard correction;
142
+ retain benchmark algorithms and the A4 integrity-reader controls unchanged
143
+
144
+ No scientific method, detector independence or output-model changes.
145
+
146
+ # Private benchmark alpha 0.12.0a5 — 2026-10-06
147
+
148
+ - Require exactly core `equiframe[arrow]==0.12.0a5` and matching engine/ML extras
149
+ - Retain the benchmark algorithms and reader controls; identify rebuilt artifacts
150
+ separately after the core native literal-column-name correction
151
+ - Preserve A4 installation, test and consumer receipts as historical observations
152
+
153
+ No scientific method or detector independence changes.
154
+
155
+ # Private benchmark alpha 0.12.0a4 — 2026-10-06
156
+
157
+ - Enforce the declared boolean type of integrity-verification controls rather
158
+ than treating numerically equal values such as `verify=0` as an explicit opt-out
159
+ - Preserve explicit supported boolean choices and reject wrong-type controls
160
+ before they can bypass verification of corrupted retained evidence
161
+ - Require exactly `equiframe[arrow]==0.12.0a4` and matching core engine/ML extras;
162
+ the coordinated core correction also rejects invalid integrity-reader controls
163
+ - Preserve the prior benchmark artifacts and failing probes, and revalidate the
164
+ changed distribution separately instead of relabelling earlier benchmark tests
165
+
166
+ No scientific protocol, detector independence or core artifact format changes.
167
+ The current identified pair is core 0.12.0a4 / benchmark 0.12.0a4.
168
+
169
+ # Private installed-product alpha 0.12.0a3 — 2026-10-06
170
+
171
+ - Require exactly `equiframe[arrow]==0.12.0a3`, including matching engine/ML extras
172
+ - Carry the corrected core verification reader boundary and updated current
173
+ producer schemas while retaining admitted historical producer identities
174
+ - Preserve prior a1/a2 artifacts and receipts; validate the new package pair
175
+ independently without relabelling earlier installation or scientific evidence
176
+
177
+ No benchmark detector, label, partition or scientific protocol changes.
178
+
179
+ # Private installed-product alpha 0.12.0a2 — 2026-10-06
180
+
181
+ - Require exactly `equiframe[arrow]==0.12.0a2` and retain admitted historical
182
+ producer identities in detector-bearing schemas
183
+ - Reject wrong numeric types in fixed integer/boolean document metadata,
184
+ including cost repetitions and scientific-label confirmation; validation
185
+ does not convert numeric zero into an explicit false confirmation
186
+ - Preserve valid historical bytes and scientific protocols; rerun installed
187
+ tests against distinct a2 artifacts rather than relabel a1 evidence
188
+
189
+ # Private installed-product alpha 0.12.0a1 — 2026-10-06
190
+
191
+ - Pin the exact matching `equiframe[arrow]==0.12.0a1` core and align engine/ML extras
192
+ - Admit the new producer version in embedded detector-bearing current schemas
193
+ while retaining prior producer values and historical artifact readers
194
+ - Revalidate this separate distribution through normal private pip resolution,
195
+ isolated wheel/sdist builds, all extras and installed compatibility receipts
196
+
197
+ No detector, scientific partition, label/reviewer requirement, bootstrap,
198
+ evaluation protocol or historic result is changed. Package installation and
199
+ technical verification do not establish a completed scientific experiment or
200
+ public distribution rights.
201
+
202
+ # Post-roadmap review: shared integration and bounded repeated work
203
+
204
+ Private 0.11.1 candidate, identified by commit and artifact hashes.
205
+
206
+ - Keep snapshot public imports as exact aliases to the generic core implementation;
207
+ preserve existing manifest schema, strict types and canonical JSON/fingerprints
208
+ - Reuse core fixed-text CLI hints without changing existing machine codes or exit
209
+ meanings; the standalone pilot retains failure exit 1 with a concise diagnostic
210
+ - Avoid redundant bootstrap recomputation after a report is already validated in
211
+ the same public operation: table read/write require one evaluation validation
212
+ instead of two; pairwise construction requires two instead of three
213
+ - Keep revalidation at every public boundary, including altered model instances
214
+ and JSON; preserve historical report, pairwise and all six CSV bytes
215
+
216
+ This computation-count reduction is not a performance SLA or scientific result.
217
+ No scientific protocol, detector, split, bootstrap seed, interval definition,
218
+ dependency range or historical schema is changed by this refactoring.
219
+
220
+ # STEP9 candidate: distribution evidence
221
+
222
+ The private 0.11.1 candidate now has English entrypoint documentation, an
223
+ artifact-bound dependency inventory/advisory workflow and byte-identical wheel
224
+ and sdist rebuild checks. Runtime APIs and scientific formats are unchanged.
225
+ Public release, project licensing and a completed security assessment remain
226
+ blocked; exact artifact hashes identify the candidate.
227
+
228
+ # Changelog
229
+
230
+ ## STEP8 candidate (2026-10-06)
231
+
232
+ - Add experimental bounded engineering scale API/CLI, separate from the frozen
233
+ scientific paired cost protocol. Deterministic batched workloads, explicit
234
+ stage boundaries, cold/warm labels, native restricted baselines and raw trials.
235
+ - Supervise worker wall time, sampled RSS/disk and CPU/I/O; retain missing metrics
236
+ and crashes, verify atomic completion, and clean only owned SQLite temporaries.
237
+ Reactive resource thresholds are not hard quotas or an untrusted-code sandbox.
238
+ - Record actual isolated-worker producer hashes/versions; differing parent
239
+ imports fail closed, and missing worker provenance remains explicitly unknown.
240
+ - Installed-distribution verifier also consumes the small scale example.
241
+ No scientific methodology, dependency, historical format or public release change.
242
+
243
+ ## Sin publicar — compatibilidad STEP6
244
+
245
+ - Metadatos y lock permiten Python 3.12/3.13; soporte medido solo para las celdas
246
+ identificadas del candidato, con el mismo núcleo instalado y versiones exactas.
247
+ No cambia la metodología, los formatos científicos ni la condición experimental.
248
+
249
+ ## Sin publicar — compatibilidad STEP4
250
+
251
+ - Compruebe presencia de comparaciones con `is not None`; `ComparisonResult`
252
+ rechaza conversión booleana para impedir aceptación accidental. Consumidores
253
+ de integración, costes y reproducción conservan sus estados y condiciones.
254
+ La prueba de expediente rehasheado conserva rechazo temprano de conteos y
255
+ validación profunda de observaciones contra filas reales. Sin cambios
256
+ metodológicos, dependencias o formatos.
257
+
258
+ ## 0.11.1 — 2026-10-03
259
+
260
+ - Reproducción portátil compara conteos/estrategia/clave con las filas capturadas,
261
+ usando opciones congeladas y referencia peer; lectura local preserva TableArtifact.
262
+ - Selección normal de entrenamiento/calibración comprueba el inventario físico
263
+ de diferencias; puente Verify exige el tipo de candidato ligado a O.
264
+ - API evaluate_pairwise y PairwiseReport: seis contrastes descriptivos R/M/B/H,
265
+ soporte confirmado común a cada pareja, denominadores, discordancias y exclusiones.
266
+ No modifica el freeze, las seis tablas previas ni resultados científicos.
267
+ - Dependencia exacta de equiframe 0.11.1; ejemplo pareado y esquema JSON propios,
268
+ comprobados también en el consumidor instalado fuera del checkout.
269
+
270
+ ## 0.11.0 — 2026-10-03
271
+
272
+ - Puente tipado `OracleVerificationBridge`/`oracle_verification_bridge` para
273
+ conservar identidades, hashes, procedencia y revisión al usar Verify del núcleo.
274
+ Compatibilidad de `oracle`, `OracleResult` y `evaluate_oracle` mantenida.
275
+ - Dependencia/extras exactos `equiframe==0.11.0`, locks/esquemas compatibles,
276
+ Twine reproducible y verificador de consumidor limpio ampliado.
277
+ - No altera R/M/B/H, etiquetas, entrenamiento, protocolo científico ni autentica
278
+ personas por nombres JSON. No publica en PyPI/TestPyPI.
279
+
280
+
281
+ ## 0.10.1 — 2026-10-03
282
+
283
+ - Compatibilidad y dependencia fijada en `equiframe 0.10.0`, que añade el
284
+ migrador nativo. No cambia los protocolos, etiquetas ni algoritmos del estudio.
285
+ - Lock y metadatos sincronizados; evaluación científica, revisión humana,
286
+ integración real y publicación PyPI conservan sus requisitos pendientes.
287
+ - Los esquemas que incorporan `DetectorVersions` reciben el emisor 0.10.0 y
288
+ su nuevo default, conservando productores previos y formatos 1.0.
289
+
290
+ ## 0.10.0 — 2026-10-03
291
+
292
+ - Congelación de protocolos y ejecución de estudios con decisiones, esperados y
293
+ hashes verificados; las revisiones pendientes conservan su estado.
294
+ - Evaluación R/M/B/H sobre la misma intersección completa, soporte propio,
295
+ alertas parciales, AP por modelos homogéneos y métricas indefinidas explícitas.
296
+ - Remuestreo de grupos completos con justificación de independencia, percentiles
297
+ discretos y registro de réplicas indefinidas; no sustituye evidencia científica.
298
+ - Protocolos de costos controlados, tablas regenerables y bundles cerrados con
299
+ comparación del contenido lógico completo y regenerador explícito.
300
+ - Inventario de fuente/wheel y preparación pública sin conexión a PyPI,
301
+ publicación, reserva del nombre ni selección de licencia. Los metadatos no
302
+ acreditan por sí solos instalación, plataforma o reproducción por un compañero.
303
+ - Depende del núcleo 0.9.0. La evaluación científica real, integración externa,
304
+ matriz de plataformas de esta versión y publicación pública tienen requisitos
305
+ pendientes y evidencia separada; los fixtures no son aprobaciones reales.
306
+
307
+ ## 0.9.0 — 2026-10-02
308
+
309
+ - Consumidor de snapshots publicados: recibos estrictos, revisiones, identidad
310
+ fija, selección de tablas, integridad, tipos/filas y límites cooperativos.
311
+ - Integración de tres motores nativos con comparaciones independientes, esperado
312
+ fijo, evidencia exclusiva y lector sin reconexión al servicio.
313
+ - Conciliación configurable de grano, importes decimales, monedas y puente;
314
+ ausencias explícitas, diferencias por adjudicación y totales exactos.
315
+ - API/CLI, cinco esquemas nuevos y ejemplo verificado contra distribución instalada.
316
+ - Depende del núcleo 0.8.1. Continúa pendiente la integración real con las entregas
317
+ de José/Jhair, la evaluación científica y la publicación pública del paso 19.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Hernán Troya
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.