Dermitio commited on
Commit
ca3d977
·
verified ·
1 Parent(s): 8aa8618

Upload folder using huggingface_hub

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +1 -0
  2. ARTIFACT_INDEX.md +35 -0
  3. CITATION.bib +15 -0
  4. CITATION.cff +13 -0
  5. FINAL_RELEASE_AUDIT.md +236 -0
  6. LICENSE_STATUS.md +16 -0
  7. LTL_CARD.md +27 -0
  8. MODEL_CARD.md +80 -0
  9. PPKG_CARD.md +69 -0
  10. README.md +131 -1
  11. RELEASE_MANIFEST.json +249 -0
  12. ROUTER_CARD.md +54 -0
  13. RUNTIME.md +33 -0
  14. SANITIZATION_REPORT.md +79 -0
  15. THIRD_PARTY_NOTICES.md +6 -0
  16. TTL_CARD.md +27 -0
  17. artifacts/active-system-audit.json +979 -0
  18. artifacts/active-system-cuda-attribution.json +387 -0
  19. artifacts/canonical-p-v1.router +0 -0
  20. artifacts/debug-actions-profile.json +245 -0
  21. artifacts/gemma-native-prompt-equivalence.json +29 -0
  22. artifacts/gemma4-e4b-q8-causal.json +463 -0
  23. artifacts/gemma4-e4b-q8-llama.ltl +1 -0
  24. artifacts/personality-proof.ppkg +0 -0
  25. artifacts/phase-b-factorized-representation.json +20 -0
  26. artifacts/phase-b-personality-package.json +369 -0
  27. artifacts/phase-b-split-translator.json +910 -0
  28. artifacts/post-turn-memory-review-acceptance.json +58 -0
  29. artifacts/ppkg-100k-profile.json +55 -0
  30. artifacts/pythia-1.4b-final-layer.ttl +3 -0
  31. artifacts/vram-comparison.json +268 -0
  32. assets/EVIDENCE_MANIFEST.json +38 -0
  33. assets/README.md +31 -0
  34. assets/VRAM_COMPARISON.md +46 -0
  35. assets/architecture.mmd +24 -0
  36. assets/architecture.pdf +0 -0
  37. assets/architecture.svg +48 -0
  38. assets/causal_conditions.csv +17 -0
  39. assets/gemma_causal_conditions.csv +10 -0
  40. assets/generate_assets.py +363 -0
  41. assets/ppkg_lookup.svg +36 -0
  42. assets/ppkg_scaling.csv +5 -0
  43. assets/router_scaling.csv +8 -0
  44. assets/router_scaling.svg +51 -0
  45. assets/vram_comparison.csv +10 -0
  46. assets/vram_comparison.svg +45 -0
  47. pyproject.toml +31 -0
  48. src/pcm/__init__.py +4 -0
  49. src/pcm/planner/__init__.py +96 -0
  50. src/pcm/planner/cache.py +377 -0
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ artifacts/pythia-1.4b-final-layer.ttl filter=lfs diff=lfs merge=lfs -text
ARTIFACT_INDEX.md ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Active artifact index
2
+
3
+ Checksums are SHA-256 over the distributed files. Rejected `.translate`, reader,
4
+ residual, and sequence-controller artifacts are research history and are not part
5
+ of this active Hugging Face pack.
6
+
7
+ ## Runtime artifacts
8
+
9
+ | Filename | Type | Purpose | Compatibility | SHA-256 |
10
+ |---|---|---|---|---|
11
+ | `canonical-p-v1.router` | Safetensors `.router` | Universal canonical ranking and rejection | `pcm-canonical-p-v1` | `29e0728c12f8806c48998579aedcfa389fa398f909098e162710eb2a5709834e` |
12
+ | `pythia-1.4b-final-layer.ttl` | Safetensors `.ttl` | Semantic Pythia query, value, and gate compatibility | Pythia-1.4B, width 2,048, layer 23 | `72ef68d07ee27c37b90432d34d4be5c2c280ae1bcb08236e37a0e458c054d8d7` |
13
+ | `gemma4-e4b-q8-llama.ltl` | JSON `.ltl` | Direct adaptive lexical output control metadata | Recorded Gemma4 Q8 GGUF, tokenizer bundle, and llama.cpp | `7eee07ed813796dd0d25b04b48aec73507b934479ad8902e1b657653c040781a` |
14
+ | `personality-proof.ppkg` | SQLite `.ppkg` | Durable personality proof package | Personality protocol v1 and canonical P v1 | `faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9` |
15
+
16
+ The Pythia checkpoint and Gemma GGUF are not distributed. Users must obtain them
17
+ under their upstream licenses and set local paths explicitly.
18
+
19
+ ## Active benchmark evidence
20
+
21
+ | Filename | Purpose | SHA-256 |
22
+ |---|---|---|
23
+ | `phase-b-factorized-representation.json` | Canonical representation probe | `602bf8b8b1d07b8100b13f9842790f87ae6a5229ddc2d66377130d15413a870f` |
24
+ | `phase-b-split-translator.json` | Pythia TTL, routing, causal, and preservation proof | `4a8cdc0c2bc73a1fc10f974f20d88be4902331a07b92928edb089b852bc1a845` |
25
+ | `phase-b-personality-package.json` | Promotion, durability, growth, and CUDA personality proof | `5d17cbd8cecc8398105d3d53ff05e1b7941dd0732ac3d68a761790b64799bf06` |
26
+ | `ppkg-100k-profile.json` | Integrity-boundary lookup profile | `f5ff5233632bf5bf860fefedeec560e10a3f32729f4b6a767d0b3538d9c33a05` |
27
+ | `active-system-audit.json` | Active architecture audit and scaling | `6eb3e401023b5878b2bbfb9055fd921999b571f6216e370b12440b7d343c0a1d` |
28
+ | `active-system-cuda-attribution.json` | Matched Pythia causal attribution | `ffe0e8f32f9a1a059767607f0c5e0432b6baf2a9917dc56877f794458b1a5e1c` |
29
+ | `gemma4-e4b-q8-causal.json` | Bounded Gemma residual evidence retained as baseline | `a15a862dbc5dde547e7124ce3c3f16d015c15b79730bc60b7e92425e471ecb0f` |
30
+ | `gemma-native-prompt-equivalence.json` | Native browser-message and token equivalence | `f6823b9b5a5fd69ebf75c8aadc8efa23fe0a6eaac7a1eaa81c398a3fdb200e79` |
31
+ | `post-turn-memory-review-acceptance.json` | Natural post-turn review acceptance evidence | `89cb901c1665e9fd1515ef9165580a4bd3c4d9774f23976fdc6f366ef88c6b24` |
32
+ | `debug-actions-profile.json` | Bounded `/state` and `/personality` profile | `3ca4cc8ac002dc30bd6c33d1bdae764bfc3e43534498eecc98a5168069784bd4` |
33
+ | `vram-comparison.json` | Matched P-cache, retained-KV, and combined CUDA memory comparison | `1b1e266c3f6513a5708711f09879a6519ce45abdaea7ba16d04f2510f5c1fc8d` |
34
+
35
+ The generated evidence manifest is [`assets/EVIDENCE_MANIFEST.json`](assets/EVIDENCE_MANIFEST.json).
CITATION.bib ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @software{planner_cache_2026,
2
+ author = {{Planner Cache contributors}},
3
+ title = {Planner Cache: A Portable Bounded Semantic-State Layer for Frozen Language Models},
4
+ year = {2026},
5
+ note = {Research software and preprint documentation. Author list, release version, repository URL, and DOI pending}
6
+ }
7
+
8
+ @article{biderman2023pythia,
9
+ author = {Biderman, Stella and Schoelkopf, Hailey and Anthony, Quentin Gregory and Bradley, Herbie and O'Brien, Kyle and Hallahan, Eric and Khan, Mohammad Aflah and Purohit, Shivanshu and Prashanth, USVSN Sai and Raff, Edward and Skowron, Aviya and Sutawika, Lintang and van der Wal, Oskar},
10
+ title = {Pythia: A Suite for Analyzing Large Language Models Across Training and Scaling},
11
+ journal = {Proceedings of the 40th International Conference on Machine Learning},
12
+ year = {2023},
13
+ volume = {202},
14
+ pages = {2397--2430}
15
+ }
CITATION.cff ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ cff-version: 1.2.0
2
+ message: "If you use Planner Cache, cite the software and accompanying preprint."
3
+ title: "Planner Cache: A Portable Bounded Semantic-State Layer for Frozen Language Models"
4
+ type: software
5
+ version: 0.1.0
6
+ date-released: 2026-08-23
7
+ authors:
8
+ - name: "Planner Cache contributors"
9
+ abstract: >-
10
+ A portable bounded semantic-state layer for frozen language models with a
11
+ canonical P-cache, universal router, model-specific TTL and LTL compatibility,
12
+ and disk-resident P-package personality state.
13
+ license: "LicenseRef-Proprietary-NoGrant"
FINAL_RELEASE_AUDIT.md ADDED
@@ -0,0 +1,236 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Planner Cache final release audit
2
+
3
+ Audit date: 2026-08-23
4
+
5
+ ## Release readiness
6
+
7
+ The implementation and publication packs are technically validated as a release
8
+ candidate. Public redistribution is **blocked** because the repository does not
9
+ contain a repository-wide software license grant. Final author metadata and a
10
+ public release URL are also missing. No license was invented during this audit.
11
+
12
+ The publication packs intentionally exclude model weights, GGUF files, tokenizer
13
+ and metadata bundles, datasets, llama.cpp files, and other third-party copyrighted
14
+ payloads. They contain project-authored implementation, documentation, adapters,
15
+ benchmark records, and derived assets only.
16
+
17
+ ## Current architecture
18
+
19
+ The audited active boundary is:
20
+
21
+ ```text
22
+ Recent KV and runtime history
23
+
24
+ frozen model and native chat template
25
+
26
+ canonical P-cache and selected P-package state
27
+
28
+ universal .router
29
+
30
+ native P support, semantic .ttl, or lexical .ltl
31
+ ```
32
+
33
+ Recent KV, archive/history, and tool retrieval remain model or runtime
34
+ responsibilities. P-cache is bounded mutable current state. P-package is durable
35
+ disk-resident personality state. The hidden post-turn memory review observes the
36
+ latest exchange as a side-channel and applies only validated canonical P
37
+ operations. It does not rewrite the visible message path.
38
+
39
+ ## Fixed BLOCKER and MAJOR issues
40
+
41
+ | Severity | Finding | Resolution |
42
+ |---|---|---|
43
+ | BLOCKER | The first staging pass copied the upstream Gemma tokenizer bundle | Removed from every pack. The builder and validator now reject tokenizer, model, GGUF, and common checkpoint payloads |
44
+ | MAJOR | Publication JSON contained workstation-specific absolute paths | Publication copies normalize those paths to portable environment placeholders. Authoritative repository artifacts remain unchanged |
45
+ | MAJOR | Active public exports still exposed rejected residual and lexical research APIs | Removed rejected adapters from the active planner package exports. Historical modules and evidence remain available for research regression |
46
+ | MAJOR | Launch scripts contained machine-specific model and llama.cpp defaults | Replaced model defaults with required environment inputs and made the llama.cpp default home-relative |
47
+ | MAJOR | A clean source checkout could not collect tests without an editable install | Added `src` to the pytest configuration |
48
+ | MAJOR | `/personality` hydrated and serialized the complete package | Added bounded inspection with a default 100-entry page. The 100,000-entry case fell from 9.7874 seconds and 173,110,748 peak Python allocation bytes to 0.0218 seconds and 196,288 bytes for the action |
49
+ | MAJOR | The VRAM comparison initially included first-use CUDA allocations in one condition | Added a matched warm-up. Every recorded row now begins at the same loaded-stack baseline |
50
+ | MAJOR | Publication artifact indexes could diverge after portable path normalization | Pack building now refreshes evidence and artifact checksums after normalization |
51
+
52
+ ## Remaining BLOCKER and MAJOR findings
53
+
54
+ | Rank | Severity | Finding | Release consequence |
55
+ |---:|---|---|---|
56
+ | 1 | BLOCKER | No repository-wide software license grant exists | Do not publish or redistribute the staged packs until the rights holder adds a license |
57
+ | 2 | BLOCKER | Final authors, affiliations, public repository URL, and release identifier are unset | Citation and preprint metadata remain provisional |
58
+ | 3 | MAJOR | Trained semantic TTL support is proven only for Pythia-1.4B | Do not claim universal or multi-model semantic compatibility |
59
+ | 4 | MAJOR | Natural memory review is narrow and slow | The controlled reviewer targets owner, location, and status. Recorded review latency was 43.14 to 65.50 seconds |
60
+ | 5 | MAJOR | Canonical representation weights are reconstructed rather than shipped as a standalone protocol artifact | Exact third-party reproduction depends on the documented construction path |
61
+ | 6 | MAJOR | Pythia router-index hydration is linear on each wrapper call | Controlled routing accuracy is strong through 1,024 slots, but arbitrary-scale latency is not established |
62
+
63
+ No other BLOCKER or MAJOR correctness issue was found in the release-focused
64
+ audit. Nuanced personality learning, broader natural-language extraction, large
65
+ debug offsets, multi-seed statistics, and wider model portability remain MINOR,
66
+ OPTIMIZATION, or documented research limitations depending on intended use.
67
+
68
+ ## Component scorecard
69
+
70
+ | Component | Correctness | Integrity | Performance | Status |
71
+ |---|---|---|---|---|
72
+ | P-cache | Mutation, merge, invalidation, capacity, stale-state, and serialization regressions pass | Canonical snapshots reject corruption and protocol mismatch | Bounded allocation verified | CLEAN |
73
+ | Universal `.router` | Controlled top-1, top-4 recall, and MRR are 1.0 through 1,024 slots | Deterministic checksummed artifact | 1,024-slot measured routing was 0.675 ms. Per-call index hydration remains a MAJOR limitation | CLEAN with documented scaling limitation |
74
+ | Pythia `.ttl` | Relevant P changes causal logits and tested inactive paths reproduce base candidate logits | Model, width, protocol, type, and checksum checks pass | Frozen base has zero gradients. Active cost is included in the matched VRAM run | CLEAN for the proven Pythia configuration |
75
+ | Gemma `.ltl` | Exact routed lexical control is proven for the recorded direct adaptive logit-bias benchmark | Runtime, model, tokenizer checksum, protocol, class, and checksum checks pass | Zero learned parameters. Rejected routes create no lexical target | CLEAN within lexical or output support |
76
+ | `.ppkg` | Promotion, authority, contradiction, context, cold reload, and selective hydration tests pass | Checksum work occurs at integrity boundaries, not normal lookup | 100,000 entries use 152 candidate headers and hydrate four rows in the recorded query | CLEAN for the mechanical proof |
77
+ | Gateway | Inactive P and LTL preserve exact browser messages, rendered prompt, and token IDs | Session files and event logs are structured and deterministic where required | Review is post-response but must finish before the next turn | CLEAN with review-latency limitation |
78
+
79
+ ## Prompt transparency and inert paths
80
+
81
+ The native Gemma equivalence artifact records identical structured-message,
82
+ rendered-prompt, and token-ID SHA-256 values for the gateway and raw llama-server
83
+ when P and LTL are inactive. The prompt contained 33 tokens. No logit bias was
84
+ present. Wrong-entity, wrong-relation, historical, invalidated, router-disabled,
85
+ and compatibility-disabled paths remain inert in the tested causal regressions.
86
+
87
+ ## Natural memory review
88
+
89
+ The controlled acceptance run recorded a natural RP CREATE followed by MODIFY:
90
+
91
+ ```text
92
+ brass key.location = kitchen drawer
93
+ brass key.location = coat pocket
94
+ ```
95
+
96
+ The final active state contained only `coat pocket`. The same conceptual review
97
+ path ran for Gemma and Pythia. Unsupported assistant claims and malformed review
98
+ output remain fail-closed in regression tests. The reviewer does not receive or
99
+ alter the visible browser request.
100
+
101
+ ## Exact VRAM comparison
102
+
103
+ ### Command
104
+
105
+ ```bash
106
+ PYTHONPATH=src .venv/bin/python benchmarks/compare_pcache_kv_vram.py \
107
+ --model pythia-1.4b \
108
+ --ttl artifacts/pythia-1.4b-final-layer.ttl \
109
+ --router artifacts/canonical-p-v1.router \
110
+ --output artifacts/vram-comparison.json \
111
+ --workloads 64,256,1024 \
112
+ --generated-tokens 8 \
113
+ --seed 317
114
+ ```
115
+
116
+ ### Matched configuration
117
+
118
+ - GPU: NVIDIA GeForce RTX 3050 Laptop GPU with 3,950,575,616 bytes
119
+ - Driver: 610.57.04
120
+ - CUDA runtime: 13.0
121
+ - PyTorch: 2.13.0+cu130
122
+ - Transformers: 5.15.1
123
+ - Model: frozen Pythia-1.4B
124
+ - Batch: 1
125
+ - Base precision: float16
126
+ - TTL precision: float32
127
+ - Generation: greedy argmax
128
+ - Generated tokens: 8
129
+ - Baseline method: one warmed loaded stack followed by CUDA synchronization and peak reset
130
+
131
+ All memory figures below are MiB. `P bytes` is canonical P tensor allocation.
132
+ `KV bytes` is retained model KV tensor storage. CUDA peaks also include transient
133
+ attention, router, TTL, output, and allocator work.
134
+
135
+ | Prompt and slots | Condition | P bytes | KV bytes | Base alloc | Base reserved | Peak alloc | Peak reserved | Increment alloc | Increment reserved | Runtime |
136
+ |---:|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|
137
+ | 64 | P-cache only | 0.128 | 0.000 | 2717.183 | 2772.000 | 2724.309 | 2776.000 | 7.125 | 4.000 | 0.2555 s |
138
+ | 64 | KV only | 0.000 | 13.312 | 2717.183 | 2772.000 | 2735.575 | 2788.000 | 18.392 | 16.000 | 0.1754 s |
139
+ | 64 | P-cache plus KV | 0.128 | 13.312 | 2717.183 | 2772.000 | 2735.608 | 2788.000 | 18.425 | 16.000 | 0.2045 s |
140
+ | 256 | P-cache only | 0.513 | 0.000 | 2717.183 | 2772.000 | 2744.347 | 2806.000 | 27.164 | 34.000 | 0.7415 s |
141
+ | 256 | KV only | 0.000 | 49.312 | 2717.183 | 2772.000 | 2794.609 | 2852.000 | 77.426 | 80.000 | 0.1937 s |
142
+ | 256 | P-cache plus KV | 0.513 | 49.312 | 2717.183 | 2772.000 | 2794.739 | 2852.000 | 77.556 | 80.000 | 0.4156 s |
143
+ | 1,024 | P-cache only | 2.052 | 0.000 | 2717.183 | 2772.000 | 2820.674 | 2938.000 | 103.491 | 166.000 | 2.7105 s |
144
+ | 1,024 | KV only | 0.000 | 193.312 | 2717.183 | 2772.000 | 3011.449 | 3096.000 | 294.266 | 324.000 | 0.3753 s |
145
+ | 1,024 | P-cache plus KV | 2.052 | 193.312 | 2717.183 | 2772.000 | 3011.966 | 3114.000 | 294.783 | 342.000 | 1.2812 s |
146
+
147
+ All nine conditions succeeded. OOM events, failures, fallbacks, and estimated
148
+ values were zero. The raw artifact SHA-256 is
149
+ `1b1e266c3f6513a5708711f09879a6519ce45abdaea7ba16d04f2510f5c1fc8d`.
150
+ See the [raw JSON](artifacts/vram-comparison.json),
151
+ [summary](assets/VRAM_COMPARISON.md), [CSV](assets/vram_comparison.csv), and
152
+ [plot](assets/vram_comparison.svg).
153
+
154
+ The result distinguishes P-cache and KV allocation. It does not imply that
155
+ semantic state and exact token-level KV are interchangeable.
156
+
157
+ ## Exact validation commands and results
158
+
159
+ ```bash
160
+ GEMMA_MODEL=/path/to/tested-gemma.gguf \
161
+ LLAMA_CPP_DIR=/path/to/llama.cpp \
162
+ .venv/bin/python -m pytest -q
163
+ ```
164
+
165
+ The final result was `126 passed in 285.62 seconds` with the exact local Gemma
166
+ runtime enabled. The separate portable no-path run completed with 119 passed and
167
+ seven exact-runtime skips. The focused exact Gemma subset completed with 33
168
+ passed in 216.16 seconds.
169
+
170
+ ```bash
171
+ PYTHONPATH=src python Publishing/assets/generate_assets.py
172
+ PYTHONPATH=src python Publishing/assets/generate_assets.py
173
+ ```
174
+
175
+ The two runs produced byte-identical SVG and normalized PDF hashes. The current
176
+ architecture PDF SHA-256 is
177
+ `19fad644f3a1e3086a845f07850beec07e20a2352cad000b461c21b6802a2519`.
178
+
179
+ ```bash
180
+ .venv/bin/python Publishing/build_release_packs.py
181
+ .venv/bin/python Publishing/validate_release.py
182
+ bash -n run-pythia.sh run-gemma.sh
183
+ .venv/bin/python -m compileall -q src benchmarks Publishing
184
+ git diff --check
185
+ ```
186
+
187
+ The publication validator requires all three manifests to match, all local links
188
+ to resolve, all JSON to parse, shell and Python syntax to pass, no workstation
189
+ absolute paths, and no third-party model or tokenizer payloads.
190
+
191
+ ## Publication folder validation
192
+
193
+ | Pack | Contents | Independent validation |
194
+ |---|---|---|
195
+ | GitHub | Developer documentation, active source, launchers, tests, benchmarks, active artifacts, historical result evidence, and assets | Passed manifest, link, syntax, JSON, path, and payload checks |
196
+ | Hugging Face | Artifact cards, active compatibility source, active artifacts, benchmark evidence, runtime requirements, and assets | Passed manifest, link, syntax, JSON, path, and payload checks |
197
+ | Research | Manuscript, experiments, ablations, reproducibility map, benchmark scripts, active and negative-result evidence, and assets | Passed manifest, link, syntax, JSON, path, and payload checks |
198
+
199
+ Upstream models, tokenizers, llama.cpp, datasets, and the historical third-party
200
+ visual specification are referenced as external prerequisites and are not copied.
201
+
202
+ ## Claims safe to publish
203
+
204
+ - Planner Cache maintains bounded mutable semantic state independently of retained token-level conversation history.
205
+ - The canonical router reached top-1 accuracy and MRR 1.0 through 1,024 slots on the recorded controlled audit.
206
+ - The Pythia TTL provides tested internal causal state compatibility with frozen-base gradient isolation.
207
+ - The Gemma LTL provides tested lexical output compatibility and does not establish internal semantic reasoning.
208
+ - Tested inactive and rejected paths preserve base behavior.
209
+ - P-package provides deterministic checksummed persistence, evidence-based promotion, selective loading, and zero inactive VRAM in the recorded proof.
210
+ - The indexed 100,000-entry P-package query hydrated four entries from 152 candidate headers.
211
+ - The gateway preserves native Gemma messages and tokenization when memory output control is inactive.
212
+ - Natural post-turn review can create and modify controlled owner, location, and status state while failing closed.
213
+ - The recorded matched VRAM matrix completed without failure and keeps P-cache and KV measurements conceptually separate.
214
+
215
+ ## Claims not safe to publish
216
+
217
+ - Universal model compatibility
218
+ - Trained semantic TTL portability beyond Pythia-1.4B
219
+ - Gemma internal semantic reasoning over P
220
+ - Replacement of arbitrary long context, archives, or historical retrieval
221
+ - Production-ready broad natural-memory extraction
222
+ - Production-ready learned personality behavior
223
+ - Constant-time routing at arbitrary scale
224
+ - Multi-seed statistical generality not present in the artifacts
225
+
226
+ ## Final ranked disposition
227
+
228
+ 1. Add an explicit repository-wide software license before redistribution.
229
+ 2. Finalize authors, affiliations, repository URL, and release identifier.
230
+ 3. Keep all semantic portability claims scoped to Pythia until a second trained TTL exists.
231
+ 4. Present natural memory review as a controlled, narrow, high-latency proof.
232
+ 5. Publish a standalone canonical representation weight artifact if exact external reconstruction becomes a release requirement.
233
+ 6. Treat per-call router-index hydration as measured technical debt rather than claiming arbitrary-scale routing.
234
+
235
+ Subject to the two publication metadata blockers, the code, artifacts, evidence,
236
+ and publication packs form a technically clean release candidate.
LICENSE_STATUS.md ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Software license status
2
+
3
+ No repository-wide software license grant is present in the source repository as
4
+ of 2026-08-23. This publication pack is technically staged but is not authorized
5
+ for public redistribution until the rights holder selects and adds a software
6
+ license.
7
+
8
+ `THIRD_PARTY_NOTICES.md` records known historical dataset licenses. Base models,
9
+ GGUF files, llama.cpp, Python dependencies, and other third-party components are
10
+ not relicensed by Planner Cache and remain governed by their upstream terms.
11
+
12
+ Model weights, tokenizer and metadata bundles, datasets, llama.cpp files, and
13
+ other third-party copyrighted payloads are intentionally excluded from every
14
+ publication pack.
15
+
16
+ This status file is intentionally not a substitute for a license.
LTL_CARD.md ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Lexical Translation Layer artifact card
2
+
3
+ A Lexical Translation Layer converts an accepted canonical value into tokenizer or output controls. It can make a runtime emit the routed value without claiming that the model represented or reasoned over that value internally.
4
+
5
+ ## Artifact
6
+
7
+ `gemma4-e4b-q8-llama.ltl`
8
+
9
+ | Field | Value |
10
+ |---|---|
11
+ | Adapter class | LTL |
12
+ | Support level | lexical or output |
13
+ | Format | `planner-cache-ltl-v1` |
14
+ | Model | Gemma4 E4B Q8 GGUF |
15
+ | Runtime | llama.cpp |
16
+ | Control | direct adaptive logit bias |
17
+ | Parameters | 0 |
18
+ | Canonical protocol | `pcm-canonical-p-v1` |
19
+ | GGUF SHA-256 | `a4c4177f9fd7e3f56522675afb742f079a53f9226195b7db5e9888c872f053da` |
20
+ | Tokenizer bundle SHA-256 | `b3033e12af0ed503d8b80390c79d02d6bd9bc372e93e377cc1dd6514b7cd21d6` |
21
+ | Artifact SHA-256 | `7eee07ed813796dd0d25b04b48aec73507b934479ad8902e1b657653c040781a` |
22
+
23
+ The LTL receives only a universal-router accepted canonical value. It tokenizes the exact UTF-8 value and applies one lexical target at a time. Rejected entity, relation, historical, invalidated, router-disabled, and LTL-disabled paths create no target and remain base-equivalent.
24
+
25
+ The matched 128-value complexity audit recorded 128 of 128 exact strings for direct adaptive logit bias with active-path KL 3.2561. KL divergence measures how far the full output distribution moved from the frozen base. The selected artifact stores identity and control metadata only. It contains no learned tensors, base weights, vocabulary table, P contents, conversation state, or optimizer state.
26
+
27
+ LTL support proves routed lexical emission. It does not prove internal semantic reasoning over P. Historical Gemma residual and sequence `.translate` artifacts remain research evidence and are not TTLs.
MODEL_CARD.md ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Planner Cache system card
2
+
3
+ ## Summary
4
+
5
+ Planner Cache is an external semantic-memory architecture attached to a frozen decoder. In plain terms, it keeps mutable facts in a separate bounded store and supplies only selected facts to the model. This card describes the tested system and does not present Planner Cache as a newly pretrained foundation model.
6
+
7
+ ## Tested base model
8
+
9
+ | Field | Value |
10
+ |---|---|
11
+ | Base | Pythia-1.4B local checkpoint |
12
+ | Architecture | GPT-NeoX decoder |
13
+ | Layers | 24 |
14
+ | Hidden width | 2048 |
15
+ | Attention heads | 16 |
16
+ | Context positions in bundled config | 2,048 |
17
+ | Base training during Planner Cache experiments | none |
18
+ | Base parameters receiving gradients in active CUDA proof | 0 |
19
+
20
+ The portability suite also ran a frozen Gemma 4 E4B Q8 GGUF with architecture `gemma4`, 42 layers, hidden width 2,560, and llama.cpp build 10276. A bounded two-value residual proved causal control but not broad compatibility. A later sequence path reached 125 of 128 exact disjoint strings. The matched audit classified that result as lexical token forcing and selected a zero-parameter direct adaptive logit-bias LTL that reached 128 of 128 exact strings. Gemma does not currently have TTL support.
21
+
22
+ Pythia remains subject to the language, factuality, bias, and safety limitations documented by EleutherAI.
23
+
24
+ ## Added components
25
+
26
+ - A 512-wide canonical P-cache with fixed configured capacity.
27
+ - A model-independent canonical router.
28
+ - A 2,707,464-parameter Pythia `.ttl` attached at layer 23.
29
+ - A disk-resident `.ppkg` proof with selective canonical activation.
30
+ - A zero-parameter Gemma `.ltl` using direct adaptive lexical control in llama.cpp.
31
+ - A hidden post-turn review side-channel that proposes validated canonical P operations after visible generation.
32
+
33
+ No LoRA, base-weight modification, prompt prefix, or P state in self-attention KV is used by the active architecture.
34
+
35
+ ## Intended use
36
+
37
+ - Research on mutable semantic state after source tokens leave recent KV.
38
+ - Evaluation of explicit state creation, modification, merging, invalidation, and retention.
39
+ - Development of small compatibility modules for frozen decoder models.
40
+ - Research on durable evidence-based personality conclusions stored outside model weights.
41
+
42
+ ## Out of scope
43
+
44
+ - General-purpose long-context replacement.
45
+ - Exact transcript recall without an external archive.
46
+ - Production user profiling.
47
+ - Claims of compatibility with arbitrary decoder models.
48
+ - Safety-critical state tracking without external validation.
49
+ - Foundation-model quality or safety evaluation.
50
+
51
+ ## Evaluation methodology
52
+
53
+ The active tests use controlled entity, relation, value, mutation, wrong-state, invalidation, held-out composition, natural-RP preservation, persistence, corruption, capacity, and scaling workloads. Source-state tokens are removed from recent KV in causal tests. The same prompt and KV are used while canonical P changes.
54
+
55
+ The active audit also profiles query construction, index hydration, canonical routing, P-package header filtering, row hydration, canonical conversion, translator latency, generation latency, CPU memory, VRAM, disk size, and bytes loaded.
56
+
57
+ The gateway transparency regression compares the final tokenized prompt with raw
58
+ llama-server for identical `system` and `user` messages and requires exact token
59
+ equivalence while P and LTL are inactive. Memory review is a separate request.
60
+
61
+ ## Main findings
62
+
63
+ Changing only canonical P changed the selected answer in the controlled causal tests. Rejecting or invalidating that state restored the frozen output. This shows a causal memory channel in the tested conditions. It does not show broad reasoning, factuality, or universal model support.
64
+
65
+ - P-cache allocation remains fixed for configured capacity.
66
+ - Relevant canonical P state causally changes Pythia token logits and generated values.
67
+ - Invalidated and rejected wrong-state conditions restore frozen-base logits in the matched CUDA benchmark.
68
+ - Natural-RP preservation remains exact on the held-out proof fixture for irrelevant state.
69
+ - P-package state remains on disk and only selected entries are activated.
70
+ - The Gemma LTL audit emitted all 128 selected held-out strings. Rejected, invalidated, and disabled paths remained inert. This is lexical compatibility, not evidence of internal semantic reasoning.
71
+ - A matched CUDA matrix distinguishes canonical P allocation, retained KV tensors, and combined peak VRAM at 64, 256, and 1,024 tokens or slots without treating P and KV as interchangeable.
72
+
73
+ ## Known limitations
74
+
75
+ The evaluation fixtures are synthetic or small held-out RP sets. Natural review
76
+ currently covers a narrow state schema and is slow. The results do not establish
77
+ general factuality, broad instruction following, production dialogue quality,
78
+ nuanced personality, or a full trained open-vocabulary TTL on a second model
79
+ family. Gemma LTL exact-string performance must not be presented as learned
80
+ semantic compatibility.
PPKG_CARD.md ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # P-package `.ppkg` card
2
+
3
+ ## Artifact
4
+
5
+ `personality-proof.ppkg`
6
+
7
+ ## Format
8
+
9
+ | Field | Value |
10
+ |---|---|
11
+ | Container | SQLite |
12
+ | Format | `pcm-personality-package-v1` |
13
+ | Protocol | `pcm-canonical-personality-v1` |
14
+ | Canonical compatibility | `pcm-canonical-p-v1` |
15
+ | File SHA-256 | `faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9` |
16
+
17
+ ## Purpose
18
+
19
+ P-package, stored as `.ppkg`, keeps durable personality and behavioral conclusions on disk. It promotes a conclusion only after repeated, diverse, or authoritative evidence. It is not a transcript archive and does not store model-native vectors.
20
+
21
+ ## Included logical data
22
+
23
+ - canonical personality entries
24
+ - evidence candidates and archive references
25
+ - support and contradiction IDs
26
+ - source authority
27
+ - scope and relationship identity
28
+ - strength, confidence, and importance
29
+ - timestamps and status
30
+ - reversible before and after changes
31
+ - protocol metadata and semantic checksum
32
+
33
+ ## Excluded data
34
+
35
+ - raw conversation transcript
36
+ - base-model weights
37
+ - model token IDs
38
+ - hidden vectors
39
+ - `.ttl` or `.ltl` contents
40
+ - LoRA
41
+ - optimizer state
42
+
43
+ ## Mechanical results
44
+
45
+ The practical result is conservative promotion. One weak event did nothing, repeated independent evidence promoted, cross-context evidence counted more than narrow repetition, and explicit correction overruled unsupported model claims. This tests auditable memory mechanics, not nuanced personality understanding.
46
+
47
+ One weak event did not promote. Three independent events promoted. Linked cross-context evidence scored 2.5865 compared with 1.8000 for five narrow-context events. Unsupported model claims did not promote. An explicit correction promoted and superseded the old conclusion while retaining audit history.
48
+
49
+ Technical, creative, and relationship-specific retrieval passed in the proof workload. Irrelevant retrieval loaded zero entries.
50
+
51
+ ## Causal results
52
+
53
+ The same prompt and KV generated Alice when the selected package conclusion specified Alice and Bob when it specified Bob. Irrelevant and unpromoted low-confidence packages reproduced frozen-base logits. The proof uses controlled preferred-persona values inside the tested compatibility range.
54
+
55
+ ## Scaling
56
+
57
+ The indexed audit measured a 58,720,256-byte synthetic package at 100k entries. Header routing took 67.10 ms, selected-row hydration took 0.118 ms, canonical conversion took 0.495 ms, and four entries were loaded from 152 candidate headers. Inactive VRAM was zero.
58
+
59
+ The separate `/personality` inspection view is paginated. At 100k active entries,
60
+ its default 100-entry page measured 21.8 ms before JSON encoding and produced a
61
+ roughly 60 KB response instead of hydrating the entire package.
62
+
63
+ ## Integrity behavior
64
+
65
+ Full semantic verification occurs on verified open, explicit verify, export, checkpoint, and dirty close. Normal routing and evidence pushes do not hash the complete package. SQLite transactional integrity remains enabled.
66
+
67
+ ## Limitations
68
+
69
+ The package proof is mechanical. It does not establish nuanced learned personality. Canonical conversion depends on an external factorized representation recipe that is not yet distributed as a separate checksummed artifact.
README.md CHANGED
@@ -1,3 +1,133 @@
1
  ---
2
- license: apache-2.0
 
 
 
 
 
 
3
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ tags:
3
+ - semantic-memory
4
+ - pythia
5
+ - pytorch
6
+ - safetensors
7
+ - sqlite
8
+ library_name: transformers
9
  ---
10
+
11
+ # Planner Cache artifacts
12
+
13
+ Planner Cache is an external memory layer for frozen language models. It stores a bounded set of current facts outside the prompt, selects relevant facts, and exposes them through a small model or runtime compatibility artifact. This repository contains those Planner Cache artifacts. It is not a foundation model.
14
+
15
+ Planner Cache is not a foundation model and does not replace arbitrary long context. Recent KV, exact history, and tool retrieval remain responsibilities of the model runtime.
16
+
17
+ ## Terms
18
+
19
+ - **P-cache** is a fixed-capacity store for facts that are currently true.
20
+ - **Canonical P** is the model-independent structured representation of those facts. It contains no model token IDs or hidden vectors.
21
+ - **Router or `.router`** selects the canonical state relevant to the current entity and relation.
22
+ - **TTL or `.ttl`** means Tensor Translation Layer. It converts canonical P into a model's internal state and represents semantic or internal support.
23
+ - **LTL or `.ltl`** means Lexical Translation Layer. It converts a routed value into tokenizer or output controls and represents lexical or output support.
24
+ - **P-package or `.ppkg`** stores durable personality patterns on disk and loads only selected entries.
25
+ - **Retained KV** is recent token-level attention memory maintained by the model runtime.
26
+ - An **active path** accepted memory and enabled TTL or LTL. An **inactive path** rejected, invalidated, or disabled memory and should match the frozen base.
27
+ - A **causal intervention** keeps the prompt fixed and changes only P. **KL divergence** measures how much the output distribution changed. **Incremental VRAM** is extra peak GPU memory above a warmed baseline.
28
+
29
+ ![Planner Cache architecture](assets/architecture.svg)
30
+
31
+ ## Distributed artifacts
32
+
33
+ | Artifact | Role | Compatibility |
34
+ |---|---|---|
35
+ | `canonical-p-v1.router` | Universal canonical state ranking and rejection | `pcm-canonical-p-v1` |
36
+ | `pythia-1.4b-final-layer.ttl` | Semantic query, value, gate, and layer metadata | Pythia-1.4B, hidden width 2048, layer 23 |
37
+ | `gemma4-e4b-q8-llama.ltl` | Direct adaptive lexical control metadata | Recorded Gemma4 Q8 GGUF and tokenizer checksums, llama.cpp |
38
+ | `personality-proof.ppkg` | Example durable personality package | `pcm-canonical-personality-v1` and canonical P v1 |
39
+ | Benchmark JSON | Raw recorded results | See [ARTIFACT_INDEX.md](ARTIFACT_INDEX.md) |
40
+
41
+ ## Compatibility boundary
42
+
43
+ ```text
44
+ canonical P state
45
+ -> universal .router
46
+ -> selected canonical value
47
+ -> native P, model-specific .ttl, or runtime-specific .ltl
48
+ -> frozen decoder
49
+ ```
50
+
51
+ The canonical router has no model hidden dimension. A `.ttl` contains semantic compatibility weights. An `.ltl` contains lexical control metadata and may have no learned parameters. Neither contains base weights or P contents. The `.ppkg` contains canonical personality entries and evidence references but no model-native tensors.
52
+
53
+ The Gemma GGUF, tokenizer files, llama.cpp binaries, and upstream model metadata
54
+ are not redistributed. Users must supply the exact compatible bundle identified
55
+ by the LTL checksums.
56
+
57
+ ## Loading the router and TTL
58
+
59
+ ```python
60
+ from transformers import AutoModelForCausalLM
61
+
62
+ from pcm.planner import ByteEntityEncoder, CanonicalPRouter
63
+ from pcm.planner import PythiaSplitTranslatedModel, TensorTranslationLayer
64
+
65
+ base = AutoModelForCausalLM.from_pretrained(
66
+ "EleutherAI/pythia-1.4b",
67
+ dtype="float16",
68
+ ).to("cuda")
69
+
70
+ ttl = TensorTranslationLayer.load(
71
+ "pythia-1.4b-final-layer.ttl",
72
+ device="cuda",
73
+ )
74
+ router = CanonicalPRouter.load("canonical-p-v1.router", device="cuda")
75
+ model = PythiaSplitTranslatedModel(base, ttl, router, ByteEntityEncoder())
76
+ ```
77
+
78
+ The public Hub repository will need to provide the Planner Cache Python implementation or a pinned source release. The artifacts are not standalone Transformers models.
79
+
80
+ ## Loading P-package
81
+
82
+ ```python
83
+ from pcm.planner import PersonalityPackage, PersonalityQuery, PersonalityRouter
84
+
85
+ with PersonalityPackage("personality-proof.ppkg") as package:
86
+ selection = PersonalityRouter().retrieve(
87
+ package,
88
+ PersonalityQuery(
89
+ subject="user",
90
+ interaction_type="technical",
91
+ domain="debugging",
92
+ relation="response_style",
93
+ ),
94
+ top_k=4,
95
+ )
96
+ ```
97
+
98
+ ## Measured results
99
+
100
+ The central causal result is that changing only valid P state changed the tested answer, while wrong, historical, invalidated, or disabled state left the tested base logits unchanged. At the 1,024-unit memory case, canonical P occupied about 2.05 MiB and retained KV tensors occupied about 193.31 MiB, a roughly 94-fold representation-size difference. These stores have different purposes and are not interchangeable.
101
+
102
+ - Post-audit canonical routing reached 100% top-1 and MRR 1.0 through 1,024 slots on the recorded synthetic scaling workload.
103
+ - The selected Pythia TTL reached 100% controlled held-out state generation at the 128-slot proof target.
104
+ - Wrong entity, wrong relation, historical, invalidated, router-disabled, and TTL-disabled matched CUDA conditions restored frozen-base logits where expected.
105
+ - The frozen Pythia base had zero parameters receiving gradients.
106
+ - The Gemma Q8 LTL emitted 128 of 128 held-out selected strings through direct adaptive logit bias. Inactive paths were exact.
107
+ - The Gemma LTL has zero learned parameters, occupies 708 bytes in the local artifact, adds no prompt tokens, and uses zero inactive VRAM.
108
+ - Indexed `.ppkg` header routing measured 67.10 ms at 100k entries and hydrated four rows from 152 headers.
109
+ - Opening an inactive `.ppkg` changed CUDA allocation by zero bytes.
110
+ - Natural post-turn review created and modified current RP state without explicit memory syntax in both interactive paths. It remains a controlled, slow extraction proof.
111
+ - The matched 1,024-token CUDA workload measured 103.491 MiB incremental peak for P-only with retained KV disabled, 294.266 MiB for retained KV only, and 294.783 MiB with both active.
112
+
113
+ See [TTL_CARD.md](TTL_CARD.md), [LTL_CARD.md](LTL_CARD.md), [ROUTER_CARD.md](ROUTER_CARD.md), [PPKG_CARD.md](PPKG_CARD.md), and the raw evidence in [ARTIFACT_INDEX.md](ARTIFACT_INDEX.md).
114
+
115
+ ## Limitations
116
+
117
+ - Full trained semantic compatibility is proven only with Pythia-1.4B.
118
+ - The GPT-2 proof is structural and uses a tiny random model.
119
+ - Gemma has LTL support, not TTL support. Exact lexical emission does not establish internal semantic reasoning over P.
120
+ - A separate sequence-aware prototype reached 125 of 128 exact disjoint strings. It is not the selected runtime artifact and has not passed the 1,000-value or broad active-RP gates.
121
+ - The sequence complexity audit showed that exact performance comes primarily from tokenizer IDs and per-token forcing. Direct logit bias reached 128 of 128 with lower KL, but it is a lexical constraint rather than semantic translation.
122
+ - Canonical representation weights are reconstructed from a fixed recipe instead of being shipped as a standalone versioned artifact.
123
+ - Router-index hydration is linear in configured slot count.
124
+ - P-package personality behavior is a controlled deterministic proof, not nuanced neural personality learning.
125
+ - Planner Cache does not preserve exact old wording and does not replace archive retrieval.
126
+ - The reviewer currently focuses on owner, location, and status state. Review failures are inert and may miss valid facts. Recorded review latency was tens of seconds on the test hardware.
127
+
128
+ ## Licensing and release metadata
129
+
130
+ Pythia-1.4B is Apache-2.0 according to its model card. Historical dataset
131
+ licenses are included in `THIRD_PARTY_NOTICES.md`. This project currently has no
132
+ repository-wide software license grant. Public redistribution remains blocked
133
+ until the rights holder selects one.
RELEASE_MANIFEST.json ADDED
@@ -0,0 +1,249 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "files": {
3
+ "ARTIFACT_INDEX.md": {
4
+ "bytes": 3153,
5
+ "sha256": "4317c3e5c4a1d5a1729a4fd43454b1ada2baa5e136c3e110a3b6a89e6cb31b98"
6
+ },
7
+ "CITATION.bib": {
8
+ "bytes": 867,
9
+ "sha256": "29b4ec696ec4a643740decdccde41befa8df470c378032b3f5442667ad5938d6"
10
+ },
11
+ "CITATION.cff": {
12
+ "bytes": 557,
13
+ "sha256": "e0ae2c1741b91795156b26f05999a0317c04415a01ef8ecf0400b0c3ab82fb11"
14
+ },
15
+ "FINAL_RELEASE_AUDIT.md": {
16
+ "bytes": 14166,
17
+ "sha256": "52df283843415aaf6dfa324ca472724584326a8857b7b1b283d16c1a182e6048"
18
+ },
19
+ "LICENSE_STATUS.md": {
20
+ "bytes": 757,
21
+ "sha256": "561e1cb080eaab253187388e5be2dc9276a9c5a3a8852dbb4a424fdf48c783d2"
22
+ },
23
+ "LTL_CARD.md": {
24
+ "bytes": 1761,
25
+ "sha256": "32eee111983eb6f5c9b38933d7adfaa6c4a4ec33ee9cd297d4a753f912c6fd02"
26
+ },
27
+ "MODEL_CARD.md": {
28
+ "bytes": 4950,
29
+ "sha256": "ab7e499220b6f5a70de79ff71d5de8d1bb99bcbe608c4e567a528aee6473d33a"
30
+ },
31
+ "PPKG_CARD.md": {
32
+ "bytes": 3181,
33
+ "sha256": "b60c082fc5facdd7b7599fa635bb99e4404d48dd9a599bda0f0465714e199683"
34
+ },
35
+ "README.md": {
36
+ "bytes": 7877,
37
+ "sha256": "ffda2a0324dc5c2692a3afac2b59b183a07246c84deeda0253f87fc7e4e85804"
38
+ },
39
+ "ROUTER_CARD.md": {
40
+ "bytes": 2737,
41
+ "sha256": "76762ee2d80c768169b452ca1d27724efa5167fea31a60ee0550680c48d09120"
42
+ },
43
+ "RUNTIME.md": {
44
+ "bytes": 1406,
45
+ "sha256": "bf5900e8fef5ffc982c4869ee0e20ff06c654063f974a8036f32ad4b9f0ae31d"
46
+ },
47
+ "SANITIZATION_REPORT.md": {
48
+ "bytes": 3411,
49
+ "sha256": "c7a609f4d464772dce34c3eb0ca79e2fda03b40bb75f518b53124973c00b677e"
50
+ },
51
+ "THIRD_PARTY_NOTICES.md": {
52
+ "bytes": 208,
53
+ "sha256": "c0b88b4f2f86d9f80d0c64bb0a73a1d29ba00f29b85966f9b5d144db244ecd47"
54
+ },
55
+ "TTL_CARD.md": {
56
+ "bytes": 1619,
57
+ "sha256": "a16b2432000b6096c215a5f00b9ff4f0d11aa28c3030fff2338158aa827019ad"
58
+ },
59
+ "artifacts/active-system-audit.json": {
60
+ "bytes": 32951,
61
+ "sha256": "6eb3e401023b5878b2bbfb9055fd921999b571f6216e370b12440b7d343c0a1d"
62
+ },
63
+ "artifacts/active-system-cuda-attribution.json": {
64
+ "bytes": 11695,
65
+ "sha256": "ffe0e8f32f9a1a059767607f0c5e0432b6baf2a9917dc56877f794458b1a5e1c"
66
+ },
67
+ "artifacts/canonical-p-v1.router": {
68
+ "bytes": 592,
69
+ "sha256": "29e0728c12f8806c48998579aedcfa389fa398f909098e162710eb2a5709834e"
70
+ },
71
+ "artifacts/debug-actions-profile.json": {
72
+ "bytes": 7528,
73
+ "sha256": "3ca4cc8ac002dc30bd6c33d1bdae764bfc3e43534498eecc98a5168069784bd4"
74
+ },
75
+ "artifacts/gemma-native-prompt-equivalence.json": {
76
+ "bytes": 1190,
77
+ "sha256": "f6823b9b5a5fd69ebf75c8aadc8efa23fe0a6eaac7a1eaa81c398a3fdb200e79"
78
+ },
79
+ "artifacts/gemma4-e4b-q8-causal.json": {
80
+ "bytes": 13550,
81
+ "sha256": "a15a862dbc5dde547e7124ce3c3f16d015c15b79730bc60b7e92425e471ecb0f"
82
+ },
83
+ "artifacts/gemma4-e4b-q8-llama.ltl": {
84
+ "bytes": 708,
85
+ "sha256": "7eee07ed813796dd0d25b04b48aec73507b934479ad8902e1b657653c040781a"
86
+ },
87
+ "artifacts/personality-proof.ppkg": {
88
+ "bytes": 61440,
89
+ "sha256": "faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9"
90
+ },
91
+ "artifacts/phase-b-factorized-representation.json": {
92
+ "bytes": 1518,
93
+ "sha256": "602bf8b8b1d07b8100b13f9842790f87ae6a5229ddc2d66377130d15413a870f"
94
+ },
95
+ "artifacts/phase-b-personality-package.json": {
96
+ "bytes": 11471,
97
+ "sha256": "5d17cbd8cecc8398105d3d53ff05e1b7941dd0732ac3d68a761790b64799bf06"
98
+ },
99
+ "artifacts/phase-b-split-translator.json": {
100
+ "bytes": 30619,
101
+ "sha256": "4a8cdc0c2bc73a1fc10f974f20d88be4902331a07b92928edb089b852bc1a845"
102
+ },
103
+ "artifacts/post-turn-memory-review-acceptance.json": {
104
+ "bytes": 1814,
105
+ "sha256": "89cb901c1665e9fd1515ef9165580a4bd3c4d9774f23976fdc6f366ef88c6b24"
106
+ },
107
+ "artifacts/ppkg-100k-profile.json": {
108
+ "bytes": 1890,
109
+ "sha256": "f5ff5233632bf5bf860fefedeec560e10a3f32729f4b6a767d0b3538d9c33a05"
110
+ },
111
+ "artifacts/pythia-1.4b-final-layer.ttl": {
112
+ "bytes": 10832776,
113
+ "sha256": "72ef68d07ee27c37b90432d34d4be5c2c280ae1bcb08236e37a0e458c054d8d7"
114
+ },
115
+ "artifacts/vram-comparison.json": {
116
+ "bytes": 9347,
117
+ "sha256": "1b1e266c3f6513a5708711f09879a6519ce45abdaea7ba16d04f2510f5c1fc8d"
118
+ },
119
+ "assets/EVIDENCE_MANIFEST.json": {
120
+ "bytes": 2267,
121
+ "sha256": "90a7ea25fafcbdb63fb16d5843cc4ea10b6af30da6fc88aa3348546e11424c94"
122
+ },
123
+ "assets/README.md": {
124
+ "bytes": 2326,
125
+ "sha256": "5b50dcb78bc07e0b81e38680a77b299c4a791264f914d9e55e1c7235ddfac66a"
126
+ },
127
+ "assets/VRAM_COMPARISON.md": {
128
+ "bytes": 3116,
129
+ "sha256": "515fa0b0ed924670010d7c522fd6b07eef62954645c5ef2c6bcfe2f510569164"
130
+ },
131
+ "assets/architecture.mmd": {
132
+ "bytes": 536,
133
+ "sha256": "a3501af51b8381e5500b092a6cea2cc6fc84a0d604fc31360b82cfa2cba20e82"
134
+ },
135
+ "assets/architecture.pdf": {
136
+ "bytes": 33505,
137
+ "sha256": "19fad644f3a1e3086a845f07850beec07e20a2352cad000b461c21b6802a2519"
138
+ },
139
+ "assets/architecture.svg": {
140
+ "bytes": 5796,
141
+ "sha256": "896fbe844c3a15bef586f1d0eb1b249560cb482ba3a2891c7fe0dd03b8056156"
142
+ },
143
+ "assets/causal_conditions.csv": {
144
+ "bytes": 2015,
145
+ "sha256": "b756dcf96c276885d58784df4e25a9de0d1f114e2631e68ba42bd6f2fdb97b80"
146
+ },
147
+ "assets/gemma_causal_conditions.csv": {
148
+ "bytes": 1108,
149
+ "sha256": "86e490aedf0ade7ef7c5d153887a71fd973fd2c2ec50bed8fd45880891a711a9"
150
+ },
151
+ "assets/generate_assets.py": {
152
+ "bytes": 19721,
153
+ "sha256": "da2d2b9d710f1bb238445af967065ee06866643957e9b829945b9ee55b7b4f6c"
154
+ },
155
+ "assets/ppkg_lookup.svg": {
156
+ "bytes": 3462,
157
+ "sha256": "c3cb8293f032d2c893f2f2f308904d2132abeed66bd109713a29e0fcf530bf91"
158
+ },
159
+ "assets/ppkg_scaling.csv": {
160
+ "bytes": 655,
161
+ "sha256": "3a6998adaed8f7ae59bd7f9beba36a402750d609be7ed9df441678ad87ef0cbe"
162
+ },
163
+ "assets/router_scaling.csv": {
164
+ "bytes": 300,
165
+ "sha256": "18bae82acb8dc34f40b6600ca1965bc15ddfe8c33546e2579850a03aa9f0f52a"
166
+ },
167
+ "assets/router_scaling.svg": {
168
+ "bytes": 4751,
169
+ "sha256": "a85d53fb6116baf46cc3bf68507e7073ed2b6e9f62872fb5179464b000246cb0"
170
+ },
171
+ "assets/vram_comparison.csv": {
172
+ "bytes": 1214,
173
+ "sha256": "e9c105610f4ecfca65a59bd2e271468039e86693d8643bdb155353339ad6c16f"
174
+ },
175
+ "assets/vram_comparison.svg": {
176
+ "bytes": 4163,
177
+ "sha256": "f27c0503fe378fdb0ad400ddb4280720425167369a2a8c6f4bc990015787cdbb"
178
+ },
179
+ "pyproject.toml": {
180
+ "bytes": 693,
181
+ "sha256": "b716b42cf7f61328805fde14ea6249c7f9d475de6127532c7bf35ad13c61fa8b"
182
+ },
183
+ "src/pcm/__init__.py": {
184
+ "bytes": 70,
185
+ "sha256": "13fa02743f631c4d76dc7d4e0b849f698a7ea3c357d0575e2aac49145c3a1e1b"
186
+ },
187
+ "src/pcm/planner/__init__.py": {
188
+ "bytes": 2335,
189
+ "sha256": "b42895436ecb899f65443d4bc6d9804477b5b7be30354e37a97f2eb0ef05b2fb"
190
+ },
191
+ "src/pcm/planner/cache.py": {
192
+ "bytes": 13974,
193
+ "sha256": "211cf9ad7baddf07e7e9e3fdbccfa7c04d446105ca014114e823cf67a490cb1f"
194
+ },
195
+ "src/pcm/planner/canonical.py": {
196
+ "bytes": 8251,
197
+ "sha256": "85f9107db2e7652989114d09b6b16af59deca249d6e632ed9e2c77c01e2eef3f"
198
+ },
199
+ "src/pcm/planner/chat_cli.py": {
200
+ "bytes": 21671,
201
+ "sha256": "31e4a30b0eb56ab78cc822ead4c79688800a5a5c79558ba0e7f06de0132b773f"
202
+ },
203
+ "src/pcm/planner/compatibility.py": {
204
+ "bytes": 12453,
205
+ "sha256": "6bfd8d490ccdd9049a4f521082ab1d35e2990cce0aa2f23aa5b38e26948cd368"
206
+ },
207
+ "src/pcm/planner/interactive_runtimes.py": {
208
+ "bytes": 37688,
209
+ "sha256": "1ab389056a07534a287d96fbff1a4dbd5b8e0f0366e920b8e61c84e2e4bc65d0"
210
+ },
211
+ "src/pcm/planner/interactive_session.py": {
212
+ "bytes": 31970,
213
+ "sha256": "e45044703b472d0cf61a790d169eee52b326466545758ba92b2bf007fe7734f9"
214
+ },
215
+ "src/pcm/planner/memory_review.py": {
216
+ "bytes": 15500,
217
+ "sha256": "24b5e98475eeb8190c157215d9e7dd763a7b6ffd70c801cfddd8f3d5975261d8"
218
+ },
219
+ "src/pcm/planner/personality.py": {
220
+ "bytes": 47537,
221
+ "sha256": "c480148d3134c46ebdef142cc95759e18b89441f43fad08135304e7dda437bdf"
222
+ },
223
+ "src/pcm/planner/personality_eval.py": {
224
+ "bytes": 28514,
225
+ "sha256": "0f26540826a267b669f9159b020d04045ea74bba4faf283f468c3cf6b46cefab"
226
+ },
227
+ "src/pcm/planner/pythia_split_translate.py": {
228
+ "bytes": 8018,
229
+ "sha256": "6f421cc12f9f86d965063fa4604317fbade3d025b664145639c14fcf2fee0fb9"
230
+ },
231
+ "src/pcm/planner/representation.py": {
232
+ "bytes": 9797,
233
+ "sha256": "0a44e7c802dc7aa93bbdb58a64fa8d9719725a92d500b44240d49053057aba60"
234
+ },
235
+ "src/pcm/planner/split_translator.py": {
236
+ "bytes": 16193,
237
+ "sha256": "8beeb52682c043a02bdafeeb012c95ec01283dbd029b882f0b974a27e9901931"
238
+ },
239
+ "src/pcm/planner/split_translator_eval.py": {
240
+ "bytes": 44711,
241
+ "sha256": "2e1b301268f806b4d7d08f5ff33f0707392839913dbde85a258bc20ac5f07b79"
242
+ },
243
+ "src/pcm/planner/web_chat.py": {
244
+ "bytes": 14555,
245
+ "sha256": "3d8ba8557212f339d319eb9ee0410b533ca86806984b85b264f089b3b625e4ad"
246
+ }
247
+ },
248
+ "format": "planner-cache-release-pack-v1"
249
+ }
ROUTER_CARD.md ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Canonical router card
2
+
3
+ The canonical router is the model-independent selector. Given a structured query, it ranks current P entries and rejects state that belongs to the wrong entity, relation, time, or validity status.
4
+
5
+ ## Artifact
6
+
7
+ `canonical-p-v1.router`
8
+
9
+ ## Metadata
10
+
11
+ | Field | Value |
12
+ |---|---|
13
+ | Format | `pcm-canonical-router-v1` |
14
+ | Architecture | `canonical_factor_router_v1` |
15
+ | Canonical protocol | `pcm-canonical-p-v1` |
16
+ | Entity width | 128 |
17
+ | Relation count | 3 |
18
+ | Metadata count | 4 |
19
+ | Model hidden dimensions | 0 |
20
+ | Learned scalar parameters | 5 |
21
+ | File SHA-256 | `29e0728c12f8806c48998579aedcfa389fa398f909098e162710eb2a5709834e` |
22
+ | Tensor SHA-256 | `5434b21de18a0f66cd4506c057989d18796fad84c55725e33e04688fbc7650bc` |
23
+
24
+ ## Routing semantics
25
+
26
+ The router consumes a canonical query and a canonical slot index. It scores tokenizer-independent entity similarity, relation agreement, metadata agreement, and current-state status. Invalidated and stale slots are masked. A calibrated acceptance threshold rejects wrong-entity, wrong-relation, historical, invalidated, and irrelevant candidates before translation.
27
+
28
+ The router does not consume Pythia hidden states. Model hidden states are converted to canonical query fields before routing.
29
+
30
+ The same router and canonical byte-derived query were used unchanged in the bounded Gemma4 Q8 llama.cpp proof. That proof supplied the canonical query externally because the public runtime path did not expose Gemma hidden states. It therefore validates router reuse but not a Gemma query projector.
31
+
32
+ ## Post-audit scaling
33
+
34
+ The router chose the correct entry first on every controlled query through 1,024 slots. This fixed the earlier decline without hiding errors by increasing top-k. The result does not remove the separate linear index-hydration cost.
35
+
36
+ | Slots | Top-1 | Top-4 recall | MRR |
37
+ |---:|---:|---:|---:|
38
+ | 4 | 100% | 100% | 1.0 |
39
+ | 20 | 100% | 100% | 1.0 |
40
+ | 64 | 100% | 100% | 1.0 |
41
+ | 128 | 100% | 100% | 1.0 |
42
+ | 256 | 100% | 100% | 1.0 |
43
+ | 512 | 100% | 100% | 1.0 |
44
+ | 1,024 | 100% | 100% | 1.0 |
45
+
46
+ These are post-audit router measurements after canonical merge was constrained by entity and relation identity. The immutable pre-fix phase artifact remains 100% at 128, 95% at 256, and 85% at 512.
47
+
48
+ ## Performance
49
+
50
+ Rank latency remained below 0.7 ms through 1,024 slots in the audit. Index hydration is separate and measured 30.12 ms at 128 slots and 233.00 ms at 1,024 slots.
51
+
52
+ ## Limitations
53
+
54
+ The current implementation rebuilds byte-derived entity anchors for every slot during each wrapper call. The router uses a linear score over configured slots. The scaling benchmark is controlled and does not establish universal entity disambiguation in open-domain text.
RUNTIME.md ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Runtime instructions
2
+
3
+ Planner Cache does not distribute base-model weights or llama.cpp. Create the
4
+ Python environment, provide local model paths, and use the included launchers.
5
+ The exact Gemma tokenizer and metadata bundle is also an external upstream
6
+ requirement. Its contents are not redistributed in these publication packs.
7
+
8
+ ```bash
9
+ python -m venv .venv
10
+ .venv/bin/pip install -e '.[dev,publishing]'
11
+
12
+ export LLAMA_CPP_DIR=/path/to/llama.cpp
13
+ export GEMMA_MODEL=/path/to/compatible-gemma.gguf
14
+ export GEMMA_TOKENIZER_BUNDLE=/path/to/matching-gemma-tokenizer-bundle
15
+ ./run-gemma.sh
16
+
17
+ export PYTHIA_MODEL=/path/to/pythia-1.4b
18
+ export REVIEW_MODEL="$GEMMA_MODEL"
19
+ ./run-pythia.sh
20
+ ```
21
+
22
+ The launchers resolve the project root from their own location. Optional paths
23
+ include `PYTHIA_TTL`, `GEMMA_LTL`, `GEMMA_TOKENIZER_BUNDLE`, `ROUTER_PATH`,
24
+ `PPKG_PATH`, `SESSION_ROOT`, `LLAMA_WEB_UI`, `WEB_HOST`, and `WEB_PORT`.
25
+
26
+ Gemma uses llama.cpp and the active `.ltl`. Pythia uses the semantic `.ttl` and
27
+ uses the configured frozen GGUF as a CPU structured reviewer by default. The
28
+ review request is separate from visible generation and uses neither TTL nor LTL.
29
+
30
+ The browser is the primary conversation interface. Terminal commands `/state`,
31
+ `/personality`, `/events`, `/save`, and `/quit` are secondary diagnostics.
32
+ Every session records transcript, events, metadata, P-cache state, and final
33
+ state under `sessions/`.
SANITIZATION_REPORT.md ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Publication sanitization report
2
+
3
+ Sanitization date: 2026-08-23
4
+
5
+ ## Scope
6
+
7
+ The GitHub, Hugging Face, and Research packs were rebuilt from the publication
8
+ source set. This pass changed packaging and explanation only. It did not change
9
+ the architecture, run new benchmarks, or alter recorded benchmark values.
10
+
11
+ ## Removed
12
+
13
+ - Nested `.git` repositories, including local commit identity and email data
14
+ - Cache directories and temporary build output
15
+ - Third-party model weights, GGUF files, tokenizer and configuration bundles,
16
+ datasets, llama.cpp files, and ordinary checkpoint formats
17
+ - Random temporary-directory identifiers from publication copies of benchmark JSON
18
+ - Concrete interactive session IDs from publication copies of acceptance evidence
19
+ - Workstation-specific repository, model, and runtime paths
20
+ - Machine-specific launcher defaults for local model, tokenizer, and llama.cpp paths
21
+
22
+ ## Replaced
23
+
24
+ - Repository paths became `${REPOSITORY_ROOT}` where provenance required a path
25
+ - Model paths became `${GEMMA_MODEL}` or neutral `/path/to/model.gguf` examples
26
+ - Runtime paths became `${LLAMA_CPP_DIR}` or `/path/to/llama.cpp`
27
+ - Temporary run directories became `${TEMP_DIR}/planner-cache-run`
28
+ - Concrete session IDs became `benchmark-session-gemma` or
29
+ `benchmark-session-pythia`
30
+ - Any detected email address in generated pack text becomes `user@example.com`
31
+
32
+ Path and identifier normalization changes only non-numerical provenance fields in
33
+ the publication copies. The authoritative repository benchmark artifacts remain
34
+ unchanged. Pack-specific checksums are regenerated after normalization.
35
+
36
+ ## Readability changes
37
+
38
+ The main README, benchmark guide, Hugging Face cards, research abstract, paper,
39
+ and VRAM guide now state the practical result and its boundary before detailed
40
+ tables. P-cache, canonical P, router, TTL, LTL, P-package, retained KV, active
41
+ and inactive paths, causal intervention, KL divergence, and incremental VRAM are
42
+ defined in plain English at first use in each primary publication entry point.
43
+
44
+ ## Intentionally retained technical metadata
45
+
46
+ The following fields are useful for reproduction and are not treated as personal
47
+ identifiers:
48
+
49
+ - Model family and architecture identifiers
50
+ - Model, adapter, router, and evidence checksums
51
+ - llama.cpp build number and commit identifier
52
+ - GPU model, VRAM capacity, driver, CUDA, PyTorch, Transformers, Python, kernel,
53
+ and platform versions
54
+ - Benchmark names, seeds, layer numbers, dimensions, token counts, timestamps,
55
+ durations, and measured values
56
+ - Synthetic test entities, names, state values, and controlled role-play examples
57
+
58
+ No hostname, account name, private email, personal conversation, or original
59
+ session identifier is required for reproduction.
60
+
61
+ ## Validation
62
+
63
+ The release validator checks every pack for nested repository metadata, cache
64
+ directories, private email addresses, personal machine identifiers, concrete
65
+ session IDs, random temporary paths, absolute home or removable-media paths,
66
+ forbidden third-party payloads, broken links, malformed JSON, syntax errors, and
67
+ manifest mismatch.
68
+
69
+ Validation commands:
70
+
71
+ ```bash
72
+ .venv/bin/python Publishing/build_release_packs.py
73
+ .venv/bin/python Publishing/validate_release.py
74
+ PYTHONPATH=src python Publishing/assets/generate_assets.py
75
+ git diff --check
76
+ ```
77
+
78
+ All publication sanitization, payload, manifest, link, JSON, syntax, asset, and
79
+ diff checks passed in the final run.
THIRD_PARTY_NOTICES.md ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ ## Training data:
2
+ - PIPPA — PygmalionAI — Apache-2.0
3
+ - SPB-2602 — marcoDSN — CC BY 4.0
4
+ - SOC-2508 — marcoDSN — CC BY 4.0
5
+
6
+ The datasets were normalized, filtered, and deduplicated before training.
TTL_CARD.md ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Tensor Translation Layer artifact card
2
+
3
+ A Tensor Translation Layer converts model-independent canonical P into a frozen model's internal hidden-state space. It is intended for semantic or internal memory use rather than direct token forcing.
4
+
5
+ ## Artifact
6
+
7
+ `pythia-1.4b-final-layer.ttl`
8
+
9
+ | Field | Value |
10
+ |---|---|
11
+ | Adapter class | TTL |
12
+ | Support level | semantic or internal |
13
+ | Format | `planner-cache-ttl-v1` |
14
+ | Base model | Pythia-1.4B |
15
+ | Hidden width | 2,048 |
16
+ | Attachment | GPT-NeoX layer 23 |
17
+ | Parameters | 2,707,464 |
18
+ | Canonical protocol | `pcm-canonical-p-v1` |
19
+ | Artifact SHA-256 | `72ef68d07ee27c37b90432d34d4be5c2c280ae1bcb08236e37a0e458c054d8d7` |
20
+
21
+ The TTL maps model hidden states to factorized canonical queries and selected canonical values back to model-hidden residuals. Its gate is conditioned on current hidden state, translated P, and canonical route features. The frozen Pythia base receives zero gradients.
22
+
23
+ The controlled 128-slot benchmark recorded 100% held-out state generation. In the matched causal test, changing only canonical P changed the answer. Wrong, historical, invalidated, router-disabled, and TTL-disabled conditions restored frozen candidate logits. This proves the tested Pythia path can consume internal state, not that every model can.
24
+
25
+ The artifact contains adapter tensors and compatibility metadata. It contains no base-model weights, P-cache state, conversation state, prompt tokens, KV, or optimizer state.
26
+
27
+ This evidence is specific to Pythia-1.4B. The tiny GPT-2 test is structural and does not establish trained semantic portability to another model family.
artifacts/active-system-audit.json ADDED
@@ -0,0 +1,979 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cache_router_profile": {
3
+ "1024": {
4
+ "context_query_cpu_seconds": 0.00026123900000030176,
5
+ "context_query_wall_seconds": 0.00026156400053878315,
6
+ "correct": true,
7
+ "fixed_allocation_bytes": 2151424,
8
+ "router_index_bytes": 541696,
9
+ "routing_cpu_seconds": 0.0001990224999999235,
10
+ "routing_wall_seconds": 0.0001980755005206447,
11
+ "selected_index": 1023,
12
+ "slot_hydration_cpu_seconds": 0.2316533870000006,
13
+ "slot_hydration_wall_seconds": 0.23300263999772142
14
+ },
15
+ "128": {
16
+ "context_query_cpu_seconds": 0.00026496599999958903,
17
+ "context_query_wall_seconds": 0.0002643149982759496,
18
+ "correct": true,
19
+ "fixed_allocation_bytes": 268928,
20
+ "router_index_bytes": 67712,
21
+ "routing_cpu_seconds": 0.00017257199999987094,
22
+ "routing_wall_seconds": 0.00017198149907926563,
23
+ "selected_index": 127,
24
+ "slot_hydration_cpu_seconds": 0.029635333999999958,
25
+ "slot_hydration_wall_seconds": 0.0301195789979829
26
+ },
27
+ "256": {
28
+ "context_query_cpu_seconds": 0.00026626349999947507,
29
+ "context_query_wall_seconds": 0.0002665029987838352,
30
+ "correct": true,
31
+ "fixed_allocation_bytes": 537856,
32
+ "router_index_bytes": 135424,
33
+ "routing_cpu_seconds": 0.0001784940000004731,
34
+ "routing_wall_seconds": 0.00017715650028549135,
35
+ "selected_index": 255,
36
+ "slot_hydration_cpu_seconds": 0.05884093700000026,
37
+ "slot_hydration_wall_seconds": 0.059160028999031056
38
+ },
39
+ "512": {
40
+ "context_query_cpu_seconds": 0.00026109349999980935,
41
+ "context_query_wall_seconds": 0.00026036700000986457,
42
+ "correct": true,
43
+ "fixed_allocation_bytes": 1075712,
44
+ "router_index_bytes": 270848,
45
+ "routing_cpu_seconds": 0.00018318249999982328,
46
+ "routing_wall_seconds": 0.0001824114988266956,
47
+ "selected_index": 511,
48
+ "slot_hydration_cpu_seconds": 0.11655074100000018,
49
+ "slot_hydration_wall_seconds": 0.1174167370008945
50
+ },
51
+ "64": {
52
+ "context_query_cpu_seconds": 0.000264374499999942,
53
+ "context_query_wall_seconds": 0.00026382900068711024,
54
+ "correct": true,
55
+ "fixed_allocation_bytes": 134464,
56
+ "router_index_bytes": 33856,
57
+ "routing_cpu_seconds": 0.00017868450000024794,
58
+ "routing_wall_seconds": 0.00017796800057112705,
59
+ "selected_index": 63,
60
+ "slot_hydration_cpu_seconds": 0.014785765000000062,
61
+ "slot_hydration_wall_seconds": 0.014910114001395414
62
+ }
63
+ },
64
+ "dependency_map": {
65
+ "active_module_imports": {
66
+ "__init__": [
67
+ "pcm.planner.cache",
68
+ "pcm.planner.canonical",
69
+ "pcm.planner.personality",
70
+ "pcm.planner.pythia_split_translate",
71
+ "pcm.planner.split_translator"
72
+ ],
73
+ "cache": [],
74
+ "canonical": [
75
+ "pcm.planner.cache"
76
+ ],
77
+ "personality": [
78
+ "pcm.planner.cache",
79
+ "pcm.planner.canonical",
80
+ "pcm.planner.representation",
81
+ "pcm.planner.split_translator"
82
+ ],
83
+ "personality_eval": [
84
+ "pcm.planner.canonical",
85
+ "pcm.planner.personality",
86
+ "pcm.planner.pythia_split_translate",
87
+ "pcm.planner.representation",
88
+ "pcm.planner.split_translator"
89
+ ],
90
+ "personality_profile": [
91
+ "pcm.planner.canonical",
92
+ "pcm.planner.personality",
93
+ "pcm.planner.representation"
94
+ ],
95
+ "pythia_split_translate": [
96
+ "pcm.planner.canonical",
97
+ "pcm.planner.split_translator"
98
+ ],
99
+ "representation": [],
100
+ "split_translator": [
101
+ "pcm.planner.cache",
102
+ "pcm.planner.canonical"
103
+ ],
104
+ "split_translator_eval": [
105
+ "pcm.planner.cache",
106
+ "pcm.planner.canonical",
107
+ "pcm.planner.pythia_split_translate",
108
+ "pcm.planner.representation",
109
+ "pcm.planner.split_translator"
110
+ ]
111
+ },
112
+ "archive_dependencies": [],
113
+ "canonical_stores_model_hidden_vectors": false,
114
+ "canonical_stores_model_token_ids": false
115
+ },
116
+ "experiment": "active-planner-cache-full-audit-v1",
117
+ "matched_e2e_evidence": {
118
+ "failure_attribution_fields": "storage validity, selected route/rank, acceptance, gate, candidate logits, generated token, KL, latency, VRAM",
119
+ "matched_cuda_attribution": {
120
+ "active_memory": {
121
+ "context_creative": {
122
+ "canonical_store_bytes": 1077,
123
+ "loaded_entries": 1,
124
+ "logical_disk_bytes_read": 990,
125
+ "package_disk_bytes": 57344
126
+ },
127
+ "context_technical": {
128
+ "canonical_store_bytes": 1077,
129
+ "loaded_entries": 1,
130
+ "logical_disk_bytes_read": 996,
131
+ "package_disk_bytes": 57344
132
+ },
133
+ "irrelevant": {
134
+ "canonical_store_bytes": 0,
135
+ "loaded_entries": 0,
136
+ "logical_disk_bytes_read": 0,
137
+ "package_disk_bytes": 57344
138
+ },
139
+ "low_confidence": {
140
+ "canonical_store_bytes": 0,
141
+ "loaded_entries": 0,
142
+ "logical_disk_bytes_read": 0,
143
+ "package_disk_bytes": 57344
144
+ },
145
+ "package_a": {
146
+ "canonical_store_bytes": 1077,
147
+ "loaded_entries": 1,
148
+ "logical_disk_bytes_read": 787,
149
+ "package_disk_bytes": 57344
150
+ },
151
+ "package_b": {
152
+ "canonical_store_bytes": 1077,
153
+ "loaded_entries": 1,
154
+ "logical_disk_bytes_read": 783,
155
+ "package_disk_bytes": 57344
156
+ }
157
+ },
158
+ "adapter_training_performed": false,
159
+ "base_model": "pythia-1.4b",
160
+ "base_parameters_with_grad": 0,
161
+ "base_training_performed": false,
162
+ "candidate_accuracy": {
163
+ "context_creative_bob": 1.0,
164
+ "context_technical_alice": 1.0,
165
+ "irrelevant_matches_base": 1.0,
166
+ "package_a_alice": 1.0,
167
+ "package_b_bob": 1.0
168
+ },
169
+ "canonical_probe": {
170
+ "canonical_decode_accuracy": {
171
+ "entity": 1.0,
172
+ "metadata": 1.0,
173
+ "relation": 1.0,
174
+ "value": 1.0
175
+ },
176
+ "hard_negative_accuracy": {
177
+ "historical": 1.0,
178
+ "wrong_entity": 0.97265625,
179
+ "wrong_value": 1.0
180
+ },
181
+ "held_out_combinations": 256,
182
+ "p_only_state_recovery": 0.97265625,
183
+ "permutation_stability": 1.0,
184
+ "permutations_per_combination": 8,
185
+ "slot_width": 512,
186
+ "total_held_out_combinations": 519,
187
+ "train_combinations": 2073,
188
+ "training_loss_first": 7.440117835998535,
189
+ "training_loss_last": 0.04114125296473503
190
+ },
191
+ "canonical_representation_reconstructed_from_fixed_existing_recipe": true,
192
+ "causal": {
193
+ "frozen_base": {
194
+ "active_state_vram_bytes": 0,
195
+ "alice_logit": 7.02734375,
196
+ "alice_probability": 0.00023412609880324453,
197
+ "bob_logit": 6.12109375,
198
+ "bob_probability": 9.459550346946344e-05,
199
+ "gate": 0.0,
200
+ "generated": " able",
201
+ "kl_from_base": -1.646096947638398e-08,
202
+ "router_accepted": false,
203
+ "router_score": null,
204
+ "selected_index": null,
205
+ "selected_state": null
206
+ },
207
+ "historical": {
208
+ "active_state_vram_bytes": 1077,
209
+ "alice_logit": 7.02734375,
210
+ "alice_probability": 0.00023412609880324453,
211
+ "bob_logit": 6.12109375,
212
+ "bob_probability": 9.459550346946344e-05,
213
+ "gate": 0.0,
214
+ "generated": " able",
215
+ "kl_from_base": -1.646096947638398e-08,
216
+ "router_accepted": false,
217
+ "router_score": 5.400981426239014,
218
+ "selected_index": 0,
219
+ "selected_state": "user"
220
+ },
221
+ "invalidated": {
222
+ "active_state_vram_bytes": 1077,
223
+ "alice_logit": 7.02734375,
224
+ "alice_probability": 0.00023412609880324453,
225
+ "bob_logit": 6.12109375,
226
+ "bob_probability": 9.459550346946344e-05,
227
+ "gate": 0.0,
228
+ "generated": " able",
229
+ "kl_from_base": -1.646096947638398e-08,
230
+ "router_accepted": false,
231
+ "router_score": null,
232
+ "selected_index": null,
233
+ "selected_state": null
234
+ },
235
+ "p_cache_only": {
236
+ "active_state_vram_bytes": 1077,
237
+ "alice_logit": 7.02734375,
238
+ "alice_probability": 0.00023412609880324453,
239
+ "bob_logit": 6.12109375,
240
+ "bob_probability": 9.459550346946344e-05,
241
+ "gate": 0.0,
242
+ "generated": " able",
243
+ "kl_from_base": -1.646096947638398e-08,
244
+ "router_accepted": false,
245
+ "router_score": -0.30040669441223145,
246
+ "selected_index": 0,
247
+ "selected_state": "current-task"
248
+ },
249
+ "p_cache_plus_p_package": {
250
+ "active_state_vram_bytes": 2154,
251
+ "alice_logit": 40.03125,
252
+ "alice_probability": 1.0,
253
+ "bob_logit": 13.859375,
254
+ "bob_probability": 4.302284223323127e-12,
255
+ "gate": 0.9909488558769226,
256
+ "generated": " Alice",
257
+ "kl_from_base": 8.359650611877441,
258
+ "router_accepted": true,
259
+ "router_score": 5.590433597564697,
260
+ "selected_index": 1,
261
+ "selected_state": "user"
262
+ },
263
+ "p_package_a_relevant": {
264
+ "active_state_vram_bytes": 1077,
265
+ "alice_logit": 40.03125,
266
+ "alice_probability": 1.0,
267
+ "bob_logit": 13.859375,
268
+ "bob_probability": 4.302284223323127e-12,
269
+ "gate": 0.9909488558769226,
270
+ "generated": " Alice",
271
+ "kl_from_base": 8.359650611877441,
272
+ "router_accepted": true,
273
+ "router_score": 5.590433597564697,
274
+ "selected_index": 0,
275
+ "selected_state": "user"
276
+ },
277
+ "p_package_b_relevant": {
278
+ "active_state_vram_bytes": 1077,
279
+ "alice_logit": 14.0,
280
+ "alice_probability": 8.776464277548968e-11,
281
+ "bob_logit": 37.15625,
282
+ "bob_probability": 0.9998875856399536,
283
+ "gate": 0.9605370163917542,
284
+ "generated": " Bob",
285
+ "kl_from_base": 9.265372276306152,
286
+ "router_accepted": true,
287
+ "router_score": 5.590433597564697,
288
+ "selected_index": 0,
289
+ "selected_state": "user"
290
+ },
291
+ "p_package_context_creative": {
292
+ "active_state_vram_bytes": 1077,
293
+ "alice_logit": 14.0,
294
+ "alice_probability": 8.776464277548968e-11,
295
+ "bob_logit": 37.15625,
296
+ "bob_probability": 0.9998875856399536,
297
+ "gate": 0.9605370163917542,
298
+ "generated": " Bob",
299
+ "kl_from_base": 9.265372276306152,
300
+ "router_accepted": true,
301
+ "router_score": 5.590433597564697,
302
+ "selected_index": 0,
303
+ "selected_state": "user"
304
+ },
305
+ "p_package_context_technical": {
306
+ "active_state_vram_bytes": 1077,
307
+ "alice_logit": 40.03125,
308
+ "alice_probability": 1.0,
309
+ "bob_logit": 13.859375,
310
+ "bob_probability": 4.302284223323127e-12,
311
+ "gate": 0.9909488558769226,
312
+ "generated": " Alice",
313
+ "kl_from_base": 8.359650611877441,
314
+ "router_accepted": true,
315
+ "router_score": 5.590433597564697,
316
+ "selected_index": 0,
317
+ "selected_state": "user"
318
+ },
319
+ "p_package_contradictory_low_confidence": {
320
+ "active_state_vram_bytes": 0,
321
+ "alice_logit": 7.02734375,
322
+ "alice_probability": 0.00023412609880324453,
323
+ "bob_logit": 6.12109375,
324
+ "bob_probability": 9.459550346946344e-05,
325
+ "gate": 0.0,
326
+ "generated": " able",
327
+ "kl_from_base": -1.646096947638398e-08,
328
+ "router_accepted": false,
329
+ "router_score": null,
330
+ "selected_index": null,
331
+ "selected_state": null
332
+ },
333
+ "p_package_irrelevant": {
334
+ "active_state_vram_bytes": 0,
335
+ "alice_logit": 7.02734375,
336
+ "alice_probability": 0.00023412609880324453,
337
+ "bob_logit": 6.12109375,
338
+ "bob_probability": 9.459550346946344e-05,
339
+ "gate": 0.0,
340
+ "generated": " able",
341
+ "kl_from_base": -1.646096947638398e-08,
342
+ "router_accepted": false,
343
+ "router_score": null,
344
+ "selected_index": null,
345
+ "selected_state": null
346
+ },
347
+ "router_disabled": {
348
+ "active_state_vram_bytes": 0,
349
+ "alice_logit": 7.02734375,
350
+ "alice_probability": 0.00023412609880324453,
351
+ "bob_logit": 6.12109375,
352
+ "bob_probability": 9.459550346946344e-05,
353
+ "gate": 0.0,
354
+ "generated": " able",
355
+ "kl_from_base": -1.646096947638398e-08,
356
+ "router_accepted": false,
357
+ "router_score": null,
358
+ "selected_index": null,
359
+ "selected_state": null
360
+ },
361
+ "translator_disabled": {
362
+ "active_state_vram_bytes": 1077,
363
+ "alice_logit": 7.02734375,
364
+ "alice_probability": 0.00023412609880324453,
365
+ "bob_logit": 6.12109375,
366
+ "bob_probability": 9.459550346946344e-05,
367
+ "gate": 0.0,
368
+ "generated": " able",
369
+ "kl_from_base": -1.646096947638398e-08,
370
+ "router_accepted": true,
371
+ "router_score": 5.590433597564697,
372
+ "selected_index": 0,
373
+ "selected_state": "user"
374
+ },
375
+ "translator_oracle_route": {
376
+ "active_state_vram_bytes": 1077,
377
+ "alice_logit": 40.03125,
378
+ "alice_probability": 1.0,
379
+ "bob_logit": 13.859375,
380
+ "bob_probability": 4.302284223323127e-12,
381
+ "gate": 0.9909488558769226,
382
+ "generated": " Alice",
383
+ "kl_from_base": 8.359650611877441,
384
+ "router_accepted": true,
385
+ "router_score": 5.590433597564697,
386
+ "selected_index": 0,
387
+ "selected_state": "user"
388
+ },
389
+ "wrong_entity": {
390
+ "active_state_vram_bytes": 1077,
391
+ "alice_logit": 7.02734375,
392
+ "alice_probability": 0.00023412609880324453,
393
+ "bob_logit": 6.12109375,
394
+ "bob_probability": 9.459550346946344e-05,
395
+ "gate": 0.0,
396
+ "generated": " able",
397
+ "kl_from_base": -1.646096947638398e-08,
398
+ "router_accepted": false,
399
+ "router_score": -0.30040669441223145,
400
+ "selected_index": 0,
401
+ "selected_state": "someone-else"
402
+ },
403
+ "wrong_relation": {
404
+ "active_state_vram_bytes": 1077,
405
+ "alice_logit": 7.02734375,
406
+ "alice_probability": 0.00023412609880324453,
407
+ "bob_logit": 6.12109375,
408
+ "bob_probability": 9.459550346946344e-05,
409
+ "gate": 0.0,
410
+ "generated": " able",
411
+ "kl_from_base": -1.646096947638398e-08,
412
+ "router_accepted": false,
413
+ "router_score": 4.078105926513672,
414
+ "selected_index": 0,
415
+ "selected_state": "user"
416
+ }
417
+ },
418
+ "experiment": "active-system-cuda-failure-attribution-v1",
419
+ "extra_prompt_tokens": 0,
420
+ "full_package_uploaded_to_cuda": false,
421
+ "inactive_package_entries": 5,
422
+ "inactive_vram_delta_bytes": 0,
423
+ "latency_seconds": {
424
+ "frozen_base": 0.0174486715994135,
425
+ "historical": 0.019347908600320807,
426
+ "invalidated": 0.01760459740035003,
427
+ "p_cache_only": 0.019043124400195666,
428
+ "p_cache_plus_p_package": 0.019569637600216083,
429
+ "p_package_a_relevant": 0.019282742799987318,
430
+ "p_package_b_relevant": 0.018934362999425504,
431
+ "p_package_context_creative": 0.01985094979972928,
432
+ "p_package_context_technical": 0.019666298399533842,
433
+ "p_package_contradictory_low_confidence": 0.0175312320003286,
434
+ "p_package_irrelevant": 0.01746072020032443,
435
+ "router_disabled": 0.017419308600074145,
436
+ "translator_disabled": 0.01867739240042283,
437
+ "translator_oracle_route": 0.018915273399761644,
438
+ "wrong_entity": 0.019296769200445853,
439
+ "wrong_relation": 0.018960535999940475
440
+ },
441
+ "natural_interaction": {
442
+ "frozen_base": {
443
+ "kl_from_base": 4.2250388077036405e-08,
444
+ "loss": 5.47836971282959,
445
+ "samples": [
446
+ " \"",
447
+ "\n",
448
+ " \""
449
+ ]
450
+ },
451
+ "p_cache_only": {
452
+ "kl_from_base": 4.2250388077036405e-08,
453
+ "loss": 5.47836971282959,
454
+ "samples": [
455
+ " \"",
456
+ "\n",
457
+ " \""
458
+ ]
459
+ },
460
+ "p_cache_plus_p_package": {
461
+ "kl_from_base": 4.2250388077036405e-08,
462
+ "loss": 5.47836971282959,
463
+ "samples": [
464
+ " \"",
465
+ "\n",
466
+ " \""
467
+ ]
468
+ },
469
+ "p_package_contradictory_low_confidence": {
470
+ "kl_from_base": 4.2250388077036405e-08,
471
+ "loss": 5.47836971282959,
472
+ "samples": [
473
+ " \"",
474
+ "\n",
475
+ " \""
476
+ ]
477
+ },
478
+ "p_package_irrelevant": {
479
+ "kl_from_base": 4.2250388077036405e-08,
480
+ "loss": 5.47836971282959,
481
+ "samples": [
482
+ " \"",
483
+ "\n",
484
+ " \""
485
+ ]
486
+ },
487
+ "p_package_relevant": {
488
+ "kl_from_base": 4.2250388077036405e-08,
489
+ "loss": 5.47836971282959,
490
+ "samples": [
491
+ " \"",
492
+ "\n",
493
+ " \""
494
+ ]
495
+ }
496
+ },
497
+ "relevant_personality_chat": {
498
+ "base_target_loss": 8.359650611877441,
499
+ "generated": " Alice",
500
+ "package_target_loss": -0.0,
501
+ "target": "Alice",
502
+ "target_accuracy": 1.0
503
+ },
504
+ "source_tokens_in_recent_kv": 0
505
+ },
506
+ "natural_rp": {
507
+ "base_loss": 5.583366870880127,
508
+ "conditions": {
509
+ "base": {
510
+ "kl": -3.993045538663864e-08,
511
+ "loss": 5.583366870880127,
512
+ "samples": [
513
+ "\n\n\"I'm not",
514
+ "\n\n\"I'm going"
515
+ ]
516
+ },
517
+ "invalidated": {
518
+ "kl": -3.993045538663864e-08,
519
+ "loss": 5.583366870880127,
520
+ "samples": [
521
+ "\n\n\"I'm not",
522
+ "\n\n\"I'm going"
523
+ ]
524
+ },
525
+ "irrelevant": {
526
+ "kl": -3.993045538663864e-08,
527
+ "loss": 5.583366870880127,
528
+ "samples": [
529
+ "\n\n\"I'm not",
530
+ "\n\n\"I'm going"
531
+ ]
532
+ },
533
+ "wrong_entity": {
534
+ "kl": -3.993045538663864e-08,
535
+ "loss": 5.583366870880127,
536
+ "samples": [
537
+ "\n\n\"I'm not",
538
+ "\n\n\"I'm going"
539
+ ]
540
+ }
541
+ },
542
+ "relevant_state_generation_sample": " Alice"
543
+ },
544
+ "personality_counterfactual": {
545
+ "frozen_base": {
546
+ "alice_logit": 7.02734375,
547
+ "alice_probability": 0.00023412609880324453,
548
+ "bob_logit": 6.12109375,
549
+ "bob_probability": 9.459550346946344e-05,
550
+ "gate": 0.0,
551
+ "generated": " able",
552
+ "kl_from_base": -1.646096947638398e-08
553
+ },
554
+ "p_cache_only": {
555
+ "alice_logit": 7.02734375,
556
+ "alice_probability": 0.00023412609880324453,
557
+ "bob_logit": 6.12109375,
558
+ "bob_probability": 9.459550346946344e-05,
559
+ "gate": 0.0,
560
+ "generated": " able",
561
+ "kl_from_base": -1.646096947638398e-08
562
+ },
563
+ "p_cache_plus_p_package": {
564
+ "alice_logit": 40.03125,
565
+ "alice_probability": 1.0,
566
+ "bob_logit": 13.859375,
567
+ "bob_probability": 4.302284223323127e-12,
568
+ "gate": 0.9909488558769226,
569
+ "generated": " Alice",
570
+ "kl_from_base": 8.359650611877441
571
+ },
572
+ "p_package_a_relevant": {
573
+ "alice_logit": 40.03125,
574
+ "alice_probability": 1.0,
575
+ "bob_logit": 13.859375,
576
+ "bob_probability": 4.302284223323127e-12,
577
+ "gate": 0.9909488558769226,
578
+ "generated": " Alice",
579
+ "kl_from_base": 8.359650611877441
580
+ },
581
+ "p_package_b_relevant": {
582
+ "alice_logit": 14.0,
583
+ "alice_probability": 8.776464277548968e-11,
584
+ "bob_logit": 37.15625,
585
+ "bob_probability": 0.9998875856399536,
586
+ "gate": 0.9605370163917542,
587
+ "generated": " Bob",
588
+ "kl_from_base": 9.265372276306152
589
+ },
590
+ "p_package_context_creative": {
591
+ "alice_logit": 14.0,
592
+ "alice_probability": 8.776464277548968e-11,
593
+ "bob_logit": 37.15625,
594
+ "bob_probability": 0.9998875856399536,
595
+ "gate": 0.9605370163917542,
596
+ "generated": " Bob",
597
+ "kl_from_base": 9.265372276306152
598
+ },
599
+ "p_package_context_technical": {
600
+ "alice_logit": 40.03125,
601
+ "alice_probability": 1.0,
602
+ "bob_logit": 13.859375,
603
+ "bob_probability": 4.302284223323127e-12,
604
+ "gate": 0.9909488558769226,
605
+ "generated": " Alice",
606
+ "kl_from_base": 8.359650611877441
607
+ },
608
+ "p_package_contradictory_low_confidence": {
609
+ "alice_logit": 7.02734375,
610
+ "alice_probability": 0.00023412609880324453,
611
+ "bob_logit": 6.12109375,
612
+ "bob_probability": 9.459550346946344e-05,
613
+ "gate": 0.0,
614
+ "generated": " able",
615
+ "kl_from_base": -1.646096947638398e-08
616
+ },
617
+ "p_package_irrelevant": {
618
+ "alice_logit": 7.02734375,
619
+ "alice_probability": 0.00023412609880324453,
620
+ "bob_logit": 6.12109375,
621
+ "bob_probability": 9.459550346946344e-05,
622
+ "gate": 0.0,
623
+ "generated": " able",
624
+ "kl_from_base": -1.646096947638398e-08
625
+ }
626
+ },
627
+ "personality_natural_rp": {
628
+ "frozen_base": {
629
+ "kl_from_base": 4.2250388077036405e-08,
630
+ "loss": 5.47836971282959,
631
+ "samples": [
632
+ " \"",
633
+ "\n",
634
+ " \""
635
+ ]
636
+ },
637
+ "p_cache_only": {
638
+ "kl_from_base": 4.2250388077036405e-08,
639
+ "loss": 5.47836971282959,
640
+ "samples": [
641
+ " \"",
642
+ "\n",
643
+ " \""
644
+ ]
645
+ },
646
+ "p_cache_plus_p_package": {
647
+ "kl_from_base": 4.2250388077036405e-08,
648
+ "loss": 5.47836971282959,
649
+ "samples": [
650
+ " \"",
651
+ "\n",
652
+ " \""
653
+ ]
654
+ },
655
+ "p_package_contradictory_low_confidence": {
656
+ "kl_from_base": 4.2250388077036405e-08,
657
+ "loss": 5.47836971282959,
658
+ "samples": [
659
+ " \"",
660
+ "\n",
661
+ " \""
662
+ ]
663
+ },
664
+ "p_package_irrelevant": {
665
+ "kl_from_base": 4.2250388077036405e-08,
666
+ "loss": 5.47836971282959,
667
+ "samples": [
668
+ " \"",
669
+ "\n",
670
+ " \""
671
+ ]
672
+ },
673
+ "p_package_relevant": {
674
+ "kl_from_base": 4.2250388077036405e-08,
675
+ "loss": 5.47836971282959,
676
+ "samples": [
677
+ " \"",
678
+ "\n",
679
+ " \""
680
+ ]
681
+ }
682
+ },
683
+ "source_artifacts": [
684
+ "artifacts/phase-b-split-translator.json",
685
+ "artifacts/phase-b-personality-package.json"
686
+ ],
687
+ "state_ablations": {
688
+ "full_system_with_preservation": {
689
+ "full_token_accuracy": 1.0,
690
+ "gate_activation": 0.9820089340209961,
691
+ "state_candidate_accuracy": 1.0
692
+ },
693
+ "router_only": {
694
+ "active_vram_overhead_bytes": 11035444,
695
+ "hidden_only_top1_accuracy": 0.0,
696
+ "latency_seconds": 0.10144930460010074,
697
+ "mrr": 1.0,
698
+ "oracle_query_mrr": 1.0,
699
+ "oracle_query_top1_accuracy": 1.0,
700
+ "oracle_query_top4_recall": 1.0,
701
+ "state_generation_accuracy": 1.0,
702
+ "top1_accuracy": 1.0,
703
+ "top2_recall": 1.0,
704
+ "top4_recall": 1.0
705
+ },
706
+ "router_plus_translator_plus_gate": {
707
+ "historical_state_kl": 9.595059236744419e-05,
708
+ "rp_kl": -3.993045538663864e-08,
709
+ "rp_loss": 5.583366870880127,
710
+ "state_candidate_accuracy": 1.0,
711
+ "state_loss": 1.8655489839147776e-05,
712
+ "wrong_state_kl": 9.595059236744419e-05
713
+ },
714
+ "router_plus_translator_without_gate": {
715
+ "state_candidate_accuracy": 1.0
716
+ },
717
+ "translator_only_oracle_routing": {
718
+ "state_candidate_accuracy": 1.0
719
+ }
720
+ },
721
+ "state_counterfactual": {
722
+ "disabled": {
723
+ "alice_logit": 5.515625,
724
+ "alice_probability": 3.538730743457563e-05,
725
+ "bob_logit": 6.2734375,
726
+ "bob_probability": 7.55025030230172e-05,
727
+ "gate": 0.0,
728
+ "generated": " a"
729
+ },
730
+ "p1_silver_alice": {
731
+ "alice_logit": 40.09375,
732
+ "alice_probability": 1.0,
733
+ "bob_logit": 14.3125,
734
+ "bob_probability": 6.3583643558629e-12,
735
+ "gate": 0.9964228272438049,
736
+ "generated": " Alice"
737
+ },
738
+ "p2_silver_bob": {
739
+ "alice_logit": 13.0234375,
740
+ "alice_probability": 4.473376963992637e-12,
741
+ "bob_logit": 39.15625,
742
+ "bob_probability": 0.9999349117279053,
743
+ "gate": 0.9842994213104248,
744
+ "generated": " Bob"
745
+ },
746
+ "p3_gold_alice": {
747
+ "alice_logit": 5.515625,
748
+ "alice_probability": 3.538730743457563e-05,
749
+ "bob_logit": 6.2734375,
750
+ "bob_probability": 7.55025030230172e-05,
751
+ "gate": 0.0,
752
+ "generated": " a"
753
+ },
754
+ "p4_silver_historical": {
755
+ "alice_logit": 5.515625,
756
+ "alice_probability": 3.538730743457563e-05,
757
+ "bob_logit": 6.2734375,
758
+ "bob_probability": 7.55025030230172e-05,
759
+ "gate": 0.0,
760
+ "generated": " a"
761
+ },
762
+ "p4_silver_invalidated": {
763
+ "alice_logit": 5.515625,
764
+ "alice_probability": 3.538730743457563e-05,
765
+ "bob_logit": 6.2734375,
766
+ "bob_probability": 7.55025030230172e-05,
767
+ "gate": 0.0,
768
+ "generated": " a"
769
+ }
770
+ }
771
+ },
772
+ "ppkg_scaling": {
773
+ "100": {
774
+ "build_seconds": 0.005182955999771366,
775
+ "candidate_headers": 4,
776
+ "canonical_conversion_cpu_seconds": 0.0005506600000000361,
777
+ "canonical_conversion_wall_seconds": 0.0005500090010173153,
778
+ "checksum_seconds": 0.0010304470015398692,
779
+ "db_open_seconds": 0.00020484400010900572,
780
+ "disk_bytes": 118784,
781
+ "entries_loaded": 4,
782
+ "inactive_vram_bytes": 0,
783
+ "logical_bytes_read": 2789,
784
+ "python_peak_allocation_bytes": 9086,
785
+ "query_plan": {
786
+ "scope": [
787
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_scope_route (status=? AND scope=?)')"
788
+ ],
789
+ "subject": [
790
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_subject_route (status=? AND subject=?)')"
791
+ ]
792
+ },
793
+ "routing_header_cpu_seconds": 0.002198153000000147,
794
+ "routing_header_wall_seconds": 0.002207458997872891,
795
+ "row_hydration_cpu_seconds": 0.00011678899999978398,
796
+ "row_hydration_wall_seconds": 0.00011649800217128359
797
+ },
798
+ "1000": {
799
+ "build_seconds": 0.030133395001030294,
800
+ "candidate_headers": 33,
801
+ "canonical_conversion_cpu_seconds": 0.0004903580000004126,
802
+ "canonical_conversion_wall_seconds": 0.0004913600023428444,
803
+ "checksum_seconds": 0.008523084998159902,
804
+ "db_open_seconds": 0.0002957940014312044,
805
+ "disk_bytes": 638976,
806
+ "entries_loaded": 4,
807
+ "inactive_vram_bytes": 0,
808
+ "logical_bytes_read": 6855,
809
+ "python_peak_allocation_bytes": 19832,
810
+ "query_plan": {
811
+ "scope": [
812
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_scope_route (status=? AND scope=?)')"
813
+ ],
814
+ "subject": [
815
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_subject_route (status=? AND subject=?)')"
816
+ ]
817
+ },
818
+ "routing_header_cpu_seconds": 0.014248357999999683,
819
+ "routing_header_wall_seconds": 0.014324849998956779,
820
+ "row_hydration_cpu_seconds": 0.00011794099999917762,
821
+ "row_hydration_wall_seconds": 0.0001179409991891589
822
+ },
823
+ "10000": {
824
+ "build_seconds": 0.29831144099807716,
825
+ "candidate_headers": 130,
826
+ "canonical_conversion_cpu_seconds": 0.0005051340000008508,
827
+ "canonical_conversion_wall_seconds": 0.0005099939990031999,
828
+ "checksum_seconds": 0.08329692499683006,
829
+ "db_open_seconds": 0.00028353100060485303,
830
+ "disk_bytes": 5894144,
831
+ "entries_loaded": 4,
832
+ "inactive_vram_bytes": 0,
833
+ "logical_bytes_read": 20616,
834
+ "python_peak_allocation_bytes": 75123,
835
+ "query_plan": {
836
+ "scope": [
837
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_scope_route (status=? AND scope=?)')"
838
+ ],
839
+ "subject": [
840
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_subject_route (status=? AND subject=?)')"
841
+ ]
842
+ },
843
+ "routing_header_cpu_seconds": 0.05690157699999965,
844
+ "routing_header_wall_seconds": 0.05726086499998928,
845
+ "row_hydration_cpu_seconds": 0.00011336200000044983,
846
+ "row_hydration_wall_seconds": 0.00011310199988656677
847
+ },
848
+ "100000": {
849
+ "build_seconds": 3.1510163159982767,
850
+ "candidate_headers": 152,
851
+ "canonical_conversion_cpu_seconds": 0.0004911590000009625,
852
+ "canonical_conversion_wall_seconds": 0.0004947460001858417,
853
+ "checksum_seconds": 0.8238876559989876,
854
+ "db_open_seconds": 0.000549067000974901,
855
+ "disk_bytes": 58720256,
856
+ "entries_loaded": 4,
857
+ "inactive_vram_bytes": 0,
858
+ "logical_bytes_read": 23715,
859
+ "python_peak_allocation_bytes": 87891,
860
+ "query_plan": {
861
+ "scope": [
862
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_scope_route (status=? AND scope=?)')"
863
+ ],
864
+ "subject": [
865
+ "(4, 0, 54, 'SEARCH entries USING COVERING INDEX entry_subject_route (status=? AND subject=?)')"
866
+ ]
867
+ },
868
+ "routing_header_cpu_seconds": 0.06670220700000051,
869
+ "routing_header_wall_seconds": 0.06710040300094988,
870
+ "row_hydration_cpu_seconds": 0.00011785099999883641,
871
+ "row_hydration_wall_seconds": 0.00011752000136766583
872
+ }
873
+ },
874
+ "process_peak_rss_bytes": 1001316352,
875
+ "router_scaling": {
876
+ "attribution": "The pre-audit CanonicalPStore allowed semantic merge across different entity/relation identities. Repeated factorized vectors therefore aliased slots at 256/512 even for oracle queries. Identity-constrained merge removes that storage corruption; the matched post-fix canonical router remains 100% through 1024. Linear scan affects latency but did not cause the accuracy loss.",
877
+ "immutable_pre_fix_baseline": {
878
+ "128": 1.0,
879
+ "256": 0.949999988079071,
880
+ "512": 0.8500000238418579
881
+ },
882
+ "measurements": {
883
+ "1024": {
884
+ "entity_confusions": 0,
885
+ "exact_query_anchor_collisions": 0,
886
+ "failure_examples": [],
887
+ "historical_confusions": 0,
888
+ "latency_seconds": 0.0006750829998054542,
889
+ "mrr": 1.0,
890
+ "relation_confusions": 0,
891
+ "top1_accuracy": 1.0,
892
+ "top4_recall": 1.0
893
+ },
894
+ "128": {
895
+ "entity_confusions": 0,
896
+ "exact_query_anchor_collisions": 0,
897
+ "failure_examples": [],
898
+ "historical_confusions": 0,
899
+ "latency_seconds": 0.0003642720002972055,
900
+ "mrr": 1.0,
901
+ "relation_confusions": 0,
902
+ "top1_accuracy": 1.0,
903
+ "top4_recall": 1.0
904
+ },
905
+ "20": {
906
+ "entity_confusions": 0,
907
+ "exact_query_anchor_collisions": 0,
908
+ "failure_examples": [],
909
+ "historical_confusions": 0,
910
+ "latency_seconds": 0.0003294770031061489,
911
+ "mrr": 1.0,
912
+ "relation_confusions": 0,
913
+ "top1_accuracy": 1.0,
914
+ "top4_recall": 1.0
915
+ },
916
+ "256": {
917
+ "entity_confusions": 0,
918
+ "exact_query_anchor_collisions": 0,
919
+ "failure_examples": [],
920
+ "historical_confusions": 0,
921
+ "latency_seconds": 0.00039848600135883316,
922
+ "mrr": 1.0,
923
+ "relation_confusions": 0,
924
+ "top1_accuracy": 1.0,
925
+ "top4_recall": 1.0
926
+ },
927
+ "4": {
928
+ "entity_confusions": 0,
929
+ "exact_query_anchor_collisions": 0,
930
+ "failure_examples": [],
931
+ "historical_confusions": 0,
932
+ "latency_seconds": 0.00035979299718746915,
933
+ "mrr": 1.0,
934
+ "relation_confusions": 0,
935
+ "top1_accuracy": 1.0,
936
+ "top4_recall": 1.0
937
+ },
938
+ "512": {
939
+ "entity_confusions": 0,
940
+ "exact_query_anchor_collisions": 0,
941
+ "failure_examples": [],
942
+ "historical_confusions": 0,
943
+ "latency_seconds": 0.0004960180012858473,
944
+ "mrr": 1.0,
945
+ "relation_confusions": 0,
946
+ "top1_accuracy": 1.0,
947
+ "top4_recall": 1.0
948
+ },
949
+ "64": {
950
+ "entity_confusions": 0,
951
+ "exact_query_anchor_collisions": 0,
952
+ "failure_examples": [],
953
+ "historical_confusions": 0,
954
+ "latency_seconds": 0.00033151000025100075,
955
+ "mrr": 1.0,
956
+ "relation_confusions": 0,
957
+ "top1_accuracy": 1.0,
958
+ "top4_recall": 1.0
959
+ }
960
+ }
961
+ },
962
+ "timestamp": "2026-08-22T00:00:00+00:00",
963
+ "training_performed": false,
964
+ "translate_profile": {
965
+ "cpu": {
966
+ "parameter_bytes": 10829856,
967
+ "parameter_count": 2707464,
968
+ "translation_and_gate_cpu_seconds": 0.003563432500000019,
969
+ "translation_and_gate_wall_seconds": 0.0006066100013413234
970
+ },
971
+ "cuda": {
972
+ "active_vram_delta_bytes": 8914432,
973
+ "bytes_copied_to_cuda": 164096,
974
+ "copy_wall_seconds": 0.0005022000004828442,
975
+ "peak_vram_delta_bytes": 9441280,
976
+ "translation_and_gate_wall_seconds": 0.0012042837000384072
977
+ }
978
+ }
979
+ }
artifacts/active-system-cuda-attribution.json ADDED
@@ -0,0 +1,387 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "active_memory": {
3
+ "context_creative": {
4
+ "canonical_store_bytes": 1077,
5
+ "loaded_entries": 1,
6
+ "logical_disk_bytes_read": 990,
7
+ "package_disk_bytes": 57344
8
+ },
9
+ "context_technical": {
10
+ "canonical_store_bytes": 1077,
11
+ "loaded_entries": 1,
12
+ "logical_disk_bytes_read": 996,
13
+ "package_disk_bytes": 57344
14
+ },
15
+ "irrelevant": {
16
+ "canonical_store_bytes": 0,
17
+ "loaded_entries": 0,
18
+ "logical_disk_bytes_read": 0,
19
+ "package_disk_bytes": 57344
20
+ },
21
+ "low_confidence": {
22
+ "canonical_store_bytes": 0,
23
+ "loaded_entries": 0,
24
+ "logical_disk_bytes_read": 0,
25
+ "package_disk_bytes": 57344
26
+ },
27
+ "package_a": {
28
+ "canonical_store_bytes": 1077,
29
+ "loaded_entries": 1,
30
+ "logical_disk_bytes_read": 787,
31
+ "package_disk_bytes": 57344
32
+ },
33
+ "package_b": {
34
+ "canonical_store_bytes": 1077,
35
+ "loaded_entries": 1,
36
+ "logical_disk_bytes_read": 783,
37
+ "package_disk_bytes": 57344
38
+ }
39
+ },
40
+ "adapter_training_performed": false,
41
+ "base_model": "pythia-1.4b",
42
+ "base_parameters_with_grad": 0,
43
+ "base_training_performed": false,
44
+ "candidate_accuracy": {
45
+ "context_creative_bob": 1.0,
46
+ "context_technical_alice": 1.0,
47
+ "irrelevant_matches_base": 1.0,
48
+ "package_a_alice": 1.0,
49
+ "package_b_bob": 1.0
50
+ },
51
+ "canonical_probe": {
52
+ "canonical_decode_accuracy": {
53
+ "entity": 1.0,
54
+ "metadata": 1.0,
55
+ "relation": 1.0,
56
+ "value": 1.0
57
+ },
58
+ "hard_negative_accuracy": {
59
+ "historical": 1.0,
60
+ "wrong_entity": 0.97265625,
61
+ "wrong_value": 1.0
62
+ },
63
+ "held_out_combinations": 256,
64
+ "p_only_state_recovery": 0.97265625,
65
+ "permutation_stability": 1.0,
66
+ "permutations_per_combination": 8,
67
+ "slot_width": 512,
68
+ "total_held_out_combinations": 519,
69
+ "train_combinations": 2073,
70
+ "training_loss_first": 7.440117835998535,
71
+ "training_loss_last": 0.04114125296473503
72
+ },
73
+ "canonical_representation_reconstructed_from_fixed_existing_recipe": true,
74
+ "causal": {
75
+ "frozen_base": {
76
+ "active_state_vram_bytes": 0,
77
+ "alice_logit": 7.02734375,
78
+ "alice_probability": 0.00023412609880324453,
79
+ "bob_logit": 6.12109375,
80
+ "bob_probability": 9.459550346946344e-05,
81
+ "gate": 0.0,
82
+ "generated": " able",
83
+ "kl_from_base": -1.646096947638398e-08,
84
+ "router_accepted": false,
85
+ "router_score": null,
86
+ "selected_index": null,
87
+ "selected_state": null
88
+ },
89
+ "historical": {
90
+ "active_state_vram_bytes": 1077,
91
+ "alice_logit": 7.02734375,
92
+ "alice_probability": 0.00023412609880324453,
93
+ "bob_logit": 6.12109375,
94
+ "bob_probability": 9.459550346946344e-05,
95
+ "gate": 0.0,
96
+ "generated": " able",
97
+ "kl_from_base": -1.646096947638398e-08,
98
+ "router_accepted": false,
99
+ "router_score": 5.400981426239014,
100
+ "selected_index": 0,
101
+ "selected_state": "user"
102
+ },
103
+ "invalidated": {
104
+ "active_state_vram_bytes": 1077,
105
+ "alice_logit": 7.02734375,
106
+ "alice_probability": 0.00023412609880324453,
107
+ "bob_logit": 6.12109375,
108
+ "bob_probability": 9.459550346946344e-05,
109
+ "gate": 0.0,
110
+ "generated": " able",
111
+ "kl_from_base": -1.646096947638398e-08,
112
+ "router_accepted": false,
113
+ "router_score": null,
114
+ "selected_index": null,
115
+ "selected_state": null
116
+ },
117
+ "p_cache_only": {
118
+ "active_state_vram_bytes": 1077,
119
+ "alice_logit": 7.02734375,
120
+ "alice_probability": 0.00023412609880324453,
121
+ "bob_logit": 6.12109375,
122
+ "bob_probability": 9.459550346946344e-05,
123
+ "gate": 0.0,
124
+ "generated": " able",
125
+ "kl_from_base": -1.646096947638398e-08,
126
+ "router_accepted": false,
127
+ "router_score": -0.30040669441223145,
128
+ "selected_index": 0,
129
+ "selected_state": "current-task"
130
+ },
131
+ "p_cache_plus_p_package": {
132
+ "active_state_vram_bytes": 2154,
133
+ "alice_logit": 40.03125,
134
+ "alice_probability": 1.0,
135
+ "bob_logit": 13.859375,
136
+ "bob_probability": 4.302284223323127e-12,
137
+ "gate": 0.9909488558769226,
138
+ "generated": " Alice",
139
+ "kl_from_base": 8.359650611877441,
140
+ "router_accepted": true,
141
+ "router_score": 5.590433597564697,
142
+ "selected_index": 1,
143
+ "selected_state": "user"
144
+ },
145
+ "p_package_a_relevant": {
146
+ "active_state_vram_bytes": 1077,
147
+ "alice_logit": 40.03125,
148
+ "alice_probability": 1.0,
149
+ "bob_logit": 13.859375,
150
+ "bob_probability": 4.302284223323127e-12,
151
+ "gate": 0.9909488558769226,
152
+ "generated": " Alice",
153
+ "kl_from_base": 8.359650611877441,
154
+ "router_accepted": true,
155
+ "router_score": 5.590433597564697,
156
+ "selected_index": 0,
157
+ "selected_state": "user"
158
+ },
159
+ "p_package_b_relevant": {
160
+ "active_state_vram_bytes": 1077,
161
+ "alice_logit": 14.0,
162
+ "alice_probability": 8.776464277548968e-11,
163
+ "bob_logit": 37.15625,
164
+ "bob_probability": 0.9998875856399536,
165
+ "gate": 0.9605370163917542,
166
+ "generated": " Bob",
167
+ "kl_from_base": 9.265372276306152,
168
+ "router_accepted": true,
169
+ "router_score": 5.590433597564697,
170
+ "selected_index": 0,
171
+ "selected_state": "user"
172
+ },
173
+ "p_package_context_creative": {
174
+ "active_state_vram_bytes": 1077,
175
+ "alice_logit": 14.0,
176
+ "alice_probability": 8.776464277548968e-11,
177
+ "bob_logit": 37.15625,
178
+ "bob_probability": 0.9998875856399536,
179
+ "gate": 0.9605370163917542,
180
+ "generated": " Bob",
181
+ "kl_from_base": 9.265372276306152,
182
+ "router_accepted": true,
183
+ "router_score": 5.590433597564697,
184
+ "selected_index": 0,
185
+ "selected_state": "user"
186
+ },
187
+ "p_package_context_technical": {
188
+ "active_state_vram_bytes": 1077,
189
+ "alice_logit": 40.03125,
190
+ "alice_probability": 1.0,
191
+ "bob_logit": 13.859375,
192
+ "bob_probability": 4.302284223323127e-12,
193
+ "gate": 0.9909488558769226,
194
+ "generated": " Alice",
195
+ "kl_from_base": 8.359650611877441,
196
+ "router_accepted": true,
197
+ "router_score": 5.590433597564697,
198
+ "selected_index": 0,
199
+ "selected_state": "user"
200
+ },
201
+ "p_package_contradictory_low_confidence": {
202
+ "active_state_vram_bytes": 0,
203
+ "alice_logit": 7.02734375,
204
+ "alice_probability": 0.00023412609880324453,
205
+ "bob_logit": 6.12109375,
206
+ "bob_probability": 9.459550346946344e-05,
207
+ "gate": 0.0,
208
+ "generated": " able",
209
+ "kl_from_base": -1.646096947638398e-08,
210
+ "router_accepted": false,
211
+ "router_score": null,
212
+ "selected_index": null,
213
+ "selected_state": null
214
+ },
215
+ "p_package_irrelevant": {
216
+ "active_state_vram_bytes": 0,
217
+ "alice_logit": 7.02734375,
218
+ "alice_probability": 0.00023412609880324453,
219
+ "bob_logit": 6.12109375,
220
+ "bob_probability": 9.459550346946344e-05,
221
+ "gate": 0.0,
222
+ "generated": " able",
223
+ "kl_from_base": -1.646096947638398e-08,
224
+ "router_accepted": false,
225
+ "router_score": null,
226
+ "selected_index": null,
227
+ "selected_state": null
228
+ },
229
+ "router_disabled": {
230
+ "active_state_vram_bytes": 0,
231
+ "alice_logit": 7.02734375,
232
+ "alice_probability": 0.00023412609880324453,
233
+ "bob_logit": 6.12109375,
234
+ "bob_probability": 9.459550346946344e-05,
235
+ "gate": 0.0,
236
+ "generated": " able",
237
+ "kl_from_base": -1.646096947638398e-08,
238
+ "router_accepted": false,
239
+ "router_score": null,
240
+ "selected_index": null,
241
+ "selected_state": null
242
+ },
243
+ "translator_disabled": {
244
+ "active_state_vram_bytes": 1077,
245
+ "alice_logit": 7.02734375,
246
+ "alice_probability": 0.00023412609880324453,
247
+ "bob_logit": 6.12109375,
248
+ "bob_probability": 9.459550346946344e-05,
249
+ "gate": 0.0,
250
+ "generated": " able",
251
+ "kl_from_base": -1.646096947638398e-08,
252
+ "router_accepted": true,
253
+ "router_score": 5.590433597564697,
254
+ "selected_index": 0,
255
+ "selected_state": "user"
256
+ },
257
+ "translator_oracle_route": {
258
+ "active_state_vram_bytes": 1077,
259
+ "alice_logit": 40.03125,
260
+ "alice_probability": 1.0,
261
+ "bob_logit": 13.859375,
262
+ "bob_probability": 4.302284223323127e-12,
263
+ "gate": 0.9909488558769226,
264
+ "generated": " Alice",
265
+ "kl_from_base": 8.359650611877441,
266
+ "router_accepted": true,
267
+ "router_score": 5.590433597564697,
268
+ "selected_index": 0,
269
+ "selected_state": "user"
270
+ },
271
+ "wrong_entity": {
272
+ "active_state_vram_bytes": 1077,
273
+ "alice_logit": 7.02734375,
274
+ "alice_probability": 0.00023412609880324453,
275
+ "bob_logit": 6.12109375,
276
+ "bob_probability": 9.459550346946344e-05,
277
+ "gate": 0.0,
278
+ "generated": " able",
279
+ "kl_from_base": -1.646096947638398e-08,
280
+ "router_accepted": false,
281
+ "router_score": -0.30040669441223145,
282
+ "selected_index": 0,
283
+ "selected_state": "someone-else"
284
+ },
285
+ "wrong_relation": {
286
+ "active_state_vram_bytes": 1077,
287
+ "alice_logit": 7.02734375,
288
+ "alice_probability": 0.00023412609880324453,
289
+ "bob_logit": 6.12109375,
290
+ "bob_probability": 9.459550346946344e-05,
291
+ "gate": 0.0,
292
+ "generated": " able",
293
+ "kl_from_base": -1.646096947638398e-08,
294
+ "router_accepted": false,
295
+ "router_score": 4.078105926513672,
296
+ "selected_index": 0,
297
+ "selected_state": "user"
298
+ }
299
+ },
300
+ "experiment": "active-system-cuda-failure-attribution-v1",
301
+ "extra_prompt_tokens": 0,
302
+ "full_package_uploaded_to_cuda": false,
303
+ "inactive_package_entries": 5,
304
+ "inactive_vram_delta_bytes": 0,
305
+ "latency_seconds": {
306
+ "frozen_base": 0.0174486715994135,
307
+ "historical": 0.019347908600320807,
308
+ "invalidated": 0.01760459740035003,
309
+ "p_cache_only": 0.019043124400195666,
310
+ "p_cache_plus_p_package": 0.019569637600216083,
311
+ "p_package_a_relevant": 0.019282742799987318,
312
+ "p_package_b_relevant": 0.018934362999425504,
313
+ "p_package_context_creative": 0.01985094979972928,
314
+ "p_package_context_technical": 0.019666298399533842,
315
+ "p_package_contradictory_low_confidence": 0.0175312320003286,
316
+ "p_package_irrelevant": 0.01746072020032443,
317
+ "router_disabled": 0.017419308600074145,
318
+ "translator_disabled": 0.01867739240042283,
319
+ "translator_oracle_route": 0.018915273399761644,
320
+ "wrong_entity": 0.019296769200445853,
321
+ "wrong_relation": 0.018960535999940475
322
+ },
323
+ "natural_interaction": {
324
+ "frozen_base": {
325
+ "kl_from_base": 4.2250388077036405e-08,
326
+ "loss": 5.47836971282959,
327
+ "samples": [
328
+ " \"",
329
+ "\n",
330
+ " \""
331
+ ]
332
+ },
333
+ "p_cache_only": {
334
+ "kl_from_base": 4.2250388077036405e-08,
335
+ "loss": 5.47836971282959,
336
+ "samples": [
337
+ " \"",
338
+ "\n",
339
+ " \""
340
+ ]
341
+ },
342
+ "p_cache_plus_p_package": {
343
+ "kl_from_base": 4.2250388077036405e-08,
344
+ "loss": 5.47836971282959,
345
+ "samples": [
346
+ " \"",
347
+ "\n",
348
+ " \""
349
+ ]
350
+ },
351
+ "p_package_contradictory_low_confidence": {
352
+ "kl_from_base": 4.2250388077036405e-08,
353
+ "loss": 5.47836971282959,
354
+ "samples": [
355
+ " \"",
356
+ "\n",
357
+ " \""
358
+ ]
359
+ },
360
+ "p_package_irrelevant": {
361
+ "kl_from_base": 4.2250388077036405e-08,
362
+ "loss": 5.47836971282959,
363
+ "samples": [
364
+ " \"",
365
+ "\n",
366
+ " \""
367
+ ]
368
+ },
369
+ "p_package_relevant": {
370
+ "kl_from_base": 4.2250388077036405e-08,
371
+ "loss": 5.47836971282959,
372
+ "samples": [
373
+ " \"",
374
+ "\n",
375
+ " \""
376
+ ]
377
+ }
378
+ },
379
+ "relevant_personality_chat": {
380
+ "base_target_loss": 8.359650611877441,
381
+ "generated": " Alice",
382
+ "package_target_loss": -0.0,
383
+ "target": "Alice",
384
+ "target_accuracy": 1.0
385
+ },
386
+ "source_tokens_in_recent_kv": 0
387
+ }
artifacts/canonical-p-v1.router ADDED
Binary file (592 Bytes). View file
 
artifacts/debug-actions-profile.json ADDED
@@ -0,0 +1,245 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "experiment": "planner-cache-debug-actions-profile-v1",
3
+ "page_limit": 100,
4
+ "personality": {
5
+ "100": {
6
+ "active_entries": 100,
7
+ "after_bounded": {
8
+ "action": {
9
+ "cpu_seconds": 0.009221641999999974,
10
+ "peak_python_allocation_bytes": 196984,
11
+ "wall_seconds": 0.009249514012481086
12
+ },
13
+ "hydrated_entries": 100,
14
+ "json_serialization": {
15
+ "cpu_seconds": 0.003703828000000353,
16
+ "peak_python_allocation_bytes": 121302,
17
+ "wall_seconds": 0.003694181010359898
18
+ },
19
+ "response_bytes": 60318,
20
+ "total_active": 100,
21
+ "truncated": false
22
+ },
23
+ "before_unbounded": {
24
+ "action": {
25
+ "cpu_seconds": 0.009142955000000175,
26
+ "peak_python_allocation_bytes": 196591,
27
+ "wall_seconds": 0.009165266004856676
28
+ },
29
+ "hydrated_entries": 100,
30
+ "json_serialization": {
31
+ "cpu_seconds": 0.003326453000000118,
32
+ "peak_python_allocation_bytes": 121106,
33
+ "wall_seconds": 0.003322666001622565
34
+ },
35
+ "response_bytes": 60220
36
+ }
37
+ },
38
+ "1000": {
39
+ "active_entries": 1000,
40
+ "after_bounded": {
41
+ "action": {
42
+ "cpu_seconds": 0.009862894999999927,
43
+ "peak_python_allocation_bytes": 196288,
44
+ "wall_seconds": 0.009891455003526062
45
+ },
46
+ "hydrated_entries": 100,
47
+ "json_serialization": {
48
+ "cpu_seconds": 0.003532476999999812,
49
+ "peak_python_allocation_bytes": 121302,
50
+ "wall_seconds": 0.0035344719944987446
51
+ },
52
+ "response_bytes": 60318,
53
+ "total_active": 1000,
54
+ "truncated": true
55
+ },
56
+ "before_unbounded": {
57
+ "action": {
58
+ "cpu_seconds": 0.09285407999999995,
59
+ "peak_python_allocation_bytes": 1928216,
60
+ "wall_seconds": 0.09317578599439003
61
+ },
62
+ "hydrated_entries": 1000,
63
+ "json_serialization": {
64
+ "cpu_seconds": 0.03305002400000001,
65
+ "peak_python_allocation_bytes": 1211130,
66
+ "wall_seconds": 0.033163794010761194
67
+ },
68
+ "response_bytes": 605232
69
+ }
70
+ },
71
+ "10000": {
72
+ "active_entries": 10000,
73
+ "after_bounded": {
74
+ "action": {
75
+ "cpu_seconds": 0.010486288000000066,
76
+ "peak_python_allocation_bytes": 196288,
77
+ "wall_seconds": 0.010522566008148715
78
+ },
79
+ "hydrated_entries": 100,
80
+ "json_serialization": {
81
+ "cpu_seconds": 0.003585478999999836,
82
+ "peak_python_allocation_bytes": 121304,
83
+ "wall_seconds": 0.00358573799894657
84
+ },
85
+ "response_bytes": 60319,
86
+ "total_active": 10000,
87
+ "truncated": true
88
+ },
89
+ "before_unbounded": {
90
+ "action": {
91
+ "cpu_seconds": 0.9330532409999996,
92
+ "peak_python_allocation_bytes": 17663949,
93
+ "wall_seconds": 0.9362227259989595
94
+ },
95
+ "hydrated_entries": 10000,
96
+ "json_serialization": {
97
+ "cpu_seconds": 0.34413546300000064,
98
+ "peak_python_allocation_bytes": 12161028,
99
+ "wall_seconds": 0.3450379890127806
100
+ },
101
+ "response_bytes": 6080181
102
+ }
103
+ },
104
+ "100000": {
105
+ "active_entries": 100000,
106
+ "after_bounded": {
107
+ "action": {
108
+ "cpu_seconds": 0.021668488999999624,
109
+ "peak_python_allocation_bytes": 196288,
110
+ "wall_seconds": 0.02177674999984447
111
+ },
112
+ "hydrated_entries": 100,
113
+ "json_serialization": {
114
+ "cpu_seconds": 0.0037721280000013735,
115
+ "peak_python_allocation_bytes": 121306,
116
+ "wall_seconds": 0.003769953007576987
117
+ },
118
+ "response_bytes": 60320,
119
+ "total_active": 100000,
120
+ "truncated": true
121
+ },
122
+ "before_unbounded": {
123
+ "action": {
124
+ "cpu_seconds": 9.748923195,
125
+ "peak_python_allocation_bytes": 173110748,
126
+ "wall_seconds": 9.787373771992861
127
+ },
128
+ "hydrated_entries": 100000,
129
+ "json_serialization": {
130
+ "cpu_seconds": 3.3711310019999985,
131
+ "peak_python_allocation_bytes": 122015586,
132
+ "wall_seconds": 3.384944927005563
133
+ },
134
+ "response_bytes": 61007460
135
+ }
136
+ }
137
+ },
138
+ "personality_query_plans": {
139
+ "active_count": [
140
+ "SEARCH entries USING COVERING INDEX entry_relationship_route (status=?)"
141
+ ],
142
+ "bounded_page": [
143
+ "SEARCH entries USING INDEX entry_relationship_route (status=?)",
144
+ "USE TEMP B-TREE FOR ORDER BY"
145
+ ]
146
+ },
147
+ "state": {
148
+ "0": {
149
+ "active_entries": 0,
150
+ "bounded_by_configured_capacity": true,
151
+ "configured_slots": 1,
152
+ "json_serialization": {
153
+ "cpu_seconds": 6.78270000000758e-05,
154
+ "peak_python_allocation_bytes": 1259,
155
+ "wall_seconds": 5.7437995565123856e-05
156
+ },
157
+ "response_bytes": 2,
158
+ "snapshot": {
159
+ "cpu_seconds": 0.00010548699999990419,
160
+ "peak_python_allocation_bytes": 432,
161
+ "wall_seconds": 8.957799582276493e-05
162
+ }
163
+ },
164
+ "1024": {
165
+ "active_entries": 1024,
166
+ "bounded_by_configured_capacity": true,
167
+ "configured_slots": 1024,
168
+ "json_serialization": {
169
+ "cpu_seconds": 0.030256003999999947,
170
+ "peak_python_allocation_bytes": 643302,
171
+ "wall_seconds": 0.030321376005304046
172
+ },
173
+ "response_bytes": 321318,
174
+ "snapshot": {
175
+ "cpu_seconds": 0.04200101300000014,
176
+ "peak_python_allocation_bytes": 716728,
177
+ "wall_seconds": 0.042143614002270624
178
+ }
179
+ },
180
+ "128": {
181
+ "active_entries": 128,
182
+ "bounded_by_configured_capacity": true,
183
+ "configured_slots": 128,
184
+ "json_serialization": {
185
+ "cpu_seconds": 0.0038881549999998377,
186
+ "peak_python_allocation_bytes": 80572,
187
+ "wall_seconds": 0.0038865509995957837
188
+ },
189
+ "response_bytes": 39953,
190
+ "snapshot": {
191
+ "cpu_seconds": 0.005286958999999758,
192
+ "peak_python_allocation_bytes": 86776,
193
+ "wall_seconds": 0.005294073998811655
194
+ }
195
+ },
196
+ "256": {
197
+ "active_entries": 256,
198
+ "bounded_by_configured_capacity": true,
199
+ "configured_slots": 256,
200
+ "json_serialization": {
201
+ "cpu_seconds": 0.0072936459999999315,
202
+ "peak_python_allocation_bytes": 160958,
203
+ "wall_seconds": 0.00729949600645341
204
+ },
205
+ "response_bytes": 80146,
206
+ "snapshot": {
207
+ "cpu_seconds": 0.010555682000000122,
208
+ "peak_python_allocation_bytes": 173272,
209
+ "wall_seconds": 0.010585684009129182
210
+ }
211
+ },
212
+ "512": {
213
+ "active_entries": 512,
214
+ "bounded_by_configured_capacity": true,
215
+ "configured_slots": 512,
216
+ "json_serialization": {
217
+ "cpu_seconds": 0.013979924000000032,
218
+ "peak_python_allocation_bytes": 321704,
219
+ "wall_seconds": 0.014006733996211551
220
+ },
221
+ "response_bytes": 160519,
222
+ "snapshot": {
223
+ "cpu_seconds": 0.021038871000000015,
224
+ "peak_python_allocation_bytes": 354200,
225
+ "wall_seconds": 0.02109747999929823
226
+ }
227
+ },
228
+ "64": {
229
+ "active_entries": 64,
230
+ "bounded_by_configured_capacity": true,
231
+ "configured_slots": 64,
232
+ "json_serialization": {
233
+ "cpu_seconds": 0.0018557219999997265,
234
+ "peak_python_allocation_bytes": 40532,
235
+ "wall_seconds": 0.0018496399861760437
236
+ },
237
+ "response_bytes": 19933,
238
+ "snapshot": {
239
+ "cpu_seconds": 0.0027572279999996674,
240
+ "peak_python_allocation_bytes": 43576,
241
+ "wall_seconds": 0.0027569780068006366
242
+ }
243
+ }
244
+ }
245
+ }
artifacts/gemma-native-prompt-equivalence.json ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "assertions": {
3
+ "inactive_ltl_has_no_output_control": true,
4
+ "message_structure_exact": true,
5
+ "rendered_prompt_exact": true,
6
+ "token_ids_exact": true
7
+ },
8
+ "conditions": {
9
+ "ltl_logit_bias_present": false,
10
+ "message_structure_equal": true,
11
+ "p_active": false
12
+ },
13
+ "format": "planner-cache-native-prompt-equivalence-v1",
14
+ "gateway_inactive": {
15
+ "message_sha256": "46f75bef337eb9fcb9cbebb77c8836fa48bc0c1c8de68d0ec1aa24631b912e4d",
16
+ "prompt_sha256": "0f9bac487f601d8f2c33c9097be424b7adc2813930f98993bd72c9f6ae03777b",
17
+ "token_count": 33,
18
+ "token_ids_sha256": "0ace5a54d9cc7305143599c4414212a1946494231473b590fad117e6105d5dcb"
19
+ },
20
+ "llama_cpp_version": "version: 10276 (6ea215d17)\nbuilt with GNU 16.1.1 for Linux x86_64",
21
+ "model": "${GEMMA_MODEL}",
22
+ "model_sha256": "a4c4177f9fd7e3f56522675afb742f079a53f9226195b7db5e9888c872f053da",
23
+ "raw": {
24
+ "message_sha256": "46f75bef337eb9fcb9cbebb77c8836fa48bc0c1c8de68d0ec1aa24631b912e4d",
25
+ "prompt_sha256": "0f9bac487f601d8f2c33c9097be424b7adc2813930f98993bd72c9f6ae03777b",
26
+ "token_count": 33,
27
+ "token_ids_sha256": "0ace5a54d9cc7305143599c4414212a1946494231473b590fad117e6105d5dcb"
28
+ }
29
+ }
artifacts/gemma4-e4b-q8-causal.json ADDED
@@ -0,0 +1,463 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "adapter": {
3
+ "active_control_buffer_bytes": 419840,
4
+ "adapter_parameter_count": 3073,
5
+ "base_model_optimization": false,
6
+ "bytes_copied_per_relevant_activation": 10240,
7
+ "canonical_probe": {
8
+ "canonical_decode_accuracy": {
9
+ "entity": 1.0,
10
+ "metadata": 1.0,
11
+ "relation": 1.0,
12
+ "value": 1.0
13
+ },
14
+ "hard_negative_accuracy": {
15
+ "historical": 1.0,
16
+ "wrong_entity": 0.97265625,
17
+ "wrong_value": 1.0
18
+ },
19
+ "held_out_combinations": 256,
20
+ "p_only_state_recovery": 0.97265625,
21
+ "permutation_stability": 1.0,
22
+ "permutations_per_combination": 8,
23
+ "slot_width": 512,
24
+ "total_held_out_combinations": 519,
25
+ "train_combinations": 2073,
26
+ "training_loss_first": 7.440117835998535,
27
+ "training_loss_last": 0.04114125296473503
28
+ },
29
+ "config": {
30
+ "architecture": "canonical_scalar_to_control_vector_v1",
31
+ "attachment_layer": 41,
32
+ "canonical_protocol": "pcm-canonical-p-v1",
33
+ "canonical_width": 512,
34
+ "format": "pcm-llama-gguf-translate-v1",
35
+ "llama_build": "version: 10276 (6ea215d17)\nbuilt with GNU 16.1.1 for Linux x86_64",
36
+ "model_architecture": "gemma4",
37
+ "model_hidden_width": 2560,
38
+ "model_id": "Gemma-4-E4B-Uncensored-HauhauCS-Aggressive",
39
+ "model_layer_count": 42,
40
+ "model_sha256": "a4c4177f9fd7e3f56522675afb742f079a53f9226195b7db5e9888c872f053da",
41
+ "runtime": "llama.cpp-control-vector",
42
+ "supported_value_ids": [
43
+ 0,
44
+ 1
45
+ ],
46
+ "target_token_ids": [
47
+ 32858,
48
+ 15943
49
+ ]
50
+ },
51
+ "extra_prompt_tokens": 0,
52
+ "fit_observed_strengths": {
53
+ "Alice": 1.999999761581421,
54
+ "Bob": -5.000000953674316
55
+ },
56
+ "fit_target_strengths": {
57
+ "Alice": 2.0,
58
+ "Bob": -5.0
59
+ },
60
+ "gate_basis": "universal canonical route acceptance plus supported canonical value",
61
+ "inactive_vram_bytes": 0,
62
+ "model_hidden_query_projection": "not available through llama-server and not claimed",
63
+ "path": "${REPOSITORY_ROOT}/artifacts/gemma4-e4b-q8-llama.translate",
64
+ "recent_kv_source_token_count": 0,
65
+ "sha256": "2a25f1641f796d520250d0367dd3b546579a2050c5ef84e2cfff7e598d299785",
66
+ "size_bytes": 13356,
67
+ "training_method": "analytic minimum-norm affine fit to frozen token-row direction"
68
+ },
69
+ "assertions": {
70
+ "alice_generation": true,
71
+ "alice_logit_lift": true,
72
+ "all_inactive_paths_exact": true,
73
+ "bob_generation": true,
74
+ "bob_logit_lift": true,
75
+ "historical_rejected": true,
76
+ "invalidated_rejected": true,
77
+ "natural_irrelevant_exact": true,
78
+ "server_alice_generation": true,
79
+ "server_bob_generation": true,
80
+ "wrong_entity_rejected": true,
81
+ "wrong_relation_rejected": true
82
+ },
83
+ "conditions": {
84
+ "correct_alice": {
85
+ "alice_logit": 26.0793858,
86
+ "alice_probability": 0.389850411,
87
+ "bob_logit": 0.909999311,
88
+ "bob_probability": 4.57059089e-12,
89
+ "gate": 1.0,
90
+ "generated": " Alice",
91
+ "generated_token_id": 32858,
92
+ "kl_from_base": 0.604321331,
93
+ "latency_ms": 320.229877,
94
+ "max_abs_logit_difference_from_base": 11.1606493,
95
+ "router_accepted": true,
96
+ "router_score": 5.590437412261963,
97
+ "scale": 1.99999976,
98
+ "selected_state": {
99
+ "label": "silver key",
100
+ "metadata_id": 0,
101
+ "relation_id": 0,
102
+ "value_id": 0
103
+ },
104
+ "strength": 1.999999761581421
105
+ },
106
+ "correct_bob": {
107
+ "alice_logit": 7.2261529,
108
+ "alice_probability": 2.57553064e-09,
109
+ "bob_logit": 26.6650352,
110
+ "bob_probability": 0.712961469,
111
+ "gate": 1.0,
112
+ "generated": " Bob",
113
+ "generated_token_id": 15943,
114
+ "kl_from_base": 9.63846737,
115
+ "latency_ms": 312.696353,
116
+ "max_abs_logit_difference_from_base": 23.8088799,
117
+ "router_accepted": true,
118
+ "router_score": 5.590437412261963,
119
+ "scale": -5.00000048,
120
+ "selected_state": {
121
+ "label": "silver key",
122
+ "metadata_id": 0,
123
+ "relation_id": 0,
124
+ "value_id": 1
125
+ },
126
+ "strength": -5.000000476837158
127
+ },
128
+ "historical": {
129
+ "alice_logit": 23.1685543,
130
+ "alice_probability": 0.0447660284,
131
+ "bob_logit": 12.0706482,
132
+ "bob_probability": 6.77936756e-07,
133
+ "gate": 0.0,
134
+ "generated": " the",
135
+ "generated_token_id": 506,
136
+ "kl_from_base": 0,
137
+ "latency_ms": 404.050531,
138
+ "max_abs_logit_difference_from_base": 0,
139
+ "router_accepted": false,
140
+ "router_score": 5.40098237991333,
141
+ "scale": 0,
142
+ "selected_state": {
143
+ "label": "silver key",
144
+ "metadata_id": 2,
145
+ "relation_id": 0,
146
+ "value_id": 0
147
+ },
148
+ "strength": 0.0
149
+ },
150
+ "invalidated": {
151
+ "alice_logit": 23.1685543,
152
+ "alice_probability": 0.0447660284,
153
+ "bob_logit": 12.0706482,
154
+ "bob_probability": 6.77936756e-07,
155
+ "gate": 0.0,
156
+ "generated": " the",
157
+ "generated_token_id": 506,
158
+ "kl_from_base": 0,
159
+ "latency_ms": 338.130937,
160
+ "max_abs_logit_difference_from_base": 0,
161
+ "router_accepted": false,
162
+ "router_score": null,
163
+ "scale": 0,
164
+ "selected_state": null,
165
+ "strength": 0.0
166
+ },
167
+ "p_disabled": {
168
+ "alice_logit": 23.1685543,
169
+ "alice_probability": 0.0447660284,
170
+ "bob_logit": 12.0706482,
171
+ "bob_probability": 6.77936756e-07,
172
+ "gate": 0.0,
173
+ "generated": " the",
174
+ "generated_token_id": 506,
175
+ "kl_from_base": 0,
176
+ "latency_ms": 354.148533,
177
+ "max_abs_logit_difference_from_base": 0,
178
+ "router_accepted": false,
179
+ "router_score": null,
180
+ "scale": 0,
181
+ "selected_state": null,
182
+ "strength": 0.0
183
+ },
184
+ "router_disabled": {
185
+ "alice_logit": 23.1685543,
186
+ "alice_probability": 0.0447660284,
187
+ "bob_logit": 12.0706482,
188
+ "bob_probability": 6.77936756e-07,
189
+ "gate": 0.0,
190
+ "generated": " the",
191
+ "generated_token_id": 506,
192
+ "kl_from_base": 0,
193
+ "latency_ms": 385.683319,
194
+ "max_abs_logit_difference_from_base": 0,
195
+ "router_accepted": false,
196
+ "router_score": null,
197
+ "scale": 0,
198
+ "selected_state": null,
199
+ "strength": 0.0
200
+ },
201
+ "translator_disabled": {
202
+ "alice_logit": 23.1685543,
203
+ "alice_probability": 0.0447660284,
204
+ "bob_logit": 12.0706482,
205
+ "bob_probability": 6.77936756e-07,
206
+ "gate": 0.0,
207
+ "generated": " the",
208
+ "generated_token_id": 506,
209
+ "kl_from_base": 0,
210
+ "latency_ms": 335.948864,
211
+ "max_abs_logit_difference_from_base": 0,
212
+ "router_accepted": true,
213
+ "router_score": 5.590437412261963,
214
+ "scale": 0,
215
+ "selected_state": {
216
+ "label": "silver key",
217
+ "metadata_id": 0,
218
+ "relation_id": 0,
219
+ "value_id": 0
220
+ },
221
+ "strength": 0.0
222
+ },
223
+ "wrong_entity": {
224
+ "alice_logit": 23.1685543,
225
+ "alice_probability": 0.0447660284,
226
+ "bob_logit": 12.0706482,
227
+ "bob_probability": 6.77936756e-07,
228
+ "gate": 0.0,
229
+ "generated": " the",
230
+ "generated_token_id": 506,
231
+ "kl_from_base": 0,
232
+ "latency_ms": 321.541691,
233
+ "max_abs_logit_difference_from_base": 0,
234
+ "router_accepted": false,
235
+ "router_score": -0.3507542610168457,
236
+ "scale": 0,
237
+ "selected_state": {
238
+ "label": "gold key",
239
+ "metadata_id": 0,
240
+ "relation_id": 0,
241
+ "value_id": 0
242
+ },
243
+ "strength": 0.0
244
+ },
245
+ "wrong_relation": {
246
+ "alice_logit": 23.1685543,
247
+ "alice_probability": 0.0447660284,
248
+ "bob_logit": 12.0706482,
249
+ "bob_probability": 6.77936756e-07,
250
+ "gate": 0.0,
251
+ "generated": " the",
252
+ "generated_token_id": 506,
253
+ "kl_from_base": 0,
254
+ "latency_ms": 328.731662,
255
+ "max_abs_logit_difference_from_base": 0,
256
+ "router_accepted": false,
257
+ "router_score": 4.078108310699463,
258
+ "scale": 0,
259
+ "selected_state": {
260
+ "label": "silver key",
261
+ "metadata_id": 0,
262
+ "relation_id": 1,
263
+ "value_id": 0
264
+ },
265
+ "strength": 0.0
266
+ }
267
+ },
268
+ "experiment": "gemma4-e4b-q8-llama-translate-causal-v1",
269
+ "llama_cpp": {
270
+ "cli": "${LOCAL_PATH}",
271
+ "control_vector_generator_failure": "stock generator asserted because Gemma4 did not expose n_layers minus one callback tensors",
272
+ "root": "${LOCAL_PATH}",
273
+ "runtime_attachment": "public llama_set_adapter_cvec API and llama-server control-vector path",
274
+ "server": "${LOCAL_PATH}",
275
+ "version": "version: 10276 (6ea215d17)\nbuilt with GNU 16.1.1 for Linux x86_64"
276
+ },
277
+ "model": {
278
+ "architecture": "gemma4",
279
+ "base_modified": false,
280
+ "block_count": 42,
281
+ "context_length": 131072,
282
+ "embedding_length": 2560,
283
+ "file_type": 7,
284
+ "name": "Gemma-4-E4B-Uncensored-HauhauCS-Aggressive",
285
+ "path": "${GEMMA_MODEL}",
286
+ "quantized_gguf": true,
287
+ "sha256": "a4c4177f9fd7e3f56522675afb742f079a53f9226195b7db5e9888c872f053da",
288
+ "sha256_seconds": 5.7932635489996755,
289
+ "size_bytes": 8133226464,
290
+ "size_label": "7.5B",
291
+ "tensor_count": 720
292
+ },
293
+ "natural_rp": {
294
+ "conditions": [
295
+ {
296
+ "alice_logit": 21.079689,
297
+ "alice_probability": 0.000247380297,
298
+ "bob_logit": 19.7254486,
299
+ "bob_probability": 6.38595666e-05,
300
+ "generated": " \"",
301
+ "generated_token_id": 623,
302
+ "kl_from_base": 0,
303
+ "latency_ms": 598.812609,
304
+ "max_abs_logit_difference_from_base": 0,
305
+ "scale": 0
306
+ },
307
+ {
308
+ "alice_logit": 21.079689,
309
+ "alice_probability": 0.000247380297,
310
+ "bob_logit": 19.7254486,
311
+ "bob_probability": 6.38595666e-05,
312
+ "generated": " \"",
313
+ "generated_token_id": 623,
314
+ "kl_from_base": 0,
315
+ "latency_ms": 511.115942,
316
+ "max_abs_logit_difference_from_base": 0,
317
+ "scale": 0
318
+ },
319
+ {
320
+ "alice_logit": 21.079689,
321
+ "alice_probability": 0.000247380297,
322
+ "bob_logit": 19.7254486,
323
+ "bob_probability": 6.38595666e-05,
324
+ "generated": " \"",
325
+ "generated_token_id": 623,
326
+ "kl_from_base": 0,
327
+ "latency_ms": 504.167794,
328
+ "max_abs_logit_difference_from_base": 0,
329
+ "scale": 0
330
+ }
331
+ ],
332
+ "prompt": "Rain tapped the observatory windows while the old astronomer adjusted the brass lens. Guest:"
333
+ },
334
+ "prompt": "The silver key currently belongs to",
335
+ "prompt_tokens": 7,
336
+ "runner": {
337
+ "causal_command": [
338
+ "${TEMP_DIR}/planner-cache-run/llama_cpp_causal_runner",
339
+ "--model",
340
+ "${GEMMA_MODEL}",
341
+ "--direction",
342
+ "${TEMP_DIR}/planner-cache-run/gemma-direction.f32",
343
+ "--prompt",
344
+ "The silver key currently belongs to",
345
+ "--scales",
346
+ "0.0,1.999999761581421,-5.000000476837158,0.0,0.0,0.0,0.0,0.0,0.0",
347
+ "--layer",
348
+ "41",
349
+ "--alice-token",
350
+ "32858",
351
+ "--bob-token",
352
+ "15943",
353
+ "--gpu-layers",
354
+ "12"
355
+ ],
356
+ "compilation": {
357
+ "binary_sha256": "ac1683efac4abd95c583633ac77490abbaea860814f745b05931dc1c762e25b7",
358
+ "command": [
359
+ "c++",
360
+ "-std=c++17",
361
+ "-O2",
362
+ "${REPOSITORY_ROOT}/benchmarks/llama_cpp_causal_runner.cpp",
363
+ "-I${LOCAL_PATH}",
364
+ "-I${LOCAL_PATH}",
365
+ "${LOCAL_PATH}",
366
+ "${LOCAL_PATH}",
367
+ "-Wl,-rpath,${LOCAL_PATH}",
368
+ "-o",
369
+ "${TEMP_DIR}/planner-cache-run/llama_cpp_causal_runner"
370
+ ],
371
+ "compile_seconds": 1.2689489720032725,
372
+ "source_sha256": "2beaeaf65c50304ec4dca9321eb2fe542a3f3edbe9084fa293f518b3c1cd6e8f"
373
+ },
374
+ "natural_command": [
375
+ "${TEMP_DIR}/planner-cache-run/llama_cpp_causal_runner",
376
+ "--model",
377
+ "${GEMMA_MODEL}",
378
+ "--direction",
379
+ "${TEMP_DIR}/planner-cache-run/gemma-direction.f32",
380
+ "--prompt",
381
+ "Rain tapped the observatory windows while the old astronomer adjusted the brass lens. Guest:",
382
+ "--scales",
383
+ "0.0,0.0,0.0",
384
+ "--layer",
385
+ "41",
386
+ "--alice-token",
387
+ "32858",
388
+ "--bob-token",
389
+ "15943",
390
+ "--gpu-layers",
391
+ "12"
392
+ ]
393
+ },
394
+ "server_verification": {
395
+ "alice": {
396
+ "command": [
397
+ "${LOCAL_PATH}",
398
+ "--model",
399
+ "${GEMMA_MODEL}",
400
+ "--host",
401
+ "127.0.0.1",
402
+ "--port",
403
+ "46083",
404
+ "--ctx-size",
405
+ "512",
406
+ "--parallel",
407
+ "1",
408
+ "--threads",
409
+ "8",
410
+ "--threads-batch",
411
+ "8",
412
+ "--gpu-layers",
413
+ "12",
414
+ "--no-warmup",
415
+ "--no-context-shift",
416
+ "--log-disable",
417
+ "--control-vector-scaled",
418
+ "${TEMP_DIR}/planner-cache-run/gemma-direction.gguf:1.999999761581421",
419
+ "--control-vector-layer-range",
420
+ "41",
421
+ "41"
422
+ ],
423
+ "content": " Alice",
424
+ "elapsed_seconds": 3.6577627030019357,
425
+ "prompt_ms": 432.977,
426
+ "prompt_tokens": 7
427
+ },
428
+ "bob": {
429
+ "command": [
430
+ "${LOCAL_PATH}",
431
+ "--model",
432
+ "${GEMMA_MODEL}",
433
+ "--host",
434
+ "127.0.0.1",
435
+ "--port",
436
+ "34955",
437
+ "--ctx-size",
438
+ "512",
439
+ "--parallel",
440
+ "1",
441
+ "--threads",
442
+ "8",
443
+ "--threads-batch",
444
+ "8",
445
+ "--gpu-layers",
446
+ "12",
447
+ "--no-warmup",
448
+ "--no-context-shift",
449
+ "--log-disable",
450
+ "--control-vector-scaled",
451
+ "${TEMP_DIR}/planner-cache-run/gemma-direction.gguf:-5.000000476837158",
452
+ "--control-vector-layer-range",
453
+ "41",
454
+ "41"
455
+ ],
456
+ "content": " Bob",
457
+ "elapsed_seconds": 3.2694168429989077,
458
+ "prompt_ms": 418.441,
459
+ "prompt_tokens": 7
460
+ }
461
+ },
462
+ "status": "passed"
463
+ }
artifacts/gemma4-e4b-q8-llama.ltl ADDED
@@ -0,0 +1 @@
 
 
1
+ {"format":"planner-cache-ltl-v1","payload":{"adapter_class":"ltl","canonical_protocol":"pcm-canonical-p-v1","control":"direct_adaptive_logit_bias","format":"planner-cache-ltl-v1","logit_margin":0.01,"model_architecture":"gemma4","model_id":"Gemma-4-E4B-Uncensored-HauhauCS-Aggressive","model_sha256":"a4c4177f9fd7e3f56522675afb742f079a53f9226195b7db5e9888c872f053da","parameter_count":0,"runtime":"llama.cpp","runtime_version":"version: 10276 (6ea215d17)\nbuilt with GNU 16.1.1 for Linux x86_64","support_level":"lexical/output","tokenizer_bundle_sha256":"b3033e12af0ed503d8b80390c79d02d6bd9bc372e93e377cc1dd6514b7cd21d6"},"payload_sha256":"945c6d3c7f3a3668653f21733ed2b2c901c70efd314696114b70d9cf6c8c4dfa"}
artifacts/personality-proof.ppkg ADDED
Binary file (61.4 kB). View file
 
artifacts/phase-b-factorized-representation.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "representation": {
3
+ "layout": {"entity": 128, "relation": 128, "value": 128, "metadata": 128, "projected_slot_width": 512},
4
+ "training_loss": [7.440117835998535, 0.04114125296473503],
5
+ "train_combinations": 2073,
6
+ "held_out_combinations_total": 519,
7
+ "held_out_combinations_probed": 256,
8
+ "p_only_state_recovery": 0.97265625,
9
+ "permutation_stability": 1.0,
10
+ "permutations_per_combination": 8,
11
+ "canonical_decode_accuracy": {"entity": 1.0, "relation": 1.0, "value": 1.0, "metadata": 1.0},
12
+ "hard_negative_accuracy": {"wrong_value": 1.0, "wrong_entity": 0.97265625, "historical": 1.0}
13
+ },
14
+ "pythia": {
15
+ "shared": {"steps": 128, "held_out_combinations": 24, "hard_negative_slots_per_state": 3, "slot_order_randomized": true, "source_tokens_in_recent_kv": 0, "held_out_rp": true},
16
+ "final_cross_attention": {"training_loss": [10.956916809082031, 4.057961463928223], "held_out_composition_accuracy": 0.1666666716337204, "rp_language_loss_p_disabled": 5.733096599578857, "rp_language_loss_p_enabled": 11.490976333618164, "rp_kl_with_p_to_base": 7.918457984924316},
17
+ "upper_4_with_preservation": {"training_loss": [10.956916809082031, 4.487305641174316], "held_out_composition_accuracy": 0.0416666679084301, "rp_language_loss_p_disabled": 5.733096599578857, "rp_language_loss_p_enabled": 5.834649562835693, "rp_kl_with_p_to_base": 0.015018677338957787}
18
+ },
19
+ "diagnosis": "P-only representation passes; exact Pythia consumption/generalization remains the blocking interface."
20
+ }
artifacts/phase-b-personality-package.json ADDED
@@ -0,0 +1,369 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "base_weights_modified": false,
3
+ "canonical_representation_probe": {
4
+ "canonical_decode_accuracy": {
5
+ "entity": 1.0,
6
+ "metadata": 1.0,
7
+ "relation": 1.0,
8
+ "value": 1.0
9
+ },
10
+ "hard_negative_accuracy": {
11
+ "historical": 1.0,
12
+ "wrong_entity": 0.97265625,
13
+ "wrong_value": 1.0
14
+ },
15
+ "held_out_combinations": 256,
16
+ "p_only_state_recovery": 0.97265625,
17
+ "permutation_stability": 1.0,
18
+ "permutations_per_combination": 8,
19
+ "slot_width": 512,
20
+ "total_held_out_combinations": 519,
21
+ "train_combinations": 2073,
22
+ "training_loss_first": 7.440117835998535,
23
+ "training_loss_last": 0.04114125296473503
24
+ },
25
+ "completion_failures": [],
26
+ "completion_gate": "passed",
27
+ "cuda_translate": {
28
+ "active_memory": {
29
+ "context_creative": {
30
+ "canonical_store_bytes": 1077,
31
+ "loaded_entries": 1,
32
+ "logical_disk_bytes_read": 990,
33
+ "package_disk_bytes": 45056
34
+ },
35
+ "context_technical": {
36
+ "canonical_store_bytes": 1077,
37
+ "loaded_entries": 1,
38
+ "logical_disk_bytes_read": 996,
39
+ "package_disk_bytes": 45056
40
+ },
41
+ "irrelevant": {
42
+ "canonical_store_bytes": 0,
43
+ "loaded_entries": 0,
44
+ "logical_disk_bytes_read": 189,
45
+ "package_disk_bytes": 45056
46
+ },
47
+ "low_confidence": {
48
+ "canonical_store_bytes": 0,
49
+ "loaded_entries": 0,
50
+ "logical_disk_bytes_read": 0,
51
+ "package_disk_bytes": 45056
52
+ },
53
+ "package_a": {
54
+ "canonical_store_bytes": 1077,
55
+ "loaded_entries": 1,
56
+ "logical_disk_bytes_read": 787,
57
+ "package_disk_bytes": 45056
58
+ },
59
+ "package_b": {
60
+ "canonical_store_bytes": 1077,
61
+ "loaded_entries": 1,
62
+ "logical_disk_bytes_read": 783,
63
+ "package_disk_bytes": 45056
64
+ }
65
+ },
66
+ "base_parameters_with_grad": 0,
67
+ "candidate_accuracy": {
68
+ "context_creative_bob": 1.0,
69
+ "context_technical_alice": 1.0,
70
+ "irrelevant_matches_base": 1.0,
71
+ "package_a_alice": 1.0,
72
+ "package_b_bob": 1.0
73
+ },
74
+ "causal": {
75
+ "frozen_base": {
76
+ "alice_logit": 7.02734375,
77
+ "alice_probability": 0.00023412609880324453,
78
+ "bob_logit": 6.12109375,
79
+ "bob_probability": 9.459550346946344e-05,
80
+ "gate": 0.0,
81
+ "generated": " able",
82
+ "kl_from_base": -1.646096947638398e-08
83
+ },
84
+ "p_cache_only": {
85
+ "alice_logit": 7.02734375,
86
+ "alice_probability": 0.00023412609880324453,
87
+ "bob_logit": 6.12109375,
88
+ "bob_probability": 9.459550346946344e-05,
89
+ "gate": 0.0,
90
+ "generated": " able",
91
+ "kl_from_base": -1.646096947638398e-08
92
+ },
93
+ "p_cache_plus_p_package": {
94
+ "alice_logit": 40.03125,
95
+ "alice_probability": 1.0,
96
+ "bob_logit": 13.859375,
97
+ "bob_probability": 4.302284223323127e-12,
98
+ "gate": 0.9909488558769226,
99
+ "generated": " Alice",
100
+ "kl_from_base": 8.359650611877441
101
+ },
102
+ "p_package_a_relevant": {
103
+ "alice_logit": 40.03125,
104
+ "alice_probability": 1.0,
105
+ "bob_logit": 13.859375,
106
+ "bob_probability": 4.302284223323127e-12,
107
+ "gate": 0.9909488558769226,
108
+ "generated": " Alice",
109
+ "kl_from_base": 8.359650611877441
110
+ },
111
+ "p_package_b_relevant": {
112
+ "alice_logit": 14.0,
113
+ "alice_probability": 8.776464277548968e-11,
114
+ "bob_logit": 37.15625,
115
+ "bob_probability": 0.9998875856399536,
116
+ "gate": 0.9605370163917542,
117
+ "generated": " Bob",
118
+ "kl_from_base": 9.265372276306152
119
+ },
120
+ "p_package_context_creative": {
121
+ "alice_logit": 14.0,
122
+ "alice_probability": 8.776464277548968e-11,
123
+ "bob_logit": 37.15625,
124
+ "bob_probability": 0.9998875856399536,
125
+ "gate": 0.9605370163917542,
126
+ "generated": " Bob",
127
+ "kl_from_base": 9.265372276306152
128
+ },
129
+ "p_package_context_technical": {
130
+ "alice_logit": 40.03125,
131
+ "alice_probability": 1.0,
132
+ "bob_logit": 13.859375,
133
+ "bob_probability": 4.302284223323127e-12,
134
+ "gate": 0.9909488558769226,
135
+ "generated": " Alice",
136
+ "kl_from_base": 8.359650611877441
137
+ },
138
+ "p_package_contradictory_low_confidence": {
139
+ "alice_logit": 7.02734375,
140
+ "alice_probability": 0.00023412609880324453,
141
+ "bob_logit": 6.12109375,
142
+ "bob_probability": 9.459550346946344e-05,
143
+ "gate": 0.0,
144
+ "generated": " able",
145
+ "kl_from_base": -1.646096947638398e-08
146
+ },
147
+ "p_package_irrelevant": {
148
+ "alice_logit": 7.02734375,
149
+ "alice_probability": 0.00023412609880324453,
150
+ "bob_logit": 6.12109375,
151
+ "bob_probability": 9.459550346946344e-05,
152
+ "gate": 0.0,
153
+ "generated": " able",
154
+ "kl_from_base": -1.646096947638398e-08
155
+ }
156
+ },
157
+ "extra_prompt_tokens": 0,
158
+ "full_package_uploaded_to_cuda": false,
159
+ "inactive_package_entries": 5,
160
+ "inactive_vram_delta_bytes": 0,
161
+ "latency_seconds": {
162
+ "frozen_base": 0.0175060088004102,
163
+ "p_cache_only": 0.019222700600221288,
164
+ "p_cache_plus_p_package": 0.01935694159983541,
165
+ "p_package_a_relevant": 0.019251526400330475,
166
+ "p_package_b_relevant": 0.019145489999937128,
167
+ "p_package_context_creative": 0.019227325199608458,
168
+ "p_package_context_technical": 0.01928819700042368,
169
+ "p_package_contradictory_low_confidence": 0.0174450127997261,
170
+ "p_package_irrelevant": 0.017540659599762875
171
+ },
172
+ "natural_interaction": {
173
+ "frozen_base": {
174
+ "kl_from_base": 4.2250388077036405e-08,
175
+ "loss": 5.47836971282959,
176
+ "samples": [
177
+ " \"",
178
+ "\n",
179
+ " \""
180
+ ]
181
+ },
182
+ "p_cache_only": {
183
+ "kl_from_base": 4.2250388077036405e-08,
184
+ "loss": 5.47836971282959,
185
+ "samples": [
186
+ " \"",
187
+ "\n",
188
+ " \""
189
+ ]
190
+ },
191
+ "p_cache_plus_p_package": {
192
+ "kl_from_base": 4.2250388077036405e-08,
193
+ "loss": 5.47836971282959,
194
+ "samples": [
195
+ " \"",
196
+ "\n",
197
+ " \""
198
+ ]
199
+ },
200
+ "p_package_contradictory_low_confidence": {
201
+ "kl_from_base": 4.2250388077036405e-08,
202
+ "loss": 5.47836971282959,
203
+ "samples": [
204
+ " \"",
205
+ "\n",
206
+ " \""
207
+ ]
208
+ },
209
+ "p_package_irrelevant": {
210
+ "kl_from_base": 4.2250388077036405e-08,
211
+ "loss": 5.47836971282959,
212
+ "samples": [
213
+ " \"",
214
+ "\n",
215
+ " \""
216
+ ]
217
+ },
218
+ "p_package_relevant": {
219
+ "kl_from_base": 4.2250388077036405e-08,
220
+ "loss": 5.47836971282959,
221
+ "samples": [
222
+ " \"",
223
+ "\n",
224
+ " \""
225
+ ]
226
+ }
227
+ },
228
+ "relevant_personality_chat": {
229
+ "base_target_loss": 8.359650611877441,
230
+ "generated": " Alice",
231
+ "package_target_loss": -0.0,
232
+ "target": "Alice",
233
+ "target_accuracy": 1.0
234
+ },
235
+ "source_tokens_in_recent_kv": 0
236
+ },
237
+ "deterministic_serialization": {
238
+ "byte_identical": true,
239
+ "first_sha256": "faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9",
240
+ "second_sha256": "faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9"
241
+ },
242
+ "durability": {
243
+ "active_entries_after_restart": 5,
244
+ "checksum_valid": true,
245
+ "cold_load_seconds": 0.0012688639981206506,
246
+ "conversation_replay_required": false
247
+ },
248
+ "experiment": "phase-b-personality-package-v1",
249
+ "format": "pcm-personality-package-v1",
250
+ "growth": {
251
+ "100": {
252
+ "active_canonical_bytes": 4308,
253
+ "cold_checksum_validation_seconds": 0.005407546999776969,
254
+ "disk_size_bytes": 81920,
255
+ "full_package_loaded": false,
256
+ "inactive_vram_bytes": 0,
257
+ "loaded_entries": 4,
258
+ "logical_bytes_read": 16070,
259
+ "lookup_latency_seconds": 0.07422141599818133,
260
+ "python_ram_peak_delta_bytes": 66370
261
+ },
262
+ "1000": {
263
+ "active_canonical_bytes": 4308,
264
+ "cold_checksum_validation_seconds": 0.04806955000094604,
265
+ "disk_size_bytes": 421888,
266
+ "full_package_loaded": false,
267
+ "inactive_vram_bytes": 0,
268
+ "loaded_entries": 4,
269
+ "logical_bytes_read": 73991,
270
+ "lookup_latency_seconds": 0.39593972700095037,
271
+ "python_ram_peak_delta_bytes": 348920
272
+ },
273
+ "10000": {
274
+ "active_canonical_bytes": 4308,
275
+ "cold_checksum_validation_seconds": 0.47560709200115525,
276
+ "disk_size_bytes": 3805184,
277
+ "full_package_loaded": false,
278
+ "inactive_vram_bytes": 0,
279
+ "loaded_entries": 4,
280
+ "logical_bytes_read": 73991,
281
+ "lookup_latency_seconds": 0.4038081879989477,
282
+ "python_ram_peak_delta_bytes": 296020
283
+ },
284
+ "100000": {
285
+ "active_canonical_bytes": 4308,
286
+ "cold_checksum_validation_seconds": 4.705669751998357,
287
+ "disk_size_bytes": 37863424,
288
+ "full_package_loaded": false,
289
+ "inactive_vram_bytes": 0,
290
+ "loaded_entries": 4,
291
+ "logical_bytes_read": 73991,
292
+ "lookup_latency_seconds": 0.44106237400046666,
293
+ "python_ram_peak_delta_bytes": 296016
294
+ }
295
+ },
296
+ "lora_used": false,
297
+ "mechanical": {
298
+ "change_count": 7,
299
+ "connected_cross_context_score": 2.586527310885154,
300
+ "connectivity_outscores_narrow": true,
301
+ "creative_context_correct": true,
302
+ "entry_count": 6,
303
+ "explicit_correction_promoted": true,
304
+ "irrelevant_loaded_entries": 0,
305
+ "narrow_context_score": 1.8000000000000003,
306
+ "old_conclusion_status": "superseded",
307
+ "one_event_promoted": false,
308
+ "package_size_bytes": 61440,
309
+ "persona_entry_id": "personality_6a0ee4fede21e1b53f3a8c4e",
310
+ "relationship_context_correct": true,
311
+ "relevance_accuracy": 1.0,
312
+ "repeated_entry": {
313
+ "confidence": 0.5567010309278351,
314
+ "context_diversity": 3,
315
+ "contradicting_evidence_ids": [
316
+ "weak-0"
317
+ ],
318
+ "created_at": "2026-06-03T00:00:00+00:00",
319
+ "entry_type": "interaction_style",
320
+ "evidence_count": 3,
321
+ "extension": {},
322
+ "id": "personality_a4d8044a0a392a1518bf7554",
323
+ "importance": 0.5,
324
+ "last_reinforced": "2026-06-03T00:00:00+00:00",
325
+ "relation": "response_style",
326
+ "relationship": null,
327
+ "scope": "global",
328
+ "source_authority": "single_observed_behavior",
329
+ "status": "active",
330
+ "strength": 0.7036804069636988,
331
+ "subject": "user",
332
+ "supporting_evidence_ids": [
333
+ "repeat-0",
334
+ "repeat-1",
335
+ "repeat-2"
336
+ ],
337
+ "updated_at": "2026-06-03T00:00:00+00:00",
338
+ "value": "concise"
339
+ },
340
+ "repeated_promoted": true,
341
+ "semantic_checksum": "abdbd3dbe3f8ee05fe761ee1625e3a8f8a4ab5259458c4d18210a15fe0b52309",
342
+ "technical_context_correct": true,
343
+ "top_k": {
344
+ "1": {
345
+ "latency_seconds": 0.0023069649978424422,
346
+ "loaded_entries": 1,
347
+ "logical_bytes_read": 1303,
348
+ "target_recall": 1.0
349
+ },
350
+ "4": {
351
+ "latency_seconds": 0.002416219998849556,
352
+ "loaded_entries": 4,
353
+ "logical_bytes_read": 3451,
354
+ "target_recall": 1.0
355
+ },
356
+ "8": {
357
+ "latency_seconds": 0.0025850960009847768,
358
+ "loaded_entries": 4,
359
+ "logical_bytes_read": 3451,
360
+ "target_recall": 1.0
361
+ }
362
+ },
363
+ "unsupported_model_claim_promoted": false
364
+ },
365
+ "package_file_sha256": "faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9",
366
+ "package_path": "artifacts/personality-proof.ppkg",
367
+ "phase_c_started": false,
368
+ "protocol": "pcm-canonical-personality-v1"
369
+ }
artifacts/phase-b-split-translator.json ADDED
@@ -0,0 +1,910 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "canonical_p_probe": {
3
+ "canonical_decode_accuracy": {
4
+ "entity": 1.0,
5
+ "metadata": 1.0,
6
+ "relation": 1.0,
7
+ "value": 1.0
8
+ },
9
+ "hard_negative_accuracy": {
10
+ "historical": 1.0,
11
+ "wrong_entity": 0.97265625,
12
+ "wrong_value": 1.0
13
+ },
14
+ "held_out_combinations": 256,
15
+ "p_only_state_recovery": 0.97265625,
16
+ "permutation_stability": 1.0,
17
+ "permutations_per_combination": 8,
18
+ "slot_width": 512,
19
+ "total_held_out_combinations": 519,
20
+ "train_combinations": 2073,
21
+ "training_loss_first": 7.440117835998535,
22
+ "training_loss_last": 0.04114125296473503
23
+ },
24
+ "completion_gate": "passed",
25
+ "diagnostic_variant": "final_layer",
26
+ "experiment": {
27
+ "base_frozen": true,
28
+ "causal_steps": 256,
29
+ "lora_used": false,
30
+ "phase_c_started": false,
31
+ "query_steps": 400,
32
+ "router_steps": 400,
33
+ "seed": 307,
34
+ "source_tokens_in_recent_kv": 0,
35
+ "value_steps": 400
36
+ },
37
+ "immutable_rejected_translator_baseline": {
38
+ "final_layer": {
39
+ "exact_generated_token_accuracy": 0.45000001788139343,
40
+ "global_20_fact_retrieval": 0.6500000357627869,
41
+ "p_to_model_value_accuracy": 1.0,
42
+ "rp_loss": 4.656857490539551,
43
+ "unseen_name_accuracy": 0.25,
44
+ "wrong_entity_gate": 0.5172024965286255
45
+ },
46
+ "upper_2_layers": {
47
+ "exact_generated_token_accuracy": 0.550000011920929,
48
+ "global_20_fact_retrieval": 0.6500000357627869,
49
+ "p_to_model_value_accuracy": 1.0,
50
+ "rp_loss": 6.086124897003174,
51
+ "unseen_name_accuracy": 0.0,
52
+ "wrong_entity_gate": 0.6912492662668228
53
+ },
54
+ "upper_4_layers": {
55
+ "exact_generated_token_accuracy": 0.6500000357627869,
56
+ "global_20_fact_retrieval": 0.699999988079071,
57
+ "p_to_model_value_accuracy": 1.0,
58
+ "rp_loss": 5.704916477203369,
59
+ "unseen_name_accuracy": 0.25,
60
+ "wrong_entity_gate": 0.7020304128527641
61
+ }
62
+ },
63
+ "layer_sweep": {
64
+ "final_layer": {
65
+ "ablations": {
66
+ "full_system_with_preservation": {
67
+ "full_token_accuracy": 1.0,
68
+ "gate_activation": 0.9820089340209961,
69
+ "state_candidate_accuracy": 1.0
70
+ },
71
+ "router_only": {
72
+ "active_vram_overhead_bytes": 11035444,
73
+ "hidden_only_top1_accuracy": 0.0,
74
+ "latency_seconds": 0.10144930460010074,
75
+ "mrr": 1.0,
76
+ "oracle_query_mrr": 1.0,
77
+ "oracle_query_top1_accuracy": 1.0,
78
+ "oracle_query_top4_recall": 1.0,
79
+ "state_generation_accuracy": 1.0,
80
+ "top1_accuracy": 1.0,
81
+ "top2_recall": 1.0,
82
+ "top4_recall": 1.0
83
+ },
84
+ "router_plus_translator_plus_gate": {
85
+ "historical_state_kl": 9.595059236744419e-05,
86
+ "rp_kl": -3.993045538663864e-08,
87
+ "rp_loss": 5.583366870880127,
88
+ "state_candidate_accuracy": 1.0,
89
+ "state_loss": 1.8655489839147776e-05,
90
+ "wrong_state_kl": 9.595059236744419e-05
91
+ },
92
+ "router_plus_translator_without_gate": {
93
+ "state_candidate_accuracy": 1.0
94
+ },
95
+ "translator_only_oracle_routing": {
96
+ "state_candidate_accuracy": 1.0
97
+ }
98
+ },
99
+ "attachment_count": 1,
100
+ "attachment_layers": [
101
+ 23
102
+ ],
103
+ "base_parameters_with_grad": 0,
104
+ "causal_training_loss_first_last": [
105
+ 9.884638786315918,
106
+ 5.081248218630208e-06
107
+ ],
108
+ "counterfactual": {
109
+ "disabled": {
110
+ "alice_logit": 5.515625,
111
+ "alice_probability": 3.538730743457563e-05,
112
+ "bob_logit": 6.2734375,
113
+ "bob_probability": 7.55025030230172e-05,
114
+ "gate": 0.0,
115
+ "generated": " a"
116
+ },
117
+ "p1_silver_alice": {
118
+ "alice_logit": 40.09375,
119
+ "alice_probability": 1.0,
120
+ "bob_logit": 14.3125,
121
+ "bob_probability": 6.3583643558629e-12,
122
+ "gate": 0.9964228272438049,
123
+ "generated": " Alice"
124
+ },
125
+ "p2_silver_bob": {
126
+ "alice_logit": 13.0234375,
127
+ "alice_probability": 4.473376963992637e-12,
128
+ "bob_logit": 39.15625,
129
+ "bob_probability": 0.9999349117279053,
130
+ "gate": 0.9842994213104248,
131
+ "generated": " Bob"
132
+ },
133
+ "p3_gold_alice": {
134
+ "alice_logit": 5.515625,
135
+ "alice_probability": 3.538730743457563e-05,
136
+ "bob_logit": 6.2734375,
137
+ "bob_probability": 7.55025030230172e-05,
138
+ "gate": 0.0,
139
+ "generated": " a"
140
+ },
141
+ "p4_silver_historical": {
142
+ "alice_logit": 5.515625,
143
+ "alice_probability": 3.538730743457563e-05,
144
+ "bob_logit": 6.2734375,
145
+ "bob_probability": 7.55025030230172e-05,
146
+ "gate": 0.0,
147
+ "generated": " a"
148
+ },
149
+ "p4_silver_invalidated": {
150
+ "alice_logit": 5.515625,
151
+ "alice_probability": 3.538730743457563e-05,
152
+ "bob_logit": 6.2734375,
153
+ "bob_probability": 7.55025030230172e-05,
154
+ "gate": 0.0,
155
+ "generated": " a"
156
+ }
157
+ },
158
+ "extra_prompt_tokens": 0,
159
+ "invalidated_logit_difference": 0.0,
160
+ "mutation_chain": {
161
+ "invalidated_max_logit_difference": 0.0,
162
+ "latest_state_accuracy": 1.0,
163
+ "source_tokens_in_recent_kv": 0
164
+ },
165
+ "natural_rp": {
166
+ "base_loss": 5.583366870880127,
167
+ "conditions": {
168
+ "base": {
169
+ "kl": -3.993045538663864e-08,
170
+ "loss": 5.583366870880127,
171
+ "samples": [
172
+ "\n\n\"I'm not",
173
+ "\n\n\"I'm going"
174
+ ]
175
+ },
176
+ "invalidated": {
177
+ "kl": -3.993045538663864e-08,
178
+ "loss": 5.583366870880127,
179
+ "samples": [
180
+ "\n\n\"I'm not",
181
+ "\n\n\"I'm going"
182
+ ]
183
+ },
184
+ "irrelevant": {
185
+ "kl": -3.993045538663864e-08,
186
+ "loss": 5.583366870880127,
187
+ "samples": [
188
+ "\n\n\"I'm not",
189
+ "\n\n\"I'm going"
190
+ ]
191
+ },
192
+ "wrong_entity": {
193
+ "kl": -3.993045538663864e-08,
194
+ "loss": 5.583366870880127,
195
+ "samples": [
196
+ "\n\n\"I'm not",
197
+ "\n\n\"I'm going"
198
+ ]
199
+ }
200
+ },
201
+ "relevant_state_generation_sample": " Alice"
202
+ },
203
+ "package_parameters": 2707464,
204
+ "package_path": "artifacts/pythia-1.4b-split-final_layer.translate",
205
+ "package_roundtrip_max_difference": 0.0,
206
+ "query_projector": {
207
+ "byte_surface_anchor_approach": {
208
+ "entity_accuracy": 1.0,
209
+ "entity_cosine": 1.0,
210
+ "metadata_accuracy": 1.0,
211
+ "oracle_slot_assignments": 0,
212
+ "relation_accuracy": 1.0,
213
+ "tokenizer_independent": true
214
+ },
215
+ "frozen_lexical_anchor_approach": {
216
+ "entity_accuracy": 0.78125,
217
+ "entity_cosine": 0.7632350921630859
218
+ },
219
+ "heldout_names": 64,
220
+ "hidden_to_byte_reconstruction_ablation": {
221
+ "entity_accuracy": 0.125,
222
+ "entity_cosine": 0.2643434405326843,
223
+ "metadata_accuracy": 1.0,
224
+ "relation_accuracy": 1.0
225
+ },
226
+ "loss_first_last": [
227
+ 6.364231586456299,
228
+ 0.23614102602005005
229
+ ],
230
+ "training_names": 256
231
+ },
232
+ "router": {
233
+ "acceptance_threshold": 5.495710372924805,
234
+ "calibration_balanced_accuracy": 1.0,
235
+ "hard_negative_metrics": {
236
+ "historical_false_positive_rate": 0.0,
237
+ "invalidated_false_positive_rate": 0.0,
238
+ "irrelevant_false_positive_rate": 0.0,
239
+ "top1_accuracy": 1.0,
240
+ "wrong_entity_false_positive_rate": 0.0,
241
+ "wrong_relation_false_positive_rate": 0.0
242
+ },
243
+ "loss_first_last": [
244
+ 7.388868808746338,
245
+ 1.7992397546768188
246
+ ],
247
+ "model_hidden_dimensions": 0,
248
+ "scaling": {
249
+ "128": {
250
+ "active_vram_overhead_bytes": 11035444,
251
+ "hidden_only_top1_accuracy": 0.0,
252
+ "latency_seconds": 0.10144930460010074,
253
+ "mrr": 1.0,
254
+ "oracle_query_mrr": 1.0,
255
+ "oracle_query_top1_accuracy": 1.0,
256
+ "oracle_query_top4_recall": 1.0,
257
+ "state_generation_accuracy": 1.0,
258
+ "top1_accuracy": 1.0,
259
+ "top2_recall": 1.0,
260
+ "top4_recall": 1.0
261
+ },
262
+ "20": {
263
+ "active_vram_overhead_bytes": 10861996,
264
+ "hidden_only_top1_accuracy": 0.20000000298023224,
265
+ "latency_seconds": 0.08669143320003059,
266
+ "mrr": 1.0,
267
+ "oracle_query_mrr": 1.0,
268
+ "oracle_query_top1_accuracy": 1.0,
269
+ "oracle_query_top4_recall": 1.0,
270
+ "state_generation_accuracy": 1.0,
271
+ "top1_accuracy": 1.0,
272
+ "top2_recall": 1.0,
273
+ "top4_recall": 1.0
274
+ },
275
+ "256": {
276
+ "active_vram_overhead_bytes": 11241012,
277
+ "hidden_only_top1_accuracy": 0.0,
278
+ "latency_seconds": 0.11810561999955098,
279
+ "mrr": 0.9505556225776672,
280
+ "oracle_query_mrr": 0.9505556225776672,
281
+ "oracle_query_top1_accuracy": 0.949999988079071,
282
+ "oracle_query_top4_recall": 0.949999988079071,
283
+ "state_generation_accuracy": 0.949999988079071,
284
+ "top1_accuracy": 0.949999988079071,
285
+ "top2_recall": 0.949999988079071,
286
+ "top4_recall": 0.949999988079071
287
+ },
288
+ "4": {
289
+ "active_vram_overhead_bytes": 10836300,
290
+ "hidden_only_top1_accuracy": 0.75,
291
+ "latency_seconds": 0.02663025279980502,
292
+ "mrr": 1.0,
293
+ "oracle_query_mrr": 1.0,
294
+ "oracle_query_top1_accuracy": 1.0,
295
+ "oracle_query_top4_recall": 1.0,
296
+ "state_generation_accuracy": 1.0,
297
+ "top1_accuracy": 1.0,
298
+ "top2_recall": 1.0,
299
+ "top4_recall": 1.0
300
+ },
301
+ "512": {
302
+ "active_vram_overhead_bytes": 11652148,
303
+ "hidden_only_top1_accuracy": 0.0,
304
+ "latency_seconds": 0.16455349219977505,
305
+ "mrr": 0.8524776697158813,
306
+ "oracle_query_mrr": 0.8524776697158813,
307
+ "oracle_query_top1_accuracy": 0.8500000238418579,
308
+ "oracle_query_top4_recall": 0.8500000238418579,
309
+ "state_generation_accuracy": 0.8500000238418579,
310
+ "top1_accuracy": 0.8500000238418579,
311
+ "top2_recall": 0.8500000238418579,
312
+ "top4_recall": 0.8500000238418579
313
+ },
314
+ "64": {
315
+ "active_vram_overhead_bytes": 10932660,
316
+ "hidden_only_top1_accuracy": 0.05000000074505806,
317
+ "latency_seconds": 0.09232893199950923,
318
+ "mrr": 1.0,
319
+ "oracle_query_mrr": 1.0,
320
+ "oracle_query_top1_accuracy": 1.0,
321
+ "oracle_query_top4_recall": 1.0,
322
+ "state_generation_accuracy": 1.0,
323
+ "top1_accuracy": 1.0,
324
+ "top2_recall": 1.0,
325
+ "top4_recall": 1.0
326
+ }
327
+ }
328
+ },
329
+ "router_parameters": 5,
330
+ "router_path": "artifacts/canonical-final_layer.router",
331
+ "router_roundtrip_max_difference": 0.0,
332
+ "source_tokens_in_recent_kv": 0,
333
+ "value_translator": {
334
+ "loss_first_last": [
335
+ 4.713489055633545,
336
+ 0.00027370601310394704
337
+ ],
338
+ "oracle_selected_metrics": {
339
+ "accuracy": 1.0,
340
+ "cosine": 0.9998512268066406
341
+ }
342
+ }
343
+ },
344
+ "upper_2_layers": {
345
+ "ablations": {
346
+ "full_system_with_preservation": {
347
+ "full_token_accuracy": 1.0,
348
+ "gate_activation": 0.8225321769714355,
349
+ "state_candidate_accuracy": 1.0
350
+ },
351
+ "router_only": {
352
+ "active_vram_overhead_bytes": 11035444,
353
+ "hidden_only_top1_accuracy": 0.0,
354
+ "latency_seconds": 0.10514904640003805,
355
+ "mrr": 1.0,
356
+ "oracle_query_mrr": 1.0,
357
+ "oracle_query_top1_accuracy": 1.0,
358
+ "oracle_query_top4_recall": 1.0,
359
+ "state_generation_accuracy": 1.0,
360
+ "top1_accuracy": 1.0,
361
+ "top2_recall": 1.0,
362
+ "top4_recall": 1.0
363
+ },
364
+ "router_plus_translator_plus_gate": {
365
+ "historical_state_kl": 9.595059236744419e-05,
366
+ "rp_kl": -3.993045538663864e-08,
367
+ "rp_loss": 5.583366870880127,
368
+ "state_candidate_accuracy": 1.0,
369
+ "state_loss": 5.1855395213351585e-06,
370
+ "wrong_state_kl": 9.595059236744419e-05
371
+ },
372
+ "router_plus_translator_without_gate": {
373
+ "state_candidate_accuracy": 1.0
374
+ },
375
+ "translator_only_oracle_routing": {
376
+ "state_candidate_accuracy": 1.0
377
+ }
378
+ },
379
+ "attachment_count": 2,
380
+ "attachment_layers": [
381
+ 22,
382
+ 23
383
+ ],
384
+ "base_parameters_with_grad": 0,
385
+ "causal_training_loss_first_last": [
386
+ 9.555724143981934,
387
+ 1.2963974995727767e-06
388
+ ],
389
+ "counterfactual": {
390
+ "disabled": {
391
+ "alice_logit": 5.515625,
392
+ "alice_probability": 3.538730743457563e-05,
393
+ "bob_logit": 6.2734375,
394
+ "bob_probability": 7.55025030230172e-05,
395
+ "gate": 0.0,
396
+ "generated": " a"
397
+ },
398
+ "p1_silver_alice": {
399
+ "alice_logit": 58.59375,
400
+ "alice_probability": 1.0,
401
+ "bob_logit": 18.5,
402
+ "bob_probability": 3.868170754671019e-18,
403
+ "gate": 0.941794216632843,
404
+ "generated": " Alice"
405
+ },
406
+ "p2_silver_bob": {
407
+ "alice_logit": 16.078125,
408
+ "alice_probability": 6.54239844304198e-17,
409
+ "bob_logit": 53.34375,
410
+ "bob_probability": 0.9999822378158569,
411
+ "gate": 0.8498331308364868,
412
+ "generated": " Bob"
413
+ },
414
+ "p3_gold_alice": {
415
+ "alice_logit": 5.515625,
416
+ "alice_probability": 3.538730743457563e-05,
417
+ "bob_logit": 6.2734375,
418
+ "bob_probability": 7.55025030230172e-05,
419
+ "gate": 0.0,
420
+ "generated": " a"
421
+ },
422
+ "p4_silver_historical": {
423
+ "alice_logit": 5.515625,
424
+ "alice_probability": 3.538730743457563e-05,
425
+ "bob_logit": 6.2734375,
426
+ "bob_probability": 7.55025030230172e-05,
427
+ "gate": 0.0,
428
+ "generated": " a"
429
+ },
430
+ "p4_silver_invalidated": {
431
+ "alice_logit": 5.515625,
432
+ "alice_probability": 3.538730743457563e-05,
433
+ "bob_logit": 6.2734375,
434
+ "bob_probability": 7.55025030230172e-05,
435
+ "gate": 0.0,
436
+ "generated": " a"
437
+ }
438
+ },
439
+ "extra_prompt_tokens": 0,
440
+ "invalidated_logit_difference": 0.0,
441
+ "mutation_chain": {
442
+ "invalidated_max_logit_difference": 0.0,
443
+ "latest_state_accuracy": 1.0,
444
+ "source_tokens_in_recent_kv": 0
445
+ },
446
+ "natural_rp": {
447
+ "base_loss": 5.583366870880127,
448
+ "conditions": {
449
+ "base": {
450
+ "kl": -3.993045538663864e-08,
451
+ "loss": 5.583366870880127,
452
+ "samples": [
453
+ "\n\n\"I'm not",
454
+ "\n\n\"I'm going"
455
+ ]
456
+ },
457
+ "invalidated": {
458
+ "kl": -3.993045538663864e-08,
459
+ "loss": 5.583366870880127,
460
+ "samples": [
461
+ "\n\n\"I'm not",
462
+ "\n\n\"I'm going"
463
+ ]
464
+ },
465
+ "irrelevant": {
466
+ "kl": -3.993045538663864e-08,
467
+ "loss": 5.583366870880127,
468
+ "samples": [
469
+ "\n\n\"I'm not",
470
+ "\n\n\"I'm going"
471
+ ]
472
+ },
473
+ "wrong_entity": {
474
+ "kl": -3.993045538663864e-08,
475
+ "loss": 5.583366870880127,
476
+ "samples": [
477
+ "\n\n\"I'm not",
478
+ "\n\n\"I'm going"
479
+ ]
480
+ }
481
+ },
482
+ "relevant_state_generation_sample": " Alice"
483
+ },
484
+ "package_parameters": 2707464,
485
+ "package_path": "artifacts/pythia-1.4b-split-upper_2_layers.translate",
486
+ "package_roundtrip_max_difference": 0.0,
487
+ "query_projector": {
488
+ "byte_surface_anchor_approach": {
489
+ "entity_accuracy": 1.0,
490
+ "entity_cosine": 1.0,
491
+ "metadata_accuracy": 1.0,
492
+ "oracle_slot_assignments": 0,
493
+ "relation_accuracy": 1.0,
494
+ "tokenizer_independent": true
495
+ },
496
+ "frozen_lexical_anchor_approach": {
497
+ "entity_accuracy": 0.78125,
498
+ "entity_cosine": 0.7632350921630859
499
+ },
500
+ "heldout_names": 64,
501
+ "hidden_to_byte_reconstruction_ablation": {
502
+ "entity_accuracy": 0.046875,
503
+ "entity_cosine": 0.281654953956604,
504
+ "metadata_accuracy": 1.0,
505
+ "relation_accuracy": 1.0
506
+ },
507
+ "loss_first_last": [
508
+ 6.3322367668151855,
509
+ 0.24513374269008636
510
+ ],
511
+ "training_names": 256
512
+ },
513
+ "router": {
514
+ "acceptance_threshold": 5.495710372924805,
515
+ "calibration_balanced_accuracy": 1.0,
516
+ "hard_negative_metrics": {
517
+ "historical_false_positive_rate": 0.0,
518
+ "invalidated_false_positive_rate": 0.0,
519
+ "irrelevant_false_positive_rate": 0.0,
520
+ "top1_accuracy": 1.0,
521
+ "wrong_entity_false_positive_rate": 0.0,
522
+ "wrong_relation_false_positive_rate": 0.0
523
+ },
524
+ "loss_first_last": [
525
+ 7.388868808746338,
526
+ 1.7992397546768188
527
+ ],
528
+ "model_hidden_dimensions": 0,
529
+ "scaling": {
530
+ "128": {
531
+ "active_vram_overhead_bytes": 11035444,
532
+ "hidden_only_top1_accuracy": 0.0,
533
+ "latency_seconds": 0.10514904640003805,
534
+ "mrr": 1.0,
535
+ "oracle_query_mrr": 1.0,
536
+ "oracle_query_top1_accuracy": 1.0,
537
+ "oracle_query_top4_recall": 1.0,
538
+ "state_generation_accuracy": 1.0,
539
+ "top1_accuracy": 1.0,
540
+ "top2_recall": 1.0,
541
+ "top4_recall": 1.0
542
+ },
543
+ "20": {
544
+ "active_vram_overhead_bytes": 10861996,
545
+ "hidden_only_top1_accuracy": 0.10000000149011612,
546
+ "latency_seconds": 0.08956059680058388,
547
+ "mrr": 1.0,
548
+ "oracle_query_mrr": 1.0,
549
+ "oracle_query_top1_accuracy": 1.0,
550
+ "oracle_query_top4_recall": 1.0,
551
+ "state_generation_accuracy": 1.0,
552
+ "top1_accuracy": 1.0,
553
+ "top2_recall": 1.0,
554
+ "top4_recall": 1.0
555
+ },
556
+ "256": {
557
+ "active_vram_overhead_bytes": 11241012,
558
+ "hidden_only_top1_accuracy": 0.0,
559
+ "latency_seconds": 0.12291700120040332,
560
+ "mrr": 0.9505556225776672,
561
+ "oracle_query_mrr": 0.9505556225776672,
562
+ "oracle_query_top1_accuracy": 0.949999988079071,
563
+ "oracle_query_top4_recall": 0.949999988079071,
564
+ "state_generation_accuracy": 0.949999988079071,
565
+ "top1_accuracy": 0.949999988079071,
566
+ "top2_recall": 0.949999988079071,
567
+ "top4_recall": 0.949999988079071
568
+ },
569
+ "4": {
570
+ "active_vram_overhead_bytes": 10836300,
571
+ "hidden_only_top1_accuracy": 0.5,
572
+ "latency_seconds": 0.028453471799730325,
573
+ "mrr": 1.0,
574
+ "oracle_query_mrr": 1.0,
575
+ "oracle_query_top1_accuracy": 1.0,
576
+ "oracle_query_top4_recall": 1.0,
577
+ "state_generation_accuracy": 1.0,
578
+ "top1_accuracy": 1.0,
579
+ "top2_recall": 1.0,
580
+ "top4_recall": 1.0
581
+ },
582
+ "512": {
583
+ "active_vram_overhead_bytes": 11652148,
584
+ "hidden_only_top1_accuracy": 0.0,
585
+ "latency_seconds": 0.17295584960011184,
586
+ "mrr": 0.8524776697158813,
587
+ "oracle_query_mrr": 0.8524776697158813,
588
+ "oracle_query_top1_accuracy": 0.8500000238418579,
589
+ "oracle_query_top4_recall": 0.8500000238418579,
590
+ "state_generation_accuracy": 0.8500000238418579,
591
+ "top1_accuracy": 0.8500000238418579,
592
+ "top2_recall": 0.8500000238418579,
593
+ "top4_recall": 0.8500000238418579
594
+ },
595
+ "64": {
596
+ "active_vram_overhead_bytes": 10932660,
597
+ "hidden_only_top1_accuracy": 0.0,
598
+ "latency_seconds": 0.09586576699948637,
599
+ "mrr": 1.0,
600
+ "oracle_query_mrr": 1.0,
601
+ "oracle_query_top1_accuracy": 1.0,
602
+ "oracle_query_top4_recall": 1.0,
603
+ "state_generation_accuracy": 1.0,
604
+ "top1_accuracy": 1.0,
605
+ "top2_recall": 1.0,
606
+ "top4_recall": 1.0
607
+ }
608
+ }
609
+ },
610
+ "router_parameters": 5,
611
+ "router_path": "artifacts/canonical-upper_2_layers.router",
612
+ "router_roundtrip_max_difference": 0.0,
613
+ "source_tokens_in_recent_kv": 0,
614
+ "value_translator": {
615
+ "loss_first_last": [
616
+ 4.713489055633545,
617
+ 0.00027370601310394704
618
+ ],
619
+ "oracle_selected_metrics": {
620
+ "accuracy": 1.0,
621
+ "cosine": 0.9998512268066406
622
+ }
623
+ }
624
+ },
625
+ "upper_4_layers": {
626
+ "ablations": {
627
+ "full_system_with_preservation": {
628
+ "full_token_accuracy": 1.0,
629
+ "gate_activation": 0.6373323798179626,
630
+ "state_candidate_accuracy": 1.0
631
+ },
632
+ "router_only": {
633
+ "active_vram_overhead_bytes": 11035444,
634
+ "hidden_only_top1_accuracy": 0.0,
635
+ "latency_seconds": 0.11078032340010395,
636
+ "mrr": 1.0,
637
+ "oracle_query_mrr": 1.0,
638
+ "oracle_query_top1_accuracy": 1.0,
639
+ "oracle_query_top4_recall": 1.0,
640
+ "state_generation_accuracy": 1.0,
641
+ "top1_accuracy": 1.0,
642
+ "top2_recall": 1.0,
643
+ "top4_recall": 1.0
644
+ },
645
+ "router_plus_translator_plus_gate": {
646
+ "historical_state_kl": 9.595059236744419e-05,
647
+ "rp_kl": -3.993045538663864e-08,
648
+ "rp_loss": 5.583366870880127,
649
+ "state_candidate_accuracy": 1.0,
650
+ "state_loss": 1.4752099559700582e-06,
651
+ "wrong_state_kl": 9.595059236744419e-05
652
+ },
653
+ "router_plus_translator_without_gate": {
654
+ "state_candidate_accuracy": 1.0
655
+ },
656
+ "translator_only_oracle_routing": {
657
+ "state_candidate_accuracy": 1.0
658
+ }
659
+ },
660
+ "attachment_count": 4,
661
+ "attachment_layers": [
662
+ 20,
663
+ 21,
664
+ 22,
665
+ 23
666
+ ],
667
+ "base_parameters_with_grad": 0,
668
+ "causal_training_loss_first_last": [
669
+ 8.895807266235352,
670
+ 6.407490786841663e-07
671
+ ],
672
+ "counterfactual": {
673
+ "disabled": {
674
+ "alice_logit": 5.515625,
675
+ "alice_probability": 3.538730743457563e-05,
676
+ "bob_logit": 6.2734375,
677
+ "bob_probability": 7.55025030230172e-05,
678
+ "gate": 0.0,
679
+ "generated": " a"
680
+ },
681
+ "p1_silver_alice": {
682
+ "alice_logit": 72.5625,
683
+ "alice_probability": 1.0,
684
+ "bob_logit": 20.375,
685
+ "bob_probability": 2.1639972398594e-23,
686
+ "gate": 0.8317975997924805,
687
+ "generated": " Alice"
688
+ },
689
+ "p2_silver_bob": {
690
+ "alice_logit": 17.796875,
691
+ "alice_probability": 7.510040636028562e-22,
692
+ "bob_logit": 66.4375,
693
+ "bob_probability": 0.9999938011169434,
694
+ "gate": 0.6602288484573364,
695
+ "generated": " Bob"
696
+ },
697
+ "p3_gold_alice": {
698
+ "alice_logit": 5.515625,
699
+ "alice_probability": 3.538730743457563e-05,
700
+ "bob_logit": 6.2734375,
701
+ "bob_probability": 7.55025030230172e-05,
702
+ "gate": 0.0,
703
+ "generated": " a"
704
+ },
705
+ "p4_silver_historical": {
706
+ "alice_logit": 5.515625,
707
+ "alice_probability": 3.538730743457563e-05,
708
+ "bob_logit": 6.2734375,
709
+ "bob_probability": 7.55025030230172e-05,
710
+ "gate": 0.0,
711
+ "generated": " a"
712
+ },
713
+ "p4_silver_invalidated": {
714
+ "alice_logit": 5.515625,
715
+ "alice_probability": 3.538730743457563e-05,
716
+ "bob_logit": 6.2734375,
717
+ "bob_probability": 7.55025030230172e-05,
718
+ "gate": 0.0,
719
+ "generated": " a"
720
+ }
721
+ },
722
+ "extra_prompt_tokens": 0,
723
+ "invalidated_logit_difference": 0.0,
724
+ "mutation_chain": {
725
+ "invalidated_max_logit_difference": 0.0,
726
+ "latest_state_accuracy": 1.0,
727
+ "source_tokens_in_recent_kv": 0
728
+ },
729
+ "natural_rp": {
730
+ "base_loss": 5.583366870880127,
731
+ "conditions": {
732
+ "base": {
733
+ "kl": -3.993045538663864e-08,
734
+ "loss": 5.583366870880127,
735
+ "samples": [
736
+ "\n\n\"I'm not",
737
+ "\n\n\"I'm going"
738
+ ]
739
+ },
740
+ "invalidated": {
741
+ "kl": -3.993045538663864e-08,
742
+ "loss": 5.583366870880127,
743
+ "samples": [
744
+ "\n\n\"I'm not",
745
+ "\n\n\"I'm going"
746
+ ]
747
+ },
748
+ "irrelevant": {
749
+ "kl": -3.993045538663864e-08,
750
+ "loss": 5.583366870880127,
751
+ "samples": [
752
+ "\n\n\"I'm not",
753
+ "\n\n\"I'm going"
754
+ ]
755
+ },
756
+ "wrong_entity": {
757
+ "kl": -3.993045538663864e-08,
758
+ "loss": 5.583366870880127,
759
+ "samples": [
760
+ "\n\n\"I'm not",
761
+ "\n\n\"I'm going"
762
+ ]
763
+ }
764
+ },
765
+ "relevant_state_generation_sample": " Alice"
766
+ },
767
+ "package_parameters": 2707464,
768
+ "package_path": "artifacts/pythia-1.4b-split-upper_4_layers.translate",
769
+ "package_roundtrip_max_difference": 0.0,
770
+ "query_projector": {
771
+ "byte_surface_anchor_approach": {
772
+ "entity_accuracy": 1.0,
773
+ "entity_cosine": 1.0,
774
+ "metadata_accuracy": 1.0,
775
+ "oracle_slot_assignments": 0,
776
+ "relation_accuracy": 1.0,
777
+ "tokenizer_independent": true
778
+ },
779
+ "frozen_lexical_anchor_approach": {
780
+ "entity_accuracy": 0.78125,
781
+ "entity_cosine": 0.7632350921630859
782
+ },
783
+ "heldout_names": 64,
784
+ "hidden_to_byte_reconstruction_ablation": {
785
+ "entity_accuracy": 0.078125,
786
+ "entity_cosine": 0.28708386421203613,
787
+ "metadata_accuracy": 1.0,
788
+ "relation_accuracy": 1.0
789
+ },
790
+ "loss_first_last": [
791
+ 6.471477031707764,
792
+ 0.2573241889476776
793
+ ],
794
+ "training_names": 256
795
+ },
796
+ "router": {
797
+ "acceptance_threshold": 5.495710372924805,
798
+ "calibration_balanced_accuracy": 1.0,
799
+ "hard_negative_metrics": {
800
+ "historical_false_positive_rate": 0.0,
801
+ "invalidated_false_positive_rate": 0.0,
802
+ "irrelevant_false_positive_rate": 0.0,
803
+ "top1_accuracy": 1.0,
804
+ "wrong_entity_false_positive_rate": 0.0,
805
+ "wrong_relation_false_positive_rate": 0.0
806
+ },
807
+ "loss_first_last": [
808
+ 7.388868808746338,
809
+ 1.7992397546768188
810
+ ],
811
+ "model_hidden_dimensions": 0,
812
+ "scaling": {
813
+ "128": {
814
+ "active_vram_overhead_bytes": 11035444,
815
+ "hidden_only_top1_accuracy": 0.0,
816
+ "latency_seconds": 0.11078032340010395,
817
+ "mrr": 1.0,
818
+ "oracle_query_mrr": 1.0,
819
+ "oracle_query_top1_accuracy": 1.0,
820
+ "oracle_query_top4_recall": 1.0,
821
+ "state_generation_accuracy": 1.0,
822
+ "top1_accuracy": 1.0,
823
+ "top2_recall": 1.0,
824
+ "top4_recall": 1.0
825
+ },
826
+ "20": {
827
+ "active_vram_overhead_bytes": 10861996,
828
+ "hidden_only_top1_accuracy": 0.10000000149011612,
829
+ "latency_seconds": 0.09917421240024851,
830
+ "mrr": 1.0,
831
+ "oracle_query_mrr": 1.0,
832
+ "oracle_query_top1_accuracy": 1.0,
833
+ "oracle_query_top4_recall": 1.0,
834
+ "state_generation_accuracy": 1.0,
835
+ "top1_accuracy": 1.0,
836
+ "top2_recall": 1.0,
837
+ "top4_recall": 1.0
838
+ },
839
+ "256": {
840
+ "active_vram_overhead_bytes": 11241012,
841
+ "hidden_only_top1_accuracy": 0.0,
842
+ "latency_seconds": 0.1296995702003187,
843
+ "mrr": 0.9505556225776672,
844
+ "oracle_query_mrr": 0.9505556225776672,
845
+ "oracle_query_top1_accuracy": 0.949999988079071,
846
+ "oracle_query_top4_recall": 0.949999988079071,
847
+ "state_generation_accuracy": 0.949999988079071,
848
+ "top1_accuracy": 0.949999988079071,
849
+ "top2_recall": 0.949999988079071,
850
+ "top4_recall": 0.949999988079071
851
+ },
852
+ "4": {
853
+ "active_vram_overhead_bytes": 10836300,
854
+ "hidden_only_top1_accuracy": 0.25,
855
+ "latency_seconds": 0.031837903400446524,
856
+ "mrr": 1.0,
857
+ "oracle_query_mrr": 1.0,
858
+ "oracle_query_top1_accuracy": 1.0,
859
+ "oracle_query_top4_recall": 1.0,
860
+ "state_generation_accuracy": 1.0,
861
+ "top1_accuracy": 1.0,
862
+ "top2_recall": 1.0,
863
+ "top4_recall": 1.0
864
+ },
865
+ "512": {
866
+ "active_vram_overhead_bytes": 11652148,
867
+ "hidden_only_top1_accuracy": 0.0,
868
+ "latency_seconds": 0.18178108020001674,
869
+ "mrr": 0.8524776697158813,
870
+ "oracle_query_mrr": 0.8524776697158813,
871
+ "oracle_query_top1_accuracy": 0.8500000238418579,
872
+ "oracle_query_top4_recall": 0.8500000238418579,
873
+ "state_generation_accuracy": 0.8500000238418579,
874
+ "top1_accuracy": 0.8500000238418579,
875
+ "top2_recall": 0.8500000238418579,
876
+ "top4_recall": 0.8500000238418579
877
+ },
878
+ "64": {
879
+ "active_vram_overhead_bytes": 10932660,
880
+ "hidden_only_top1_accuracy": 0.05000000074505806,
881
+ "latency_seconds": 0.10435858960045152,
882
+ "mrr": 1.0,
883
+ "oracle_query_mrr": 1.0,
884
+ "oracle_query_top1_accuracy": 1.0,
885
+ "oracle_query_top4_recall": 1.0,
886
+ "state_generation_accuracy": 1.0,
887
+ "top1_accuracy": 1.0,
888
+ "top2_recall": 1.0,
889
+ "top4_recall": 1.0
890
+ }
891
+ }
892
+ },
893
+ "router_parameters": 5,
894
+ "router_path": "artifacts/canonical-upper_4_layers.router",
895
+ "router_roundtrip_max_difference": 0.0,
896
+ "source_tokens_in_recent_kv": 0,
897
+ "value_translator": {
898
+ "loss_first_last": [
899
+ 4.713489055633545,
900
+ 0.00027370601310394704
901
+ ],
902
+ "oracle_selected_metrics": {
903
+ "accuracy": 1.0,
904
+ "cosine": 0.9998512268066406
905
+ }
906
+ }
907
+ }
908
+ },
909
+ "selected_variant": "final_layer"
910
+ }
artifacts/post-turn-memory-review-acceptance.json ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "format": "planner-cache-post-turn-memory-review-acceptance-v1",
3
+ "date": "2026-08-23",
4
+ "gemma": {
5
+ "runtime": "Gemma4 E4B Q8 through llama.cpp",
6
+ "reviewer": "same frozen Gemma runtime without LTL",
7
+ "session_id": "benchmark-session-gemma",
8
+ "turns": [
9
+ {
10
+ "user": "*I leave the brass key inside the kitchen drawer.*",
11
+ "operation": "CREATE",
12
+ "entity": "brass key",
13
+ "relation": "location",
14
+ "value": "kitchen drawer",
15
+ "source": "rp_action",
16
+ "confidence": 1.0,
17
+ "review_latency_seconds": 43.14148591599951
18
+ },
19
+ {
20
+ "user": "*I take the key and put it into my coat pocket.*",
21
+ "operation": "MODIFY",
22
+ "entity": "brass key",
23
+ "relation": "location",
24
+ "value": "coat pocket",
25
+ "source": "rp_action",
26
+ "confidence": 1.0,
27
+ "review_latency_seconds": 48.18768195499433
28
+ }
29
+ ],
30
+ "final_active_state_count": 1,
31
+ "final_value": "coat pocket",
32
+ "stale_kitchen_drawer_active": false
33
+ },
34
+ "pythia": {
35
+ "runtime": "frozen Pythia-1.4B with TTL",
36
+ "reviewer": "frozen Gemma llama.cpp CPU structured reviewer without TTL or LTL",
37
+ "session_id": "benchmark-session-pythia",
38
+ "turn": {
39
+ "user": "*I leave the brass key inside the kitchen drawer.*",
40
+ "operation": "CREATE",
41
+ "entity": "brass key",
42
+ "relation": "location",
43
+ "value": "kitchen drawer",
44
+ "source": "rp_action",
45
+ "confidence": 1.0,
46
+ "review_latency_seconds": 65.49500731100852
47
+ },
48
+ "final_active_state_count": 1
49
+ },
50
+ "assertions": {
51
+ "natural_rp_create": true,
52
+ "natural_rp_modify": true,
53
+ "single_current_value": true,
54
+ "pythia_interactive_path": true,
55
+ "gemma_interactive_path": true,
56
+ "review_ttl_ltl_disabled": true
57
+ }
58
+ }
artifacts/ppkg-100k-profile.json ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "after_reused_connection_per_query": {
3
+ "canonical_conversion_seconds": 0.0007130039994081017,
4
+ "checksum_work_seconds": 0.0,
5
+ "db_open_seconds": 0.0,
6
+ "model": "one validated open, then bounded queries on one reused connection",
7
+ "routing_header_query_seconds": 0.25507766800001264,
8
+ "row_hydration_seconds": 0.00020283000048948452,
9
+ "total_seconds": 0.2559935019999102
10
+ },
11
+ "before_legacy_per_query": {
12
+ "canonical_conversion_seconds": 0.0007130039994081017,
13
+ "checksum_work_seconds": 0.8436194509995403,
14
+ "db_open_seconds": 0.0003522689985402394,
15
+ "model": "validated open and whole-package checksum on every query",
16
+ "routing_header_query_seconds": 0.25507766800001264,
17
+ "row_hydration_seconds": 0.00020283000048948452,
18
+ "total_seconds": 1.0999652219979907
19
+ },
20
+ "build_and_initial_checkpoint_seconds": 2.8209503369980666,
21
+ "cold_integrity_boundary": {
22
+ "checksum_calls": 1,
23
+ "explicit_checksum_verify_seconds": 0.8436194509995403,
24
+ "unverified_db_open_seconds": 0.0003522689985402394
25
+ },
26
+ "connection": {
27
+ "connection_identity_stable": true,
28
+ "per_query_open_seconds": 0.0,
29
+ "reused": true
30
+ },
31
+ "entries": 100000,
32
+ "evidence_push": {
33
+ "checkpoint_checksum_calls": 1,
34
+ "checkpoint_seconds": 0.8296411900009844,
35
+ "legacy_modeled_push_seconds": 0.831370665004215,
36
+ "normal_push_checksum_calls": 0,
37
+ "normal_push_seconds": 0.0017294750032306183
38
+ },
39
+ "experiment": "ppkg-100k-integrity-boundary-profile-v1",
40
+ "modeled_speedup": 4.296848214523728,
41
+ "normal_query_checksum_calls": 0,
42
+ "package_size_bytes": 37863424,
43
+ "repeats": 7,
44
+ "selected": {
45
+ "entries_hydrated": 4,
46
+ "entry_ids": [
47
+ "personality-00000000",
48
+ "personality-00000403",
49
+ "personality-00000186",
50
+ "personality-00000124"
51
+ ],
52
+ "logical_entry_bytes": 2405
53
+ },
54
+ "sqlite_transactions_changed": false
55
+ }
artifacts/pythia-1.4b-final-layer.ttl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:72ef68d07ee27c37b90432d34d4be5c2c280ae1bcb08236e37a0e458c054d8d7
3
+ size 10832776
artifacts/vram-comparison.json ADDED
@@ -0,0 +1,268 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "completion": {
3
+ "conditions": 9,
4
+ "estimated_values": 0,
5
+ "failed": 0,
6
+ "oom_events": 0,
7
+ "successful": 9
8
+ },
9
+ "environment": {
10
+ "cuda_driver": "610.57.04",
11
+ "cuda_runtime": "13.0",
12
+ "gpu": "NVIDIA GeForce RTX 3050 Laptop GPU",
13
+ "gpu_total_bytes": 3950575616,
14
+ "platform": "Linux-7.1.8-1-MANJARO-x86_64-with-glibc2.44",
15
+ "python": "3.12.6",
16
+ "torch": "2.13.0+cu130",
17
+ "transformers": "5.15.1"
18
+ },
19
+ "experiment": "planner-cache-matched-vram-comparison-v1",
20
+ "method": {
21
+ "attention_working_memory": "present in every condition and distinct from retained KV cache",
22
+ "baseline": "CUDA allocation after loaded stack and empty_cache",
23
+ "combined": "retained KV and P-cache TTL path active together",
24
+ "kv_only": "retained KV active while P-cache and TTL injection are disabled",
25
+ "model_load": "one frozen model, TTL, and router reused for every condition",
26
+ "p_cache_only": "retained KV disabled while P-cache and TTL are active",
27
+ "peak": "torch.cuda reset_peak_memory_stats and synchronized measurement",
28
+ "warmup": "all measured mechanisms exercised once before baselines"
29
+ },
30
+ "model": {
31
+ "config_sha256": "6ea552aa42b7437f019ccdd30b7c9b83a32dccb5170ce31b9ddbe94d00f4671c",
32
+ "identifier": "pythia-1.4b",
33
+ "router_filename": "canonical-p-v1.router",
34
+ "router_sha256": "29e0728c12f8806c48998579aedcfa389fa398f909098e162710eb2a5709834e",
35
+ "ttl_filename": "pythia-1.4b-final-layer.ttl",
36
+ "ttl_sha256": "72ef68d07ee27c37b90432d34d4be5c2c280ae1bcb08236e37a0e458c054d8d7"
37
+ },
38
+ "results": [
39
+ {
40
+ "baseline_allocated_bytes": 2849172992,
41
+ "baseline_reserved_bytes": 2906652672,
42
+ "batch_size": 1,
43
+ "condition": "p_cache_only",
44
+ "failure": null,
45
+ "fallback": null,
46
+ "final_sequence_tokens": 72,
47
+ "generated_tokens": 8,
48
+ "generation": "greedy argmax",
49
+ "incremental_peak_allocated_bytes": 7471616,
50
+ "incremental_peak_reserved_bytes": 4194304,
51
+ "p_cache_canonical_bytes": 134464,
52
+ "p_cache_enabled": true,
53
+ "p_cache_slots": 64,
54
+ "peak_allocated_bytes": 2856644608,
55
+ "peak_reserved_bytes": 2910846976,
56
+ "precision": "float16 base and float32 TTL",
57
+ "prompt_tokens": 64,
58
+ "requested_generated_tokens": 8,
59
+ "retained_kv_cache_bytes": 0,
60
+ "retained_kv_enabled": false,
61
+ "runtime_seconds": 0.2554637499997625
62
+ },
63
+ {
64
+ "baseline_allocated_bytes": 2849172992,
65
+ "baseline_reserved_bytes": 2906652672,
66
+ "batch_size": 1,
67
+ "condition": "kv_only",
68
+ "failure": null,
69
+ "fallback": null,
70
+ "final_sequence_tokens": 72,
71
+ "generated_tokens": 8,
72
+ "generation": "greedy argmax",
73
+ "incremental_peak_allocated_bytes": 19284992,
74
+ "incremental_peak_reserved_bytes": 16777216,
75
+ "p_cache_canonical_bytes": 0,
76
+ "p_cache_enabled": false,
77
+ "p_cache_slots": 0,
78
+ "peak_allocated_bytes": 2868457984,
79
+ "peak_reserved_bytes": 2923429888,
80
+ "precision": "float16 base and float32 TTL",
81
+ "prompt_tokens": 64,
82
+ "requested_generated_tokens": 8,
83
+ "retained_kv_cache_bytes": 13959168,
84
+ "retained_kv_enabled": true,
85
+ "runtime_seconds": 0.17538804200012237
86
+ },
87
+ {
88
+ "baseline_allocated_bytes": 2849172992,
89
+ "baseline_reserved_bytes": 2906652672,
90
+ "batch_size": 1,
91
+ "condition": "p_cache_plus_kv",
92
+ "failure": null,
93
+ "fallback": null,
94
+ "final_sequence_tokens": 72,
95
+ "generated_tokens": 8,
96
+ "generation": "greedy argmax",
97
+ "incremental_peak_allocated_bytes": 19319808,
98
+ "incremental_peak_reserved_bytes": 16777216,
99
+ "p_cache_canonical_bytes": 134464,
100
+ "p_cache_enabled": true,
101
+ "p_cache_slots": 64,
102
+ "peak_allocated_bytes": 2868492800,
103
+ "peak_reserved_bytes": 2923429888,
104
+ "precision": "float16 base and float32 TTL",
105
+ "prompt_tokens": 64,
106
+ "requested_generated_tokens": 8,
107
+ "retained_kv_cache_bytes": 13959168,
108
+ "retained_kv_enabled": true,
109
+ "runtime_seconds": 0.20454967800469603
110
+ },
111
+ {
112
+ "baseline_allocated_bytes": 2849172992,
113
+ "baseline_reserved_bytes": 2906652672,
114
+ "batch_size": 1,
115
+ "condition": "p_cache_only",
116
+ "failure": null,
117
+ "fallback": null,
118
+ "final_sequence_tokens": 264,
119
+ "generated_tokens": 8,
120
+ "generation": "greedy argmax",
121
+ "incremental_peak_allocated_bytes": 28483584,
122
+ "incremental_peak_reserved_bytes": 35651584,
123
+ "p_cache_canonical_bytes": 537856,
124
+ "p_cache_enabled": true,
125
+ "p_cache_slots": 256,
126
+ "peak_allocated_bytes": 2877656576,
127
+ "peak_reserved_bytes": 2942304256,
128
+ "precision": "float16 base and float32 TTL",
129
+ "prompt_tokens": 256,
130
+ "requested_generated_tokens": 8,
131
+ "retained_kv_cache_bytes": 0,
132
+ "retained_kv_enabled": false,
133
+ "runtime_seconds": 0.7414951529935934
134
+ },
135
+ {
136
+ "baseline_allocated_bytes": 2849172992,
137
+ "baseline_reserved_bytes": 2906652672,
138
+ "batch_size": 1,
139
+ "condition": "kv_only",
140
+ "failure": null,
141
+ "fallback": null,
142
+ "final_sequence_tokens": 264,
143
+ "generated_tokens": 8,
144
+ "generation": "greedy argmax",
145
+ "incremental_peak_allocated_bytes": 81187328,
146
+ "incremental_peak_reserved_bytes": 83886080,
147
+ "p_cache_canonical_bytes": 0,
148
+ "p_cache_enabled": false,
149
+ "p_cache_slots": 0,
150
+ "peak_allocated_bytes": 2930360320,
151
+ "peak_reserved_bytes": 2990538752,
152
+ "precision": "float16 base and float32 TTL",
153
+ "prompt_tokens": 256,
154
+ "requested_generated_tokens": 8,
155
+ "retained_kv_cache_bytes": 51707904,
156
+ "retained_kv_enabled": true,
157
+ "runtime_seconds": 0.19367339000746142
158
+ },
159
+ {
160
+ "baseline_allocated_bytes": 2849172992,
161
+ "baseline_reserved_bytes": 2906652672,
162
+ "batch_size": 1,
163
+ "condition": "p_cache_plus_kv",
164
+ "failure": null,
165
+ "fallback": null,
166
+ "final_sequence_tokens": 264,
167
+ "generated_tokens": 8,
168
+ "generation": "greedy argmax",
169
+ "incremental_peak_allocated_bytes": 81323520,
170
+ "incremental_peak_reserved_bytes": 83886080,
171
+ "p_cache_canonical_bytes": 537856,
172
+ "p_cache_enabled": true,
173
+ "p_cache_slots": 256,
174
+ "peak_allocated_bytes": 2930496512,
175
+ "peak_reserved_bytes": 2990538752,
176
+ "precision": "float16 base and float32 TTL",
177
+ "prompt_tokens": 256,
178
+ "requested_generated_tokens": 8,
179
+ "retained_kv_cache_bytes": 51707904,
180
+ "retained_kv_enabled": true,
181
+ "runtime_seconds": 0.41562580699974205
182
+ },
183
+ {
184
+ "baseline_allocated_bytes": 2849172992,
185
+ "baseline_reserved_bytes": 2906652672,
186
+ "batch_size": 1,
187
+ "condition": "p_cache_only",
188
+ "failure": null,
189
+ "fallback": null,
190
+ "final_sequence_tokens": 1032,
191
+ "generated_tokens": 8,
192
+ "generation": "greedy argmax",
193
+ "incremental_peak_allocated_bytes": 108517888,
194
+ "incremental_peak_reserved_bytes": 174063616,
195
+ "p_cache_canonical_bytes": 2151424,
196
+ "p_cache_enabled": true,
197
+ "p_cache_slots": 1024,
198
+ "peak_allocated_bytes": 2957690880,
199
+ "peak_reserved_bytes": 3080716288,
200
+ "precision": "float16 base and float32 TTL",
201
+ "prompt_tokens": 1024,
202
+ "requested_generated_tokens": 8,
203
+ "retained_kv_cache_bytes": 0,
204
+ "retained_kv_enabled": false,
205
+ "runtime_seconds": 2.710468404009589
206
+ },
207
+ {
208
+ "baseline_allocated_bytes": 2849172992,
209
+ "baseline_reserved_bytes": 2906652672,
210
+ "batch_size": 1,
211
+ "condition": "kv_only",
212
+ "failure": null,
213
+ "fallback": null,
214
+ "final_sequence_tokens": 1032,
215
+ "generated_tokens": 8,
216
+ "generation": "greedy argmax",
217
+ "incremental_peak_allocated_bytes": 308559872,
218
+ "incremental_peak_reserved_bytes": 339738624,
219
+ "p_cache_canonical_bytes": 0,
220
+ "p_cache_enabled": false,
221
+ "p_cache_slots": 0,
222
+ "peak_allocated_bytes": 3157732864,
223
+ "peak_reserved_bytes": 3246391296,
224
+ "precision": "float16 base and float32 TTL",
225
+ "prompt_tokens": 1024,
226
+ "requested_generated_tokens": 8,
227
+ "retained_kv_cache_bytes": 202702848,
228
+ "retained_kv_enabled": true,
229
+ "runtime_seconds": 0.37531103400397114
230
+ },
231
+ {
232
+ "baseline_allocated_bytes": 2849172992,
233
+ "baseline_reserved_bytes": 2906652672,
234
+ "batch_size": 1,
235
+ "condition": "p_cache_plus_kv",
236
+ "failure": null,
237
+ "fallback": null,
238
+ "final_sequence_tokens": 1032,
239
+ "generated_tokens": 8,
240
+ "generation": "greedy argmax",
241
+ "incremental_peak_allocated_bytes": 309102080,
242
+ "incremental_peak_reserved_bytes": 358612992,
243
+ "p_cache_canonical_bytes": 2151424,
244
+ "p_cache_enabled": true,
245
+ "p_cache_slots": 1024,
246
+ "peak_allocated_bytes": 3158275072,
247
+ "peak_reserved_bytes": 3265265664,
248
+ "precision": "float16 base and float32 TTL",
249
+ "prompt_tokens": 1024,
250
+ "requested_generated_tokens": 8,
251
+ "retained_kv_cache_bytes": 202702848,
252
+ "retained_kv_enabled": true,
253
+ "runtime_seconds": 1.2812230650015408
254
+ }
255
+ ],
256
+ "shared_configuration": {
257
+ "batch_size": 1,
258
+ "generated_tokens": 8,
259
+ "generation": "greedy argmax",
260
+ "precision": "float16 base and float32 TTL",
261
+ "seed": 317,
262
+ "workload_prompt_and_slot_sizes": [
263
+ 64,
264
+ 256,
265
+ 1024
266
+ ]
267
+ }
268
+ }
assets/EVIDENCE_MANIFEST.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "generated_from": {
3
+ "active-system-audit.json": "6eb3e401023b5878b2bbfb9055fd921999b571f6216e370b12440b7d343c0a1d",
4
+ "active-system-cuda-attribution.json": "ffe0e8f32f9a1a059767607f0c5e0432b6baf2a9917dc56877f794458b1a5e1c",
5
+ "debug-actions-profile.json": "3ca4cc8ac002dc30bd6c33d1bdae764bfc3e43534498eecc98a5168069784bd4",
6
+ "gemma-native-prompt-equivalence.json": "f6823b9b5a5fd69ebf75c8aadc8efa23fe0a6eaac7a1eaa81c398a3fdb200e79",
7
+ "gemma4-e4b-q8-causal.json": "a15a862dbc5dde547e7124ce3c3f16d015c15b79730bc60b7e92425e471ecb0f",
8
+ "phase-b-factorized-representation.json": "602bf8b8b1d07b8100b13f9842790f87ae6a5229ddc2d66377130d15413a870f",
9
+ "phase-b-personality-package.json": "5d17cbd8cecc8398105d3d53ff05e1b7941dd0732ac3d68a761790b64799bf06",
10
+ "phase-b-split-translator.json": "4a8cdc0c2bc73a1fc10f974f20d88be4902331a07b92928edb089b852bc1a845",
11
+ "post-turn-memory-review-acceptance.json": "89cb901c1665e9fd1515ef9165580a4bd3c4d9774f23976fdc6f366ef88c6b24",
12
+ "ppkg-100k-profile.json": "f5ff5233632bf5bf860fefedeec560e10a3f32729f4b6a767d0b3538d9c33a05",
13
+ "vram-comparison.json": "1b1e266c3f6513a5708711f09879a6519ce45abdaea7ba16d04f2510f5c1fc8d"
14
+ },
15
+ "public_binary_artifacts": {
16
+ "canonical-p-v1.router": "29e0728c12f8806c48998579aedcfa389fa398f909098e162710eb2a5709834e",
17
+ "gemma4-e4b-q8-llama.ltl": "7eee07ed813796dd0d25b04b48aec73507b934479ad8902e1b657653c040781a",
18
+ "personality-proof.ppkg": "faa701fb6150738937fc7b756fb5df226638eedb7599127b0d04d83899ea4bf9",
19
+ "pythia-1.4b-final-layer.ttl": "72ef68d07ee27c37b90432d34d4be5c2c280ae1bcb08236e37a0e458c054d8d7"
20
+ },
21
+ "publication_copy": {
22
+ "machine_paths_normalized": true,
23
+ "third_party_model_or_tokenizer_payloads": false
24
+ },
25
+ "selected_configuration": {
26
+ "base_model": "pythia-1.4b",
27
+ "canonical_protocol": "pcm-canonical-p-v1",
28
+ "gemma_ltl_format": "planner-cache-ltl-v1",
29
+ "gemma_ltl_parameters": 0,
30
+ "gemma_model": "Gemma-4-E4B-Uncensored-HauhauCS-Aggressive",
31
+ "ppkg_format": "pcm-personality-package-v1",
32
+ "ppkg_protocol": "pcm-canonical-personality-v1",
33
+ "router_format": "pcm-canonical-router-v1",
34
+ "selected_attachment": "final_layer",
35
+ "ttl_format": "planner-cache-ttl-v1",
36
+ "ttl_parameters": 2707464
37
+ }
38
+ }
assets/README.md ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Shared publication assets
2
+
3
+ These assets are shared by the GitHub, Hugging Face, and research publication packs.
4
+
5
+ | Asset | Purpose | Source |
6
+ |---|---|---|
7
+ | [`architecture.svg`](architecture.svg) | Repository-friendly current architecture diagram | Publication architecture specification in `generate_assets.py` |
8
+ | [`architecture.pdf`](architecture.pdf) | Vector publication architecture figure | Generated from `architecture.svg` |
9
+ | [`architecture.mmd`](architecture.mmd) | Compact Mermaid architecture diagram | Current architecture boundaries |
10
+ | [`router_scaling.svg`](router_scaling.svg) | Post-audit router accuracy and MRR plot | `active-system-audit.json` |
11
+ | [`router_scaling.csv`](router_scaling.csv) | Router plot data | `active-system-audit.json` |
12
+ | [`ppkg_lookup.svg`](ppkg_lookup.svg) | P-package lookup latency plot | `active-system-audit.json` |
13
+ | [`ppkg_scaling.csv`](ppkg_scaling.csv) | P-package growth and lookup table | `active-system-audit.json` |
14
+ | [`causal_conditions.csv`](causal_conditions.csv) | Matched CUDA causal attribution table | `active-system-cuda-attribution.json` |
15
+ | [`gemma_causal_conditions.csv`](gemma_causal_conditions.csv) | Gemma 4 Q8 GGUF causal conditions | `gemma4-e4b-q8-causal.json` |
16
+ | [`vram_comparison.csv`](vram_comparison.csv) | Matched P-cache, retained-KV, and combined VRAM table | `vram-comparison.json` |
17
+ | [`vram_comparison.svg`](vram_comparison.svg) | Matched incremental peak VRAM plot | `vram-comparison.json` |
18
+ | [`VRAM_COMPARISON.md`](VRAM_COMPARISON.md) | Measurement boundary and exact results | `vram-comparison.json` |
19
+ | [`EVIDENCE_MANIFEST.json`](EVIDENCE_MANIFEST.json) | Source artifact hashes and generator metadata | Recorded benchmark JSON files |
20
+
21
+ Regenerate the derived assets from the repository root with:
22
+
23
+ ```bash
24
+ PYTHONPATH=src .venv/bin/python Publishing/Assets/generate_assets.py
25
+ ```
26
+
27
+ Generation requires the `publishing` optional dependency and the `qpdf` command.
28
+ The generator removes volatile PDF metadata and uses a deterministic document
29
+ identifier so the PDF is byte-reproducible.
30
+
31
+ The historical visual architecture specification remains unchanged in the source repository. It is intentionally not redistributed in the publication packs. The publication architecture diagram is a new project-authored current-architecture asset.
assets/VRAM_COMPARISON.md ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Matched P-cache and retained-KV VRAM comparison
2
+
3
+ At the largest measured case, canonical P occupied 2.052 MiB while retained KV
4
+ tensors occupied 193.312 MiB. Canonical P was therefore about 94 times smaller
5
+ as a stored representation in this matched test. The two stores are not
6
+ equivalent. Canonical P keeps structured current facts, while retained KV keeps
7
+ recent token-level attention state.
8
+
9
+ Peak execution memory includes temporary computation. At 1,024 units, the
10
+ incremental peak was 103.491 MiB for P-only and 294.266 MiB for KV-only. These
11
+ peak values should not be confused with the cache tensor sizes above.
12
+
13
+ The comparison uses one frozen Pythia-1.4B model on one NVIDIA GeForce RTX
14
+ 3050 Laptop GPU. Every row uses batch size 1, a float16 base, the same float32
15
+ TTL, greedy generation, eight generated tokens, and the same synthetic prompt
16
+ tokens at each workload size. All mechanisms are warmed once before measurement.
17
+
18
+ `P-cache only` disables retained runtime KV while leaving normal attention
19
+ working memory and the P-cache TTL path active. `KV only` retains model KV and
20
+ disables P-cache. `P-cache plus KV` enables both. This distinguishes the two
21
+ memory systems without claiming that their contents or purposes are
22
+ interchangeable.
23
+
24
+ Here, **retained KV** means token-level key-value tensors kept by the runtime.
25
+ **Incremental peak VRAM** means the additional maximum allocated GPU memory
26
+ above the same warmed model baseline.
27
+
28
+ | Prompt tokens and P slots | Condition | Canonical P | Retained KV | Baseline allocated | Peak allocated | Peak reserved | Incremental peak allocated | Runtime |
29
+ |---:|---|---:|---:|---:|---:|---:|---:|---:|
30
+ | 64 | P-cache only | 0.128 MiB | 0 | 2,717.183 MiB | 2,724.309 MiB | 2,776 MiB | 7.125 MiB | 0.2555 s |
31
+ | 64 | KV only | 0 | 13.312 MiB | 2,717.183 MiB | 2,735.575 MiB | 2,788 MiB | 18.392 MiB | 0.1754 s |
32
+ | 64 | P-cache plus KV | 0.128 MiB | 13.312 MiB | 2,717.183 MiB | 2,735.608 MiB | 2,788 MiB | 18.425 MiB | 0.2045 s |
33
+ | 256 | P-cache only | 0.513 MiB | 0 | 2,717.183 MiB | 2,744.347 MiB | 2,806 MiB | 27.164 MiB | 0.7415 s |
34
+ | 256 | KV only | 0 | 49.312 MiB | 2,717.183 MiB | 2,794.609 MiB | 2,852 MiB | 77.426 MiB | 0.1937 s |
35
+ | 256 | P-cache plus KV | 0.513 MiB | 49.312 MiB | 2,717.183 MiB | 2,794.739 MiB | 2,852 MiB | 77.556 MiB | 0.4156 s |
36
+ | 1,024 | P-cache only | 2.052 MiB | 0 | 2,717.183 MiB | 2,820.674 MiB | 2,938 MiB | 103.491 MiB | 2.7105 s |
37
+ | 1,024 | KV only | 0 | 193.312 MiB | 2,717.183 MiB | 3,011.449 MiB | 3,096 MiB | 294.266 MiB | 0.3753 s |
38
+ | 1,024 | P-cache plus KV | 2.052 MiB | 193.312 MiB | 2,717.183 MiB | 3,011.966 MiB | 3,114 MiB | 294.783 MiB | 1.2812 s |
39
+
40
+ All nine conditions completed. There were no OOM events, failures, fallbacks,
41
+ or estimated values. CUDA peak allocation includes transient attention, router,
42
+ TTL, output, and allocator behavior. Canonical P bytes and retained KV tensor
43
+ bytes are therefore reported separately from peak deltas.
44
+
45
+ Raw measurements are in [`vram-comparison.json`](../artifacts/vram-comparison.json). The generated table is
46
+ `vram_comparison.csv`, and the plot is `vram_comparison.svg`.
assets/architecture.mmd ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ flowchart LR
2
+ subgraph Runtime[Model and runtime owned]
3
+ KV[Recent KV]
4
+ LM[Frozen model]
5
+ EXT[History and tool systems]
6
+ end
7
+ subgraph Planner[Planner Cache owned]
8
+ P[P-cache]
9
+ R[Universal router]
10
+ C{Compatibility boundary}
11
+ N[Native P]
12
+ TTL[.ttl semantic/internal]
13
+ LTL[.ltl lexical/output]
14
+ PKG[P-package .ppkg]
15
+ REVIEW[Hidden post-turn review]
16
+ end
17
+ KV --> LM
18
+ LM -. side-channel after visible reply .-> REVIEW --> P
19
+ P --> R --> C
20
+ C --> N --> LM
21
+ C --> TTL --> LM
22
+ C --> LTL --> LM
23
+ PKG -. selected canonical state .-> R
24
+ EXT -. external evidence .-> LM
assets/architecture.pdf ADDED
Binary file (33.5 kB). View file
 
assets/architecture.svg ADDED
assets/causal_conditions.csv ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ condition,selected_state,router_score,router_accepted,gate,alice_logit,bob_logit,generated,kl_from_base,latency_ms
2
+ frozen_base,,,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,17.4486715994135
3
+ historical,user,5.400981426239014,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,19.347908600320807
4
+ invalidated,,,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,17.60459740035003
5
+ p_cache_only,current-task,-0.30040669441223145,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,19.043124400195666
6
+ p_cache_plus_p_package,user,5.590433597564697,True,0.9909488558769226,40.03125,13.859375, Alice,8.359650611877441,19.569637600216083
7
+ p_package_a_relevant,user,5.590433597564697,True,0.9909488558769226,40.03125,13.859375, Alice,8.359650611877441,19.282742799987318
8
+ p_package_b_relevant,user,5.590433597564697,True,0.9605370163917542,14.0,37.15625, Bob,9.265372276306152,18.934362999425502
9
+ p_package_context_creative,user,5.590433597564697,True,0.9605370163917542,14.0,37.15625, Bob,9.265372276306152,19.85094979972928
10
+ p_package_context_technical,user,5.590433597564697,True,0.9909488558769226,40.03125,13.859375, Alice,8.359650611877441,19.666298399533844
11
+ p_package_contradictory_low_confidence,,,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,17.5312320003286
12
+ p_package_irrelevant,,,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,17.46072020032443
13
+ router_disabled,,,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,17.419308600074146
14
+ translator_disabled,user,5.590433597564697,True,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,18.677392400422832
15
+ translator_oracle_route,user,5.590433597564697,True,0.9909488558769226,40.03125,13.859375, Alice,8.359650611877441,18.915273399761645
16
+ wrong_entity,someone-else,-0.30040669441223145,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,19.29676920044585
17
+ wrong_relation,user,4.078105926513672,False,0.0,7.02734375,6.12109375, able,-1.646096947638398e-08,18.960535999940475
assets/gemma_causal_conditions.csv ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ condition,router_accepted,gate,strength,alice_logit,bob_logit,alice_probability,bob_probability,generated,kl_from_base,max_abs_logit_difference_from_base,latency_ms
2
+ correct_alice,True,1.0,1.999999761581421,26.0793858,0.909999311,0.389850411,4.57059089e-12, Alice,0.604321331,11.1606493,320.229877
3
+ correct_bob,True,1.0,-5.000000476837158,7.2261529,26.6650352,2.57553064e-09,0.712961469, Bob,9.63846737,23.8088799,312.696353
4
+ historical,False,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,404.050531
5
+ invalidated,False,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,338.130937
6
+ p_disabled,False,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,354.148533
7
+ router_disabled,False,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,385.683319
8
+ translator_disabled,True,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,335.948864
9
+ wrong_entity,False,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,321.541691
10
+ wrong_relation,False,0.0,0.0,23.1685543,12.0706482,0.0447660284,6.77936756e-07, the,0,0,328.731662
assets/generate_assets.py ADDED
@@ -0,0 +1,363 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Generate publication assets from recorded Planner Cache artifacts."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import csv
6
+ import hashlib
7
+ import json
8
+ import shutil
9
+ import subprocess
10
+ import tempfile
11
+ from pathlib import Path
12
+
13
+ import cairosvg
14
+
15
+
16
+ ASSETS = Path(__file__).resolve().parent
17
+ PACK_ARTIFACTS = ASSETS.parent / "artifacts"
18
+ ROOT = ASSETS.parent if PACK_ARTIFACTS.is_dir() else ASSETS.parents[1]
19
+ ARTIFACTS = ROOT / "artifacts"
20
+
21
+
22
+ def load(name: str):
23
+ return json.loads((ARTIFACTS / name).read_text())
24
+
25
+
26
+ def sha256(path: Path) -> str:
27
+ digest = hashlib.sha256()
28
+ with path.open("rb") as handle:
29
+ for block in iter(lambda: handle.read(1024 * 1024), b""):
30
+ digest.update(block)
31
+ return digest.hexdigest()
32
+
33
+
34
+ def write_csv(name: str, fields: list[str], rows: list[dict[str, object]]) -> None:
35
+ with (ASSETS / name).open("w", newline="") as handle:
36
+ writer = csv.DictWriter(handle, fieldnames=fields)
37
+ writer.writeheader()
38
+ writer.writerows(rows)
39
+
40
+
41
+ def architecture_svg() -> str:
42
+ return """<svg xmlns="http://www.w3.org/2000/svg" width="1400" height="820" viewBox="0 0 1400 820">
43
+ <defs>
44
+ <marker id="arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#385170"/></marker>
45
+ </defs>
46
+ <rect width="1400" height="820" fill="#f8fafc"/>
47
+ <text x="700" y="54" text-anchor="middle" font-family="Arial,sans-serif" font-size="34" font-weight="700" fill="#12233f">Planner Cache publication architecture</text>
48
+ <text x="700" y="86" text-anchor="middle" font-family="Arial,sans-serif" font-size="18" fill="#50627a">Portable bounded semantic state for frozen language models</text>
49
+ <rect x="45" y="125" width="1310" height="220" rx="22" fill="#edf4fb" stroke="#7da2c8" stroke-width="2"/>
50
+ <text x="75" y="160" font-family="Arial,sans-serif" font-size="20" font-weight="700" fill="#244d76">Model and runtime owned</text>
51
+ <rect x="90" y="195" width="260" height="105" rx="16" fill="#ffffff" stroke="#2c7a7b" stroke-width="3"/>
52
+ <text x="220" y="235" text-anchor="middle" font-family="Arial,sans-serif" font-size="24" font-weight="700" fill="#1f5960">Recent KV</text>
53
+ <text x="220" y="266" text-anchor="middle" font-family="Arial,sans-serif" font-size="16" fill="#50627a">Exact recent wording</text>
54
+ <rect x="570" y="195" width="260" height="105" rx="16" fill="#ffffff" stroke="#315c9b" stroke-width="3"/>
55
+ <text x="700" y="235" text-anchor="middle" font-family="Arial,sans-serif" font-size="24" font-weight="700" fill="#244d76">Frozen model</text>
56
+ <text x="700" y="266" text-anchor="middle" font-family="Arial,sans-serif" font-size="16" fill="#50627a">Pythia and Gemma proof paths</text>
57
+ <rect x="1050" y="195" width="260" height="105" rx="16" fill="#ffffff" stroke="#6856a5" stroke-width="3"/>
58
+ <text x="1180" y="229" text-anchor="middle" font-family="Arial,sans-serif" font-size="22" font-weight="700" fill="#55428e">History and tools</text>
59
+ <text x="1180" y="259" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Archive and retrieval systems</text>
60
+ <text x="1180" y="282" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Outside Planner Cache core</text>
61
+ <rect x="45" y="390" width="1310" height="350" rx="22" fill="#fff7ed" stroke="#cf8a49" stroke-width="2"/>
62
+ <text x="75" y="425" font-family="Arial,sans-serif" font-size="20" font-weight="700" fill="#91501e">Planner Cache owned</text>
63
+ <rect x="85" y="442" width="245" height="32" rx="12" fill="#fffdf8" stroke="#b36a2e" stroke-width="2" stroke-dasharray="7 5"/>
64
+ <text x="207" y="464" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" font-weight="700" fill="#8f4d1e">Hidden post-turn review</text>
65
+ <rect x="85" y="485" width="245" height="125" rx="16" fill="#ffffff" stroke="#b36a2e" stroke-width="3"/>
66
+ <text x="207" y="527" text-anchor="middle" font-family="Arial,sans-serif" font-size="25" font-weight="700" fill="#8f4d1e">P-cache</text>
67
+ <text x="207" y="558" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Bounded mutable state</text>
68
+ <text x="207" y="582" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Canonical P protocol</text>
69
+ <rect x="405" y="485" width="245" height="125" rx="16" fill="#ffffff" stroke="#3e7c59" stroke-width="3"/>
70
+ <text x="527" y="527" text-anchor="middle" font-family="Arial,sans-serif" font-size="25" font-weight="700" fill="#2d6848">Universal router</text>
71
+ <text x="527" y="558" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Canonical selection</text>
72
+ <text x="527" y="582" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Model independent</text>
73
+ <rect x="725" y="485" width="245" height="125" rx="16" fill="#ffffff" stroke="#315c9b" stroke-width="3"/>
74
+ <text x="847" y="527" text-anchor="middle" font-family="Arial,sans-serif" font-size="25" font-weight="700" fill="#244d76">.ttl / .ltl</text>
75
+ <text x="847" y="558" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Compatibility boundary</text>
76
+ <text x="847" y="582" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Semantic / lexical</text>
77
+ <rect x="1045" y="485" width="245" height="125" rx="16" fill="#ffffff" stroke="#6856a5" stroke-width="3"/>
78
+ <text x="1167" y="527" text-anchor="middle" font-family="Arial,sans-serif" font-size="25" font-weight="700" fill="#55428e">P-package</text>
79
+ <text x="1167" y="558" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Disk resident personality</text>
80
+ <text x="1167" y="582" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#50627a">Portable .ppkg</text>
81
+ <path d="M 330 548 L 395 548" stroke="#385170" stroke-width="4" fill="none" marker-end="url(#arrow)"/>
82
+ <path d="M 207 474 L 207 482" stroke="#b36a2e" stroke-width="3" fill="none" marker-end="url(#arrow)"/>
83
+ <path d="M 700 300 C 650 375 350 385 225 439" stroke="#b36a2e" stroke-width="2" stroke-dasharray="8 6" fill="none" marker-end="url(#arrow)"/>
84
+ <path d="M 650 548 L 715 548" stroke="#385170" stroke-width="4" fill="none" marker-end="url(#arrow)"/>
85
+ <path d="M 1045 620 C 930 695 585 695 527 620" stroke="#6856a5" stroke-width="3" stroke-dasharray="10 7" fill="none" marker-end="url(#arrow)"/>
86
+ <path d="M 847 485 C 820 405 755 335 710 302" stroke="#315c9b" stroke-width="4" fill="none" marker-end="url(#arrow)"/>
87
+ <path d="M 350 247 L 558 247" stroke="#2c7a7b" stroke-width="3" fill="none" marker-end="url(#arrow)"/>
88
+ <text x="700" y="782" text-anchor="middle" font-family="Arial,sans-serif" font-size="16" fill="#50627a">Canonical files never store base weights, token IDs, conversation text, or model-native hidden vectors</text>
89
+ </svg>
90
+ """
91
+
92
+
93
+ def line_plot_svg(title: str, subtitle: str, series: list[tuple[str, str, list[tuple[float, float]]]], x_label: str, y_label: str) -> str:
94
+ width = 1100
95
+ height = 650
96
+ left = 105
97
+ right = 55
98
+ top = 115
99
+ bottom = 90
100
+ plot_width = width - left - right
101
+ plot_height = height - top - bottom
102
+ all_x = [x for _, _, points in series for x, _ in points]
103
+ all_y = [y for _, _, points in series for _, y in points]
104
+ x_min = min(all_x)
105
+ x_max = max(all_x)
106
+ y_min = min(0.0, min(all_y))
107
+ y_max = max(all_y) * 1.08
108
+
109
+ def px(value: float) -> float:
110
+ return left + (value - x_min) / (x_max - x_min) * plot_width
111
+
112
+ def py(value: float) -> float:
113
+ return top + plot_height - (value - y_min) / (y_max - y_min) * plot_height
114
+
115
+ parts = [f'<svg xmlns="http://www.w3.org/2000/svg" width="{width}" height="{height}" viewBox="0 0 {width} {height}">']
116
+ parts.append('<rect width="1100" height="650" fill="#ffffff"/>')
117
+ parts.append(f'<text x="550" y="42" text-anchor="middle" font-family="Arial,sans-serif" font-size="28" font-weight="700" fill="#12233f">{title}</text>')
118
+ parts.append(f'<text x="550" y="72" text-anchor="middle" font-family="Arial,sans-serif" font-size="16" fill="#50627a">{subtitle}</text>')
119
+ for tick in range(6):
120
+ value = y_min + (y_max - y_min) * tick / 5
121
+ y = py(value)
122
+ parts.append(f'<line x1="{left}" y1="{y:.2f}" x2="{width-right}" y2="{y:.2f}" stroke="#dbe4ee" stroke-width="1"/>')
123
+ parts.append(f'<text x="{left-12}" y="{y+5:.2f}" text-anchor="end" font-family="Arial,sans-serif" font-size="13" fill="#50627a">{value:.1f}</text>')
124
+ x_ticks = sorted(set(all_x))
125
+ for value in x_ticks:
126
+ x = px(value)
127
+ parts.append(f'<line x1="{x:.2f}" y1="{top}" x2="{x:.2f}" y2="{top+plot_height}" stroke="#eef2f7" stroke-width="1"/>')
128
+ parts.append(f'<text x="{x:.2f}" y="{top+plot_height+27}" text-anchor="middle" font-family="Arial,sans-serif" font-size="13" fill="#50627a">{int(value)}</text>')
129
+ parts.append(f'<line x1="{left}" y1="{top+plot_height}" x2="{width-right}" y2="{top+plot_height}" stroke="#385170" stroke-width="2"/>')
130
+ parts.append(f'<line x1="{left}" y1="{top}" x2="{left}" y2="{top+plot_height}" stroke="#385170" stroke-width="2"/>')
131
+ for index, (label, color, points) in enumerate(series):
132
+ coordinates = " ".join(f"{px(x):.2f},{py(y):.2f}" for x, y in points)
133
+ parts.append(f'<polyline points="{coordinates}" fill="none" stroke="{color}" stroke-width="4"/>')
134
+ for x, y in points:
135
+ parts.append(f'<circle cx="{px(x):.2f}" cy="{py(y):.2f}" r="5" fill="{color}"/>')
136
+ legend_x = left + index * 280
137
+ parts.append(f'<line x1="{legend_x}" y1="{height-30}" x2="{legend_x+32}" y2="{height-30}" stroke="{color}" stroke-width="4"/>')
138
+ parts.append(f'<text x="{legend_x+42}" y="{height-25}" font-family="Arial,sans-serif" font-size="14" fill="#28384e">{label}</text>')
139
+ parts.append(f'<text x="{left+plot_width/2}" y="{height-55}" text-anchor="middle" font-family="Arial,sans-serif" font-size="15" fill="#28384e">{x_label}</text>')
140
+ parts.append(f'<text x="28" y="{top+plot_height/2}" text-anchor="middle" transform="rotate(-90 28 {top+plot_height/2})" font-family="Arial,sans-serif" font-size="15" fill="#28384e">{y_label}</text>')
141
+ parts.append('</svg>')
142
+ return "\n".join(parts) + "\n"
143
+
144
+
145
+ def main() -> None:
146
+ audit = load("active-system-audit.json")
147
+ cuda = load("active-system-cuda-attribution.json")
148
+ split = load("phase-b-split-translator.json")
149
+ personality = load("phase-b-personality-package.json")
150
+ gemma = load("gemma4-e4b-q8-causal.json")
151
+ vram = load("vram-comparison.json")
152
+
153
+ router_rows = []
154
+ for count, values in sorted(audit["router_scaling"]["measurements"].items(), key=lambda item: int(item[0])):
155
+ router_rows.append({
156
+ "slots": int(count),
157
+ "top1_accuracy": values["top1_accuracy"],
158
+ "top4_recall": values["top4_recall"],
159
+ "mrr": values["mrr"],
160
+ "routing_latency_ms": values["latency_seconds"] * 1000,
161
+ })
162
+ write_csv("router_scaling.csv", list(router_rows[0]), router_rows)
163
+
164
+ ppkg_rows = []
165
+ for count, values in sorted(audit["ppkg_scaling"].items(), key=lambda item: int(item[0])):
166
+ ppkg_rows.append({
167
+ "entries": int(count),
168
+ "disk_bytes": values["disk_bytes"],
169
+ "checksum_ms": values["checksum_seconds"] * 1000,
170
+ "db_open_ms": values["db_open_seconds"] * 1000,
171
+ "routing_header_ms": values["routing_header_wall_seconds"] * 1000,
172
+ "row_hydration_ms": values["row_hydration_wall_seconds"] * 1000,
173
+ "canonical_conversion_ms": values["canonical_conversion_wall_seconds"] * 1000,
174
+ "candidate_headers": values["candidate_headers"],
175
+ "entries_loaded": values["entries_loaded"],
176
+ "logical_bytes_read": values["logical_bytes_read"],
177
+ "inactive_vram_bytes": values["inactive_vram_bytes"],
178
+ })
179
+ write_csv("ppkg_scaling.csv", list(ppkg_rows[0]), ppkg_rows)
180
+
181
+ causal_rows = []
182
+ for condition, values in cuda["causal"].items():
183
+ causal_rows.append({
184
+ "condition": condition,
185
+ "selected_state": values["selected_state"] or "",
186
+ "router_score": "" if values["router_score"] is None else values["router_score"],
187
+ "router_accepted": values["router_accepted"],
188
+ "gate": values["gate"],
189
+ "alice_logit": values["alice_logit"],
190
+ "bob_logit": values["bob_logit"],
191
+ "generated": values["generated"].replace("\n", "\\n"),
192
+ "kl_from_base": values["kl_from_base"],
193
+ "latency_ms": cuda["latency_seconds"][condition] * 1000,
194
+ })
195
+ write_csv("causal_conditions.csv", list(causal_rows[0]), causal_rows)
196
+
197
+ gemma_rows = []
198
+ for condition, values in gemma["conditions"].items():
199
+ gemma_rows.append({
200
+ "condition": condition,
201
+ "router_accepted": values["router_accepted"],
202
+ "gate": values["gate"],
203
+ "strength": values["strength"],
204
+ "alice_logit": values["alice_logit"],
205
+ "bob_logit": values["bob_logit"],
206
+ "alice_probability": values["alice_probability"],
207
+ "bob_probability": values["bob_probability"],
208
+ "generated": values["generated"].replace("\n", "\\n"),
209
+ "kl_from_base": values["kl_from_base"],
210
+ "max_abs_logit_difference_from_base": values["max_abs_logit_difference_from_base"],
211
+ "latency_ms": values["latency_ms"],
212
+ })
213
+ write_csv("gemma_causal_conditions.csv", list(gemma_rows[0]), gemma_rows)
214
+
215
+ vram_rows = []
216
+ for values in vram["results"]:
217
+ vram_rows.append({
218
+ "workload_tokens": values["prompt_tokens"],
219
+ "condition": values["condition"],
220
+ "generated_tokens": values["generated_tokens"],
221
+ "p_cache_slots": values["p_cache_slots"],
222
+ "p_cache_canonical_bytes": values["p_cache_canonical_bytes"],
223
+ "retained_kv_cache_bytes": values["retained_kv_cache_bytes"],
224
+ "baseline_allocated_bytes": values["baseline_allocated_bytes"],
225
+ "peak_allocated_bytes": values["peak_allocated_bytes"],
226
+ "peak_reserved_bytes": values["peak_reserved_bytes"],
227
+ "incremental_peak_allocated_bytes": values["incremental_peak_allocated_bytes"],
228
+ "incremental_peak_reserved_bytes": values["incremental_peak_reserved_bytes"],
229
+ "runtime_seconds": values["runtime_seconds"],
230
+ "failure": "" if values["failure"] is None else values["failure"]["type"],
231
+ })
232
+ write_csv("vram_comparison.csv", list(vram_rows[0]), vram_rows)
233
+
234
+ architecture = architecture_svg()
235
+ (ASSETS / "architecture.svg").write_text(architecture)
236
+ qpdf = shutil.which("qpdf")
237
+ if qpdf is None:
238
+ raise RuntimeError("qpdf is required to normalize publication PDF metadata")
239
+ with tempfile.TemporaryDirectory(prefix="planner-cache-publishing-") as temporary:
240
+ raw_pdf = Path(temporary) / "architecture.raw.pdf"
241
+ cairosvg.svg2pdf(bytestring=architecture.encode(), write_to=str(raw_pdf))
242
+ subprocess.run(
243
+ [qpdf, "--remove-info", "--remove-metadata", "--deterministic-id", str(raw_pdf), str(ASSETS / "architecture.pdf")],
244
+ check=True,
245
+ )
246
+ (ASSETS / "architecture.mmd").write_text("""flowchart LR
247
+ subgraph Runtime[Model and runtime owned]
248
+ KV[Recent KV]
249
+ LM[Frozen model]
250
+ EXT[History and tool systems]
251
+ end
252
+ subgraph Planner[Planner Cache owned]
253
+ P[P-cache]
254
+ R[Universal router]
255
+ C{Compatibility boundary}
256
+ N[Native P]
257
+ TTL[.ttl semantic/internal]
258
+ LTL[.ltl lexical/output]
259
+ PKG[P-package .ppkg]
260
+ REVIEW[Hidden post-turn review]
261
+ end
262
+ KV --> LM
263
+ LM -. side-channel after visible reply .-> REVIEW --> P
264
+ P --> R --> C
265
+ C --> N --> LM
266
+ C --> TTL --> LM
267
+ C --> LTL --> LM
268
+ PKG -. selected canonical state .-> R
269
+ EXT -. external evidence .-> LM
270
+ """)
271
+
272
+ router_points = [(float(row["slots"]), float(row["top1_accuracy"]) * 100) for row in router_rows]
273
+ legacy = audit["router_scaling"]["immutable_pre_fix_baseline"]
274
+ legacy_points = [(float(key), float(value) * 100) for key, value in sorted(legacy.items(), key=lambda item: int(item[0]))]
275
+ (ASSETS / "router_scaling.svg").write_text(line_plot_svg(
276
+ "Canonical router scaling",
277
+ "Post-audit identity-safe storage compared with the immutable pre-fix baseline",
278
+ [("Post-audit top-1", "#2c7a7b", router_points), ("Pre-fix top-1", "#b36a2e", legacy_points)],
279
+ "Configured P slots",
280
+ "Top-1 accuracy percent",
281
+ ))
282
+
283
+ ppkg_points = [(float(row["entries"]), float(row["routing_header_ms"])) for row in ppkg_rows]
284
+ (ASSETS / "ppkg_lookup.svg").write_text(line_plot_svg(
285
+ "P-package indexed lookup",
286
+ "Bounded header routing while package contents grow on disk",
287
+ [("Routing header latency", "#6856a5", ppkg_points)],
288
+ "Package entries",
289
+ "Latency ms",
290
+ ))
291
+
292
+ condition_labels = (
293
+ ("p_cache_only", "P-cache only", "#b36a2e"),
294
+ ("kv_only", "Retained KV only", "#2c7a7b"),
295
+ ("p_cache_plus_kv", "P-cache plus KV", "#6856a5"),
296
+ )
297
+ vram_series = []
298
+ for condition, label, color in condition_labels:
299
+ points = [
300
+ (
301
+ float(row["workload_tokens"]),
302
+ float(row["incremental_peak_allocated_bytes"]) / (1024 * 1024),
303
+ )
304
+ for row in vram_rows if row["condition"] == condition
305
+ ]
306
+ vram_series.append((label, color, points))
307
+ (ASSETS / "vram_comparison.svg").write_text(line_plot_svg(
308
+ "Matched P-cache and retained-KV VRAM",
309
+ "Frozen Pythia-1.4B, batch 1, float16 base, 8 greedy generated tokens",
310
+ vram_series,
311
+ "Prompt tokens and configured P slots",
312
+ "Incremental peak allocated MiB",
313
+ ))
314
+
315
+ manifest = {
316
+ "generated_from": {
317
+ name: sha256(ARTIFACTS / name)
318
+ for name in (
319
+ "active-system-audit.json",
320
+ "active-system-cuda-attribution.json",
321
+ "phase-b-factorized-representation.json",
322
+ "phase-b-personality-package.json",
323
+ "phase-b-split-translator.json",
324
+ "ppkg-100k-profile.json",
325
+ "gemma4-e4b-q8-causal.json",
326
+ "gemma-native-prompt-equivalence.json",
327
+ "post-turn-memory-review-acceptance.json",
328
+ "debug-actions-profile.json",
329
+ "vram-comparison.json",
330
+ )
331
+ },
332
+ "public_binary_artifacts": {
333
+ name: sha256(ARTIFACTS / name)
334
+ for name in (
335
+ "canonical-p-v1.router",
336
+ "pythia-1.4b-final-layer.ttl",
337
+ "personality-proof.ppkg",
338
+ "gemma4-e4b-q8-llama.ltl",
339
+ )
340
+ },
341
+ "selected_configuration": {
342
+ "base_model": cuda["base_model"],
343
+ "ttl_parameters": (
344
+ audit["ttl_profile"]["cpu"]["parameter_count"]
345
+ if "ttl_profile" in audit
346
+ else audit["translate_profile"]["cpu"]["parameter_count"]
347
+ ),
348
+ "canonical_protocol": "pcm-canonical-p-v1",
349
+ "router_format": "pcm-canonical-router-v1",
350
+ "ttl_format": "planner-cache-ttl-v1",
351
+ "ppkg_format": personality["format"],
352
+ "ppkg_protocol": personality["protocol"],
353
+ "selected_attachment": split["selected_variant"],
354
+ "gemma_model": gemma["model"]["name"],
355
+ "gemma_ltl_format": "planner-cache-ltl-v1",
356
+ "gemma_ltl_parameters": 0,
357
+ },
358
+ }
359
+ (ASSETS / "EVIDENCE_MANIFEST.json").write_text(json.dumps(manifest, indent=2, sort_keys=True) + "\n")
360
+
361
+
362
+ if __name__ == "__main__":
363
+ main()
assets/ppkg_lookup.svg ADDED
assets/ppkg_scaling.csv ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ entries,disk_bytes,checksum_ms,db_open_ms,routing_header_ms,row_hydration_ms,canonical_conversion_ms,candidate_headers,entries_loaded,logical_bytes_read,inactive_vram_bytes
2
+ 100,118784,1.0304470015398692,0.20484400010900572,2.207458997872891,0.11649800217128359,0.5500090010173153,4,4,2789,0
3
+ 1000,638976,8.523084998159902,0.2957940014312044,14.324849998956779,0.1179409991891589,0.4913600023428444,33,4,6855,0
4
+ 10000,5894144,83.29692499683006,0.28353100060485303,57.26086499998928,0.11310199988656677,0.5099939990031999,130,4,20616,0
5
+ 100000,58720256,823.8876559989876,0.549067000974901,67.10040300094988,0.11752000136766583,0.4947460001858417,152,4,23715,0
assets/router_scaling.csv ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ slots,top1_accuracy,top4_recall,mrr,routing_latency_ms
2
+ 4,1.0,1.0,1.0,0.35979299718746915
3
+ 20,1.0,1.0,1.0,0.3294770031061489
4
+ 64,1.0,1.0,1.0,0.33151000025100075
5
+ 128,1.0,1.0,1.0,0.3642720002972055
6
+ 256,1.0,1.0,1.0,0.39848600135883316
7
+ 512,1.0,1.0,1.0,0.4960180012858473
8
+ 1024,1.0,1.0,1.0,0.6750829998054542
assets/router_scaling.svg ADDED
assets/vram_comparison.csv ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ workload_tokens,condition,generated_tokens,p_cache_slots,p_cache_canonical_bytes,retained_kv_cache_bytes,baseline_allocated_bytes,peak_allocated_bytes,peak_reserved_bytes,incremental_peak_allocated_bytes,incremental_peak_reserved_bytes,runtime_seconds,failure
2
+ 64,p_cache_only,8,64,134464,0,2849172992,2856644608,2910846976,7471616,4194304,0.2554637499997625,
3
+ 64,kv_only,8,0,0,13959168,2849172992,2868457984,2923429888,19284992,16777216,0.17538804200012237,
4
+ 64,p_cache_plus_kv,8,64,134464,13959168,2849172992,2868492800,2923429888,19319808,16777216,0.20454967800469603,
5
+ 256,p_cache_only,8,256,537856,0,2849172992,2877656576,2942304256,28483584,35651584,0.7414951529935934,
6
+ 256,kv_only,8,0,0,51707904,2849172992,2930360320,2990538752,81187328,83886080,0.19367339000746142,
7
+ 256,p_cache_plus_kv,8,256,537856,51707904,2849172992,2930496512,2990538752,81323520,83886080,0.41562580699974205,
8
+ 1024,p_cache_only,8,1024,2151424,0,2849172992,2957690880,3080716288,108517888,174063616,2.710468404009589,
9
+ 1024,kv_only,8,0,0,202702848,2849172992,3157732864,3246391296,308559872,339738624,0.37531103400397114,
10
+ 1024,p_cache_plus_kv,8,1024,2151424,202702848,2849172992,3158275072,3265265664,309102080,358612992,1.2812230650015408,
assets/vram_comparison.svg ADDED
pyproject.toml ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [build-system]
2
+ requires = ["setuptools>=77"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "planner-cache"
7
+ version = "0.1.0"
8
+ description = "Canonical Planner Cache, compatibility layers, and durable personality packages"
9
+ requires-python = ">=3.11"
10
+ dependencies = [
11
+ "accelerate>=1.12",
12
+ "numpy>=2.0",
13
+ "safetensors>=0.5",
14
+ "torch>=2.7",
15
+ "transformers>=5.15",
16
+ ]
17
+
18
+ [project.optional-dependencies]
19
+ dev = ["pytest>=9"]
20
+ publishing = ["cairosvg>=2.7"]
21
+
22
+ [tool.setuptools.packages.find]
23
+ where = ["src"]
24
+
25
+ [tool.pytest.ini_options]
26
+ testpaths = ["tests"]
27
+ pythonpath = ["src"]
28
+ addopts = "-ra"
29
+ markers = [
30
+ "slow_cuda: exact CUDA integration regressions using production-scale models",
31
+ ]
src/pcm/__init__.py ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ """Context-efficient adaptive proof model."""
2
+
3
+ __version__ = "0.1.0"
4
+
src/pcm/planner/__init__.py ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Active Planner Cache architecture exports only."""
2
+
3
+ from pcm.planner.cache import (
4
+ CacheFullProtectedError,
5
+ Freshness,
6
+ Persistence,
7
+ PlannerCache,
8
+ PlannerCacheConfig,
9
+ SlotSource,
10
+ SlotType,
11
+ StateOperation,
12
+ )
13
+ from pcm.planner.canonical import (
14
+ CANONICAL_P_PROTOCOL,
15
+ CANONICAL_VALUE_LABELS,
16
+ CanonicalPConfig,
17
+ CanonicalPStore,
18
+ model_config_checksum,
19
+ )
20
+ from pcm.planner.compatibility import (
21
+ CompatibilityKind,
22
+ CompatibilityResolution,
23
+ LTL_EXTENSION,
24
+ LTL_FORMAT,
25
+ TTL_EXTENSION,
26
+ TTL_FORMAT,
27
+ LexicalTranslationConfig,
28
+ LexicalTranslationLayer,
29
+ TensorTranslationLayer,
30
+ classify_compatibility_artifact,
31
+ resolve_compatibility,
32
+ tokenizer_bundle_checksum,
33
+ )
34
+ from pcm.planner.personality import (
35
+ EvidenceAuthority,
36
+ EvidenceRecord,
37
+ FactorizedPersonalityCanonicalizer,
38
+ PPKG_FORMAT,
39
+ PPKG_PROTOCOL,
40
+ PersonalityActivation,
41
+ PersonalityEntry,
42
+ PersonalityPackage,
43
+ PersonalityQuery,
44
+ PersonalityRouter,
45
+ PersonalitySelection,
46
+ PersonalityStatus,
47
+ PersonalityTranslateSession,
48
+ PersonalityType,
49
+ PromotionDecision,
50
+ PromotionPolicy,
51
+ evidence_from_p_cache,
52
+ merge_active_personality_with_p_cache,
53
+ )
54
+ from pcm.planner.pythia_split_translate import (
55
+ PythiaSplitTranslatedModel,
56
+ pythia_model_identifier,
57
+ )
58
+ from pcm.planner.interactive_session import (
59
+ CanonicalQueryIntent,
60
+ CanonicalStateManager,
61
+ MutationIntent,
62
+ PersonalityManager,
63
+ SessionRecorder,
64
+ )
65
+ from pcm.planner.memory_review import (
66
+ MEMORY_REVIEW_SCHEMA,
67
+ REVIEW_CONFIDENCE_FLOOR,
68
+ REVIEW_FORMAT,
69
+ PostTurnMemoryReviewer,
70
+ ReviewedOperation,
71
+ ValidatedReview,
72
+ parse_review,
73
+ review_prompt,
74
+ validate_review,
75
+ )
76
+ from pcm.planner.interactive_runtimes import (
77
+ GemmaInteractiveRuntime,
78
+ GenerationResult,
79
+ LlamaServerProcess,
80
+ PythiaInteractiveRuntime,
81
+ gemma_chat_request_body,
82
+ )
83
+ from pcm.planner.split_translator import (
84
+ ByteEntityEncoder,
85
+ CanonicalPRouter,
86
+ CanonicalValueTranslator,
87
+ FactorizedCanonicalQuery,
88
+ FrozenLexicalAnchorProjector,
89
+ ModelToCanonicalQueryProjector,
90
+ RouterConfig,
91
+ SplitInjectionGate,
92
+ SplitPTranslatePackage,
93
+ SplitTranslateConfig,
94
+ )
95
+
96
+ __all__ = [name for name in globals() if not name.startswith("_")]
src/pcm/planner/cache.py ADDED
@@ -0,0 +1,377 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Fixed-allocation first-class planner state cache."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from dataclasses import dataclass
6
+ from enum import IntEnum
7
+ import math
8
+ from typing import Iterable
9
+
10
+ import torch
11
+ from torch import Tensor
12
+ import torch.nn.functional as F
13
+
14
+
15
+ class StateOperation(IntEnum):
16
+ KEEP = 0
17
+ CREATE = 1
18
+ MODIFY = 2
19
+ MERGE = 3
20
+ INVALIDATE = 4
21
+ IGNORE = 5
22
+
23
+
24
+ class SlotType(IntEnum):
25
+ GOAL = 0
26
+ ENTITY = 1
27
+ FACT = 2
28
+ HYPOTHESIS = 3
29
+ CONSTRAINT = 4
30
+ TASK = 5
31
+ LATENT = 6
32
+ EXTERNAL = 7
33
+
34
+
35
+ class Freshness(IntEnum):
36
+ FRESH = 0
37
+ STALE = 1
38
+ UNKNOWN = 2
39
+
40
+
41
+ class Persistence(IntEnum):
42
+ PERMANENT = 0
43
+ DURABLE = 1
44
+ SESSION = 2
45
+ EXTERNAL = 3
46
+ VOLATILE = 4
47
+
48
+
49
+ class SlotSource(IntEnum):
50
+ CONVERSATION = 0
51
+ RETRIEVAL = 1
52
+ CORRECTION = 2
53
+ TOOL = 3
54
+ INFERENCE = 4
55
+
56
+
57
+ class CacheFullProtectedError(RuntimeError):
58
+ """Raised when every physical slot is occupied by permanent state."""
59
+
60
+
61
+ @dataclass(frozen=True)
62
+ class PlannerCacheConfig:
63
+ slots: int = 128
64
+ width: int = 512
65
+ dtype: torch.dtype = torch.float16
66
+ device: str | torch.device = "cpu"
67
+ merge_similarity: float = 0.92
68
+
69
+ def __post_init__(self) -> None:
70
+ if self.slots <= 0 or self.width <= 0:
71
+ raise ValueError("planner slots and width must be positive")
72
+ if not -1.0 <= self.merge_similarity <= 1.0:
73
+ raise ValueError("merge_similarity must be between -1 and 1")
74
+
75
+
76
+ class PlannerCache:
77
+ """Preallocated planner values and metadata mutated strictly in place."""
78
+
79
+ def __init__(self, config: PlannerCacheConfig) -> None:
80
+ self.config = config
81
+ device = torch.device(config.device)
82
+ self.values = torch.zeros((config.slots, config.width), dtype=config.dtype, device=device)
83
+ self.valid = torch.zeros(config.slots, dtype=torch.bool, device=device)
84
+ self.slot_type = torch.full((config.slots,), int(SlotType.LATENT), dtype=torch.int8, device=device)
85
+ self.confidence = torch.zeros(config.slots, dtype=torch.float32, device=device)
86
+ self.importance = torch.zeros(config.slots, dtype=torch.float32, device=device)
87
+ self.freshness = torch.full((config.slots,), int(Freshness.UNKNOWN), dtype=torch.int8, device=device)
88
+ self.persistence = torch.full((config.slots,), int(Persistence.VOLATILE), dtype=torch.int8, device=device)
89
+ self.last_updated = torch.zeros(config.slots, dtype=torch.int64, device=device)
90
+ self.source = torch.full((config.slots,), int(SlotSource.INFERENCE), dtype=torch.int8, device=device)
91
+ self.labels: list[str | None] = [None] * config.slots
92
+ self._clock = 0
93
+
94
+ @property
95
+ def device(self) -> torch.device:
96
+ return self.values.device
97
+
98
+ def allocation_signature(self) -> tuple[tuple[int, tuple[int, ...]], ...]:
99
+ """Stable identity/shape signature for physical-allocation tests."""
100
+ tensors = (
101
+ self.values,
102
+ self.valid,
103
+ self.slot_type,
104
+ self.confidence,
105
+ self.importance,
106
+ self.freshness,
107
+ self.persistence,
108
+ self.last_updated,
109
+ self.source,
110
+ )
111
+ return tuple((tensor.data_ptr(), tuple(tensor.shape)) for tensor in tensors)
112
+
113
+ @property
114
+ def occupied(self) -> int:
115
+ return int(self.valid.sum().item())
116
+
117
+ def _tick(self) -> int:
118
+ self._clock += 1
119
+ return self._clock
120
+
121
+ def _value(self, value: Tensor) -> Tensor:
122
+ value = value.detach().to(device=self.device, dtype=self.config.dtype)
123
+ if value.shape != (self.config.width,):
124
+ raise ValueError(f"planner value must have shape ({self.config.width},)")
125
+ return value
126
+
127
+ def _require_valid(self, index: int) -> None:
128
+ if not 0 <= index < self.config.slots or not bool(self.valid[index]):
129
+ raise IndexError(f"planner slot {index} is not valid")
130
+
131
+ def _write_metadata(
132
+ self,
133
+ index: int,
134
+ *,
135
+ slot_type: SlotType,
136
+ confidence: float,
137
+ importance: float,
138
+ freshness: Freshness,
139
+ persistence: Persistence,
140
+ source: SlotSource,
141
+ label: str | None,
142
+ ) -> None:
143
+ self._validate_score("confidence", confidence)
144
+ self._validate_score("importance", importance)
145
+ slot_type = SlotType(slot_type)
146
+ freshness = Freshness(freshness)
147
+ persistence = Persistence(persistence)
148
+ source = SlotSource(source)
149
+ if label is not None and not isinstance(label, str):
150
+ raise TypeError("planner label must be a string or None")
151
+ self.slot_type[index] = int(slot_type)
152
+ self.confidence[index] = confidence
153
+ self.importance[index] = importance
154
+ self.freshness[index] = int(freshness)
155
+ self.persistence[index] = int(persistence)
156
+ self.source[index] = int(source)
157
+ self.last_updated[index] = self._tick()
158
+ self.labels[index] = label
159
+ self.valid[index] = True
160
+
161
+ @staticmethod
162
+ def _validate_score(name: str, value: float) -> None:
163
+ if not isinstance(value, (int, float)) or not math.isfinite(float(value)):
164
+ raise ValueError(f"{name} must be a finite number in [0, 1]")
165
+ if not 0.0 <= float(value) <= 1.0:
166
+ raise ValueError(f"{name} must be in [0, 1]")
167
+
168
+ def _merge_candidate(
169
+ self, value: Tensor, slot_type: SlotType, merge_mask: Tensor | None = None
170
+ ) -> int | None:
171
+ compatible = self.valid & (self.slot_type == int(slot_type))
172
+ if merge_mask is not None:
173
+ merge_mask = merge_mask.detach().to(device=self.device, dtype=torch.bool)
174
+ if merge_mask.shape != self.valid.shape:
175
+ raise ValueError("merge mask must match the planner slot shape")
176
+ compatible &= merge_mask
177
+ indices = compatible.nonzero(as_tuple=False).flatten()
178
+ if indices.numel() == 0:
179
+ return None
180
+ candidates = self.values.index_select(0, indices).float()
181
+ similarities = F.cosine_similarity(candidates, value.float().unsqueeze(0), dim=-1)
182
+ best = int(similarities.argmax().item())
183
+ if float(similarities[best]) < self.config.merge_similarity:
184
+ return None
185
+ return int(indices[best].item())
186
+
187
+ def _eviction_candidate(self) -> int:
188
+ candidates = self.valid & (self.persistence != int(Persistence.PERMANENT))
189
+ indices = candidates.nonzero(as_tuple=False).flatten()
190
+ if indices.numel() == 0:
191
+ raise CacheFullProtectedError("all planner slots are permanent")
192
+ age = (self._clock + 1 - self.last_updated.index_select(0, indices)).float()
193
+ stale_bonus = (self.freshness.index_select(0, indices) != int(Freshness.FRESH)).float()
194
+ persistence_cost = torch.tensor(
195
+ [4.0, 3.0, 2.0, 1.0, 0.0], device=self.device
196
+ ).index_select(0, self.persistence.index_select(0, indices).long())
197
+ keep_score = (
198
+ 4.0 * self.importance.index_select(0, indices)
199
+ + self.confidence.index_select(0, indices)
200
+ + persistence_cost
201
+ - stale_bonus
202
+ - age * 1e-6
203
+ )
204
+ return int(indices[int(keep_score.argmin().item())].item())
205
+
206
+ @staticmethod
207
+ def _admission_score(
208
+ *,
209
+ importance: float,
210
+ confidence: float,
211
+ freshness: Freshness,
212
+ persistence: Persistence,
213
+ ) -> float:
214
+ persistence_cost = (4.0, 3.0, 2.0, 1.0, 0.0)[int(persistence)]
215
+ stale_cost = 0.0 if freshness == Freshness.FRESH else 1.0
216
+ return 4.0 * importance + confidence + persistence_cost - stale_cost
217
+
218
+ def _slot_admission_score(self, index: int) -> float:
219
+ age = (self._clock + 1 - int(self.last_updated[index])) * 1e-6
220
+ return self._admission_score(
221
+ importance=float(self.importance[index]),
222
+ confidence=float(self.confidence[index]),
223
+ freshness=Freshness(int(self.freshness[index])),
224
+ persistence=Persistence(int(self.persistence[index])),
225
+ ) - age
226
+
227
+ def create(
228
+ self,
229
+ value: Tensor,
230
+ *,
231
+ slot_type: SlotType = SlotType.LATENT,
232
+ confidence: float = 1.0,
233
+ importance: float = 0.5,
234
+ freshness: Freshness = Freshness.FRESH,
235
+ persistence: Persistence = Persistence.SESSION,
236
+ source: SlotSource = SlotSource.CONVERSATION,
237
+ label: str | None = None,
238
+ merge_mask: Tensor | None = None,
239
+ ) -> tuple[int, StateOperation]:
240
+ value = self._value(value)
241
+ self._validate_score("confidence", confidence)
242
+ self._validate_score("importance", importance)
243
+ slot_type = SlotType(slot_type)
244
+ freshness = Freshness(freshness)
245
+ persistence = Persistence(persistence)
246
+ source = SlotSource(source)
247
+ merge_index = self._merge_candidate(value, slot_type, merge_mask)
248
+ if merge_index is not None:
249
+ self.merge((merge_index,), value=value, confidence=confidence, source=source)
250
+ self.importance[merge_index] = max(
251
+ float(self.importance[merge_index]), importance
252
+ )
253
+ self.persistence[merge_index] = min(
254
+ int(self.persistence[merge_index]), int(persistence)
255
+ )
256
+ if label is not None:
257
+ self.labels[merge_index] = label
258
+ return merge_index, StateOperation.MERGE
259
+ free = (~self.valid).nonzero(as_tuple=False).flatten()
260
+ operation = StateOperation.CREATE
261
+ if free.numel():
262
+ index = int(free[0].item())
263
+ else:
264
+ index = self._eviction_candidate()
265
+ incoming_score = self._admission_score(
266
+ importance=importance,
267
+ confidence=confidence,
268
+ freshness=freshness,
269
+ persistence=persistence,
270
+ )
271
+ if incoming_score <= self._slot_admission_score(index):
272
+ return -1, StateOperation.IGNORE
273
+ self.invalidate(index)
274
+ self.values[index].copy_(value)
275
+ self._write_metadata(
276
+ index,
277
+ slot_type=slot_type,
278
+ confidence=confidence,
279
+ importance=importance,
280
+ freshness=freshness,
281
+ persistence=persistence,
282
+ source=source,
283
+ label=label,
284
+ )
285
+ return index, operation
286
+
287
+ def keep(self, index: int, *, confidence: float | None = None) -> int:
288
+ self._require_valid(index)
289
+ if confidence is not None:
290
+ self._validate_score("confidence", confidence)
291
+ self.confidence[index] = confidence
292
+ self.last_updated[index] = self._tick()
293
+ return index
294
+
295
+ def modify(
296
+ self,
297
+ index: int,
298
+ value: Tensor,
299
+ *,
300
+ confidence: float | None = None,
301
+ freshness: Freshness = Freshness.FRESH,
302
+ source: SlotSource | None = None,
303
+ ) -> int:
304
+ self._require_valid(index)
305
+ freshness = Freshness(freshness)
306
+ if source is not None:
307
+ source = SlotSource(source)
308
+ if confidence is not None:
309
+ self._validate_score("confidence", confidence)
310
+ # A model inference is lower-authority than an explicit user
311
+ # correction and cannot silently overwrite it.
312
+ if (
313
+ source == SlotSource.INFERENCE
314
+ and int(self.source[index]) == int(SlotSource.CORRECTION)
315
+ ):
316
+ self.last_updated[index] = self._tick()
317
+ return index
318
+ self.values[index].copy_(self._value(value))
319
+ if confidence is not None:
320
+ self.confidence[index] = confidence
321
+ self.freshness[index] = int(freshness)
322
+ if source is not None:
323
+ self.source[index] = int(source)
324
+ self.last_updated[index] = self._tick()
325
+ return index
326
+
327
+ def merge(
328
+ self,
329
+ indices: Iterable[int],
330
+ *,
331
+ value: Tensor | None = None,
332
+ confidence: float | None = None,
333
+ source: SlotSource = SlotSource.INFERENCE,
334
+ ) -> int:
335
+ indices = tuple(dict.fromkeys(indices))
336
+ if not indices:
337
+ raise ValueError("merge requires at least one slot")
338
+ for index in indices:
339
+ self._require_valid(index)
340
+ target = max(indices, key=lambda index: float(self.importance[index]))
341
+ merged = self._value(value) if value is not None else self.values[list(indices)].float().mean(0).to(self.config.dtype)
342
+ self.values[target].copy_(merged)
343
+ if confidence is None:
344
+ confidence = max(float(self.confidence[index]) for index in indices)
345
+ self._validate_score("confidence", confidence)
346
+ self.confidence[target] = confidence
347
+ self.importance[target] = max(float(self.importance[index]) for index in indices)
348
+ self.freshness[target] = int(Freshness.FRESH)
349
+ self.source[target] = int(source)
350
+ self.last_updated[target] = self._tick()
351
+ for index in indices:
352
+ if index != target:
353
+ self.invalidate(index)
354
+ return target
355
+
356
+ def invalidate(self, index: int) -> int:
357
+ self._require_valid(index)
358
+ self.valid[index] = False
359
+ self.values[index].zero_()
360
+ self.labels[index] = None
361
+ self.last_updated[index] = self._tick()
362
+ return index
363
+
364
+ def apply(self, operation: StateOperation, **kwargs):
365
+ if operation == StateOperation.KEEP:
366
+ return self.keep(**kwargs)
367
+ if operation == StateOperation.CREATE:
368
+ return self.create(**kwargs)
369
+ if operation == StateOperation.MODIFY:
370
+ return self.modify(**kwargs)
371
+ if operation == StateOperation.MERGE:
372
+ return self.merge(**kwargs)
373
+ if operation == StateOperation.INVALIDATE:
374
+ return self.invalidate(**kwargs)
375
+ if operation == StateOperation.IGNORE:
376
+ return None
377
+ raise ValueError(f"unsupported planner operation: {operation}")