proofroot 0.1.0__tar.gz → 0.1.2__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.
- {proofroot-0.1.0 → proofroot-0.1.2}/PKG-INFO +2 -2
- {proofroot-0.1.0 → proofroot-0.1.2}/README.md +1 -1
- {proofroot-0.1.0 → proofroot-0.1.2}/pyproject.toml +1 -1
- {proofroot-0.1.0 → proofroot-0.1.2}/src/proofroot/__init__.py +1 -1
- {proofroot-0.1.0 → proofroot-0.1.2}/src/proofroot/canonical.py +1 -1
- {proofroot-0.1.0 → proofroot-0.1.2}/src/proofroot/rng.py +1 -1
- {proofroot-0.1.0 → proofroot-0.1.2}/vectors/generate_vectors.jl +10 -4
- {proofroot-0.1.0 → proofroot-0.1.2}/.gitignore +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/LICENSE +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/src/proofroot/phase.py +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/tests/test_canonical.py +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/tests/test_semantics.py +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/tests/test_vectors.py +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/vectors/canonical_vectors.json +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/vectors/evidencecore_rng_v1.json +0 -0
- {proofroot-0.1.0 → proofroot-0.1.2}/vectors/generate_canonical_vectors.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: proofroot
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Language-neutral trust core for reproducible simulation: named RNG stream derivation, run phases, evidence tiers, canonical serialization.
|
|
5
5
|
Project-URL: Homepage, https://github.com/hzshen88/newlife
|
|
6
6
|
Project-URL: Repository, https://github.com/hzshen88/newlife
|
|
@@ -65,4 +65,4 @@ monorepo is the frozen oracle generating this package's cross-language test
|
|
|
65
65
|
vectors. ParaLife's legacy compatibility layers (legacy encodings, UPPER-CASE
|
|
66
66
|
phase spellings) are deliberately **not** ported here.
|
|
67
67
|
|
|
68
|
-
Design rationale: [proposal §5.10](https://github.com/hzshen88/newlife/blob/main/docs/design/proposal.md).
|
|
68
|
+
Design rationale: [proposal §5.10](https://github.com/hzshen88/newlife/blob/main/docs/zh/design/proposal.md).
|
|
@@ -46,4 +46,4 @@ monorepo is the frozen oracle generating this package's cross-language test
|
|
|
46
46
|
vectors. ParaLife's legacy compatibility layers (legacy encodings, UPPER-CASE
|
|
47
47
|
phase spellings) are deliberately **not** ported here.
|
|
48
48
|
|
|
49
|
-
Design rationale: [proposal §5.10](https://github.com/hzshen88/newlife/blob/main/docs/design/proposal.md).
|
|
49
|
+
Design rationale: [proposal §5.10](https://github.com/hzshen88/newlife/blob/main/docs/zh/design/proposal.md).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "proofroot"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.2"
|
|
4
4
|
description = "Language-neutral trust core for reproducible simulation: named RNG stream derivation, run phases, evidence tiers, canonical serialization."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.12"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""proofroot — language-neutral trust core for reproducible simulation.
|
|
2
2
|
|
|
3
|
-
Scope (frozen charter, see docs/design/proposal.md §5.10):
|
|
3
|
+
Scope (frozen charter, see docs/zh/design/proposal.md §5.10):
|
|
4
4
|
- D1 current encoding (`evidencecore-rng-v1`) named RNG stream seed derivation
|
|
5
5
|
- D4 bank semantics invariants (declared streams, lowercase normalization,
|
|
6
6
|
name regex, forward-only, seed snapshots as provenance)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
The 0th asset of any cross-language byte-level trace comparison is a
|
|
4
4
|
canonical form that does not depend on the host language's float
|
|
5
|
-
formatting. Rules (docs/design/proposal.md §5.9):
|
|
5
|
+
formatting. Rules (docs/zh/design/proposal.md §5.9):
|
|
6
6
|
|
|
7
7
|
- **Structural layer** — the ready-made parts of RFC 8785 (JCS): object keys
|
|
8
8
|
sorted, UTF-8 output, no insignificant whitespace. Key order is Unicode
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""D1 named RNG stream seed derivation + D4 bank semantics (port of
|
|
2
2
|
EvidenceCore.jl's `derive_stream_seed` and `RngBank`, current encoding only).
|
|
3
3
|
|
|
4
|
-
Discipline (docs/design/proposal.md §5.10): the `evidencecore-rng-v1` encoding
|
|
4
|
+
Discipline (docs/zh/design/proposal.md §5.10): the `evidencecore-rng-v1` encoding
|
|
5
5
|
is ported byte-for-byte — Python output must match the Julia oracle bit-for-bit
|
|
6
6
|
(`vectors/evidencecore_rng_v1.json`). The three legacy encodings
|
|
7
7
|
(`parcells-rng-v1`, `parreact-rng-v1`, `parworlds-rng-v1`) are deliberately NOT
|
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
# Generate cross-language test vectors for proofroot from the EvidenceCore.jl
|
|
2
|
-
# oracle (frozen in place in ParaLife; see newlife docs/design/proposal.md §5.10).
|
|
2
|
+
# oracle (frozen in place in ParaLife; see newlife docs/zh/design/proposal.md §5.10).
|
|
3
3
|
#
|
|
4
4
|
# Scope (proofroot schedule step 1, per §5.10 discipline 1): D1 current encoding
|
|
5
5
|
# (`evidencecore-rng-v1` ONLY — legacy encodings are deliberately not ported and
|
|
6
6
|
# get no vectors here), D4 bank seed derivation incl. lowercase normalization,
|
|
7
7
|
# D2 phase terminality. D5 is a constant vocabulary; nothing to vectorize.
|
|
8
8
|
#
|
|
9
|
-
# Regenerate:
|
|
10
|
-
#
|
|
9
|
+
# Regenerate: EVIDENCECORE_JL=/path/to/paralife/packages/EvidenceCore/src/EvidenceCore.jl \
|
|
10
|
+
# julia generate_vectors.jl > evidencecore_rng_v1.json
|
|
11
|
+
# (run from this directory). The oracle lives in ParaLife, a private repository, so its
|
|
12
|
+
# location is not written here; the script refuses to run without the variable.
|
|
13
|
+
|
|
14
|
+
const ORACLE_PATH = get(ENV, "EVIDENCECORE_JL", "")
|
|
15
|
+
isempty(ORACLE_PATH) && error("set EVIDENCECORE_JL to the path of ParaLife's EvidenceCore.jl")
|
|
16
|
+
isfile(ORACLE_PATH) || error("EVIDENCECORE_JL points at a file that does not exist: $ORACLE_PATH")
|
|
11
17
|
|
|
12
18
|
module Oracle
|
|
13
|
-
include(
|
|
19
|
+
include(Main.ORACLE_PATH)
|
|
14
20
|
end
|
|
15
21
|
|
|
16
22
|
using .Oracle
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|