@randomplay/data 0.0.4 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -2
- package/cleaned/audit/nanoka-coverage-matrix.json +1390 -0
- package/cleaned/audit/nanoka-disorder-daze-level-audit.json +134 -0
- package/cleaned/audit/nanoka-disorder-formula-audit.json +106 -0
- package/cleaned/audit/nanoka-drift-report/phase3-sync-000-foundation.json +43 -0
- package/cleaned/audit/nanoka-drift-report/phase3-sync-001-g01-g26.json +2633 -0
- package/cleaned/audit/nanoka-drift-report/phase3-sync-002-g27-g28.json +2829 -0
- package/cleaned/audit/nanoka-drive-disc-slot-stat-audit.json +86 -0
- package/cleaned/audit/nanoka-snapshot-diff-history.json +29 -0
- package/cleaned/audit/nicole.acceptance.json +1 -1
- package/cleaned/audit/source-migration-field-diff.json +407 -0
- package/cleaned/audit/v1-agent-source-candidates.json +1 -1
- package/cleaned/audit/yanagi.acceptance.json +1 -1
- package/cleaned/golden/v1-replay-report.json +83 -5
- package/cleaned/runtime/game-data.json +236 -0
- package/dist/index.d.mts +1621 -1
- package/dist/index.mjs +905 -1
- package/package.json +14 -5
- package/source-registry.json +199 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "nanoka-drive-disc-slot-stat-audit/v0.1",
|
|
3
|
+
"generatedAt": "2026-05-15T16:20:00+08:00",
|
|
4
|
+
"sourceId": "nanoka-zzz",
|
|
5
|
+
"sourceVersion": "2.8",
|
|
6
|
+
"status": "not-found",
|
|
7
|
+
"fieldId": "driveDiscs.slotAndSubstatTables",
|
|
8
|
+
"sampleEntity": "nanoka-equipment-woodpecker-live-31000",
|
|
9
|
+
"runtimeCutoverReady": false,
|
|
10
|
+
"summary": {
|
|
11
|
+
"checkedEndpointCount": 9,
|
|
12
|
+
"foundSlotMainSubstatTable": false,
|
|
13
|
+
"ownerResearchRequired": false
|
|
14
|
+
},
|
|
15
|
+
"checkedEndpoints": [
|
|
16
|
+
{
|
|
17
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment.json",
|
|
18
|
+
"status": 200,
|
|
19
|
+
"finding": "Drive Disc set-effect index only. Entries contain icon plus localized name/desc2/desc4; no slot, main-stat, substat, level, or stat-roll table fields."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"url": "https://static.nanoka.cc/zzz/2.8/zh/equipment/31000.json",
|
|
23
|
+
"status": 200,
|
|
24
|
+
"localPath": "data/source/raw/nanoka/zzz/2.8/zh/equipment/31000.json",
|
|
25
|
+
"contentSha256": "4190f6084521aead931a28ada9a44e6d9cd26a7fdb2401ffd0ab4e00a257f1ec",
|
|
26
|
+
"presentRawFieldPaths": [
|
|
27
|
+
"/id",
|
|
28
|
+
"/name",
|
|
29
|
+
"/desc2",
|
|
30
|
+
"/desc4"
|
|
31
|
+
],
|
|
32
|
+
"missingRawFieldPaths": [
|
|
33
|
+
"/slot",
|
|
34
|
+
"/part",
|
|
35
|
+
"/main_property",
|
|
36
|
+
"/rand_property",
|
|
37
|
+
"/level",
|
|
38
|
+
"/stats"
|
|
39
|
+
],
|
|
40
|
+
"finding": "Localized equipment detail only exposes set identity and set-effect text for Woodpecker Electro."
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment_stat.json",
|
|
44
|
+
"status": 404,
|
|
45
|
+
"finding": "Candidate slot/stat-table index not present."
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment_config.json",
|
|
49
|
+
"status": 404,
|
|
50
|
+
"finding": "Candidate slot/stat-table index not present."
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment_level.json",
|
|
54
|
+
"status": 404,
|
|
55
|
+
"finding": "Candidate slot/stat-table index not present."
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment_property.json",
|
|
59
|
+
"status": 404,
|
|
60
|
+
"finding": "Candidate slot/stat-table index not present."
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment_main_property.json",
|
|
64
|
+
"status": 404,
|
|
65
|
+
"finding": "Candidate slot/stat-table index not present."
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"url": "https://static.nanoka.cc/zzz/2.8/equipment_rand_property.json",
|
|
69
|
+
"status": 404,
|
|
70
|
+
"finding": "Candidate slot/stat-table index not present."
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"url": "https://static.nanoka.cc/zzz/2.8/zh/item/33921.json",
|
|
74
|
+
"status": 404,
|
|
75
|
+
"finding": "Candidate per-disc item detail from manifest item-style ids not present."
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"decision": {
|
|
79
|
+
"matrixStatus": "deferred",
|
|
80
|
+
"sourcePolicy": "out-of-scope",
|
|
81
|
+
"blockedBy": [
|
|
82
|
+
"scope:user-provided-snapshot-boundary"
|
|
83
|
+
],
|
|
84
|
+
"ownerDecision": "2026-05-15 lo-user locks option (a): remove Drive Disc slot/main/substat tables from V0.1.0 formal-data scope. Runtime consumes user-provided final Agent panel plus nanoka-backed Drive Disc set effects; slot/main/substat tables are V1.x validation/recommendation scope."
|
|
85
|
+
}
|
|
86
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "nanoka-snapshot-diff-history/v0.1",
|
|
3
|
+
"sourceId": "nanoka-zzz",
|
|
4
|
+
"generatedAt": "2026-05-15T13:40:00+08:00",
|
|
5
|
+
"diffKind": "snapshot-derived-numeric-diff",
|
|
6
|
+
"latestResearchVersion": "3.0.2+15625449",
|
|
7
|
+
"approvedLiveVersions": [
|
|
8
|
+
"2.8"
|
|
9
|
+
],
|
|
10
|
+
"comparedPairs": [],
|
|
11
|
+
"officialPatchNoteText": {
|
|
12
|
+
"status": "not-found",
|
|
13
|
+
"decision": "D-20 R4.a"
|
|
14
|
+
},
|
|
15
|
+
"runtimeCutoverReady": false,
|
|
16
|
+
"approvedSnapshots": [
|
|
17
|
+
{
|
|
18
|
+
"sourceVersion": "2.8",
|
|
19
|
+
"contentHash": "sha256:91494c2c3bfda6ec47beccbf71066506ab0a315513aa751cf30e4c3a1dc0817d"
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"summary": {
|
|
23
|
+
"approvedSnapshotCount": 1,
|
|
24
|
+
"comparedPairCount": 0,
|
|
25
|
+
"changed": 0,
|
|
26
|
+
"new": 0,
|
|
27
|
+
"missing": 0
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "fairy-source-migration-field-diff-v1",
|
|
3
|
+
"generatedAt": "2026-05-14T23:35:00+08:00",
|
|
4
|
+
"scope": "Phase 1 initial sample audit. This file records machine-readable fixture coverage for sampled source fields only; it does not replace runtime cleaned data. Nanoka detail endpoints were added after the initial list-endpoint sample.",
|
|
5
|
+
"statusValues": [
|
|
6
|
+
"same",
|
|
7
|
+
"changed",
|
|
8
|
+
"missing-in-new",
|
|
9
|
+
"missing-in-excel",
|
|
10
|
+
"semantic-unknown"
|
|
11
|
+
],
|
|
12
|
+
"sourceGateSummary": {
|
|
13
|
+
"prydwen": {
|
|
14
|
+
"sourceId": "prydwen-zzz",
|
|
15
|
+
"liveOnlyGate": "pass-with-weak-version-metadata",
|
|
16
|
+
"redistributionRisk": "accepted-by-owner",
|
|
17
|
+
"snapshotability": "html-snapshot",
|
|
18
|
+
"notes": "Public live-facing pages sampled. No explicit data redistribution license found."
|
|
19
|
+
},
|
|
20
|
+
"nanoka": {
|
|
21
|
+
"sourceId": "nanoka-zzz",
|
|
22
|
+
"liveOnlyGate": "pass-for-versioned-static-public-snapshot",
|
|
23
|
+
"redistributionRisk": "accepted-by-owner",
|
|
24
|
+
"snapshotability": "versioned-static-json",
|
|
25
|
+
"notes": "List endpoints are identity summaries, but detail endpoints under /zh|en|ja|ko/{character|bangboo|monster}/{id}.json expose calculation numeric fields for sampled agents, Bangboos, and monsters."
|
|
26
|
+
},
|
|
27
|
+
"gachabase": {
|
|
28
|
+
"sourceId": "gachabase-zzz",
|
|
29
|
+
"liveOnlyGate": "fail-beta-branch",
|
|
30
|
+
"redistributionRisk": "forbidden",
|
|
31
|
+
"snapshotability": "html-serialized-payload",
|
|
32
|
+
"notes": "All tested routes canonicalized to /beta and embedded branch beta. Numeric coverage is strong but cannot enter npm payload under current D-20 rules."
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"entities": [
|
|
36
|
+
{
|
|
37
|
+
"entityType": "agent",
|
|
38
|
+
"entityId": "yixuan",
|
|
39
|
+
"excelSourceRefs": [
|
|
40
|
+
"data/source/excel/data.xlsx#代理人属性!A37:AF37"
|
|
41
|
+
],
|
|
42
|
+
"fields": [
|
|
43
|
+
{
|
|
44
|
+
"fieldPath": "baseStatsByLevel.60.maxHp",
|
|
45
|
+
"excelValue": 7953.8621,
|
|
46
|
+
"candidates": {
|
|
47
|
+
"prydwen": {
|
|
48
|
+
"value": 8373,
|
|
49
|
+
"status": "changed",
|
|
50
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/characters-stats/#Yixuan row",
|
|
51
|
+
"notes": "Visible rendered table value. Difference likely reflects source drift or stat interpretation; requires ruling before baseline update.",
|
|
52
|
+
"promotable": false,
|
|
53
|
+
"blockedBy": [
|
|
54
|
+
"field:changed-requires-ruling"
|
|
55
|
+
]
|
|
56
|
+
},
|
|
57
|
+
"nanoka": {
|
|
58
|
+
"value": {
|
|
59
|
+
"stats": {
|
|
60
|
+
"hp_max": 673,
|
|
61
|
+
"hp_growth": 842519
|
|
62
|
+
},
|
|
63
|
+
"level6": {
|
|
64
|
+
"hp_max": 2310,
|
|
65
|
+
"level_min": 50,
|
|
66
|
+
"level_max": 60
|
|
67
|
+
},
|
|
68
|
+
"extraLevel6": {
|
|
69
|
+
"prop": 11101,
|
|
70
|
+
"value": 420
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"status": "semantic-unknown",
|
|
74
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/character/1371.json#stats.hp_max+hp_growth+level.6+extra_level.6",
|
|
75
|
+
"notes": "Detail endpoint exposes raw base/growth/level/extra HP fields. Requires normalization formula before comparing to final level-60 panel values.",
|
|
76
|
+
"promotable": false,
|
|
77
|
+
"blockedBy": [
|
|
78
|
+
"field:normalization-formula-required"
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
"gachabase": {
|
|
82
|
+
"value": 8373,
|
|
83
|
+
"status": "semantic-unknown",
|
|
84
|
+
"sourceAnchor": "https://zzz.gachabase.net/agents/1371/yixuan?lang=en#Base HP",
|
|
85
|
+
"notes": "Value present, but source route canonicalizes to beta and is blocked by live-only gate.",
|
|
86
|
+
"promotable": false,
|
|
87
|
+
"blockedBy": [
|
|
88
|
+
"source-gate:fail-beta-branch",
|
|
89
|
+
"field:semantic-unknown-requires-ruling"
|
|
90
|
+
]
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"fieldPath": "baseStatsByLevel.60.attack",
|
|
96
|
+
"excelValue": 872.5748,
|
|
97
|
+
"candidates": {
|
|
98
|
+
"prydwen": {
|
|
99
|
+
"value": 872,
|
|
100
|
+
"status": "semantic-unknown",
|
|
101
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/characters-stats/#Yixuan row",
|
|
102
|
+
"notes": "Rendered value is rounded/truncated.",
|
|
103
|
+
"promotable": false,
|
|
104
|
+
"blockedBy": [
|
|
105
|
+
"field:semantic-unknown-requires-ruling"
|
|
106
|
+
]
|
|
107
|
+
},
|
|
108
|
+
"nanoka": {
|
|
109
|
+
"value": {
|
|
110
|
+
"stats": {
|
|
111
|
+
"attack": 126,
|
|
112
|
+
"attack_growth": 88572
|
|
113
|
+
},
|
|
114
|
+
"level6": {
|
|
115
|
+
"attack": 224,
|
|
116
|
+
"level_min": 50,
|
|
117
|
+
"level_max": 60
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"status": "semantic-unknown",
|
|
121
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/character/1371.json#stats.attack+attack_growth+level.6",
|
|
122
|
+
"notes": "Detail endpoint exposes raw base/growth/level attack fields. Requires normalization formula before comparing to final level-60 panel values.",
|
|
123
|
+
"promotable": false,
|
|
124
|
+
"blockedBy": [
|
|
125
|
+
"field:normalization-formula-required"
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
"gachabase": {
|
|
129
|
+
"value": 872,
|
|
130
|
+
"status": "semantic-unknown",
|
|
131
|
+
"sourceAnchor": "https://zzz.gachabase.net/agents/1371/yixuan?lang=en#Base ATK",
|
|
132
|
+
"notes": "Rendered value is rounded and beta-gated.",
|
|
133
|
+
"promotable": false,
|
|
134
|
+
"blockedBy": [
|
|
135
|
+
"source-gate:fail-beta-branch",
|
|
136
|
+
"field:semantic-unknown-requires-ruling"
|
|
137
|
+
]
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"fieldPath": "skills.basicAttack.hit1.damageMultiplier",
|
|
143
|
+
"excelValue": null,
|
|
144
|
+
"candidates": {
|
|
145
|
+
"prydwen": {
|
|
146
|
+
"value": 0.458,
|
|
147
|
+
"status": "missing-in-excel",
|
|
148
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/characters/yixuan/#Basic Attack",
|
|
149
|
+
"notes": "Visible row: 1st-Hit DMG Multiplier 45.80%.",
|
|
150
|
+
"promotable": true
|
|
151
|
+
},
|
|
152
|
+
"nanoka": {
|
|
153
|
+
"value": 0.458,
|
|
154
|
+
"status": "missing-in-excel",
|
|
155
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/character/1371.json#skill.basic.description.param.Skill1371001.Prop1001",
|
|
156
|
+
"notes": "Detail endpoint exposes deterministic skill params: damage_percentage=4580, stun_ratio=2860, attribute_infliction=2596.",
|
|
157
|
+
"promotable": true
|
|
158
|
+
},
|
|
159
|
+
"gachabase": {
|
|
160
|
+
"value": 0.458,
|
|
161
|
+
"status": "missing-in-excel",
|
|
162
|
+
"sourceAnchor": "https://zzz.gachabase.net/agents/1371/yixuan?lang=en#skill_data id 1371001",
|
|
163
|
+
"notes": "Serialized value damage_multiplier_base=4580, but beta-gated.",
|
|
164
|
+
"promotable": false,
|
|
165
|
+
"blockedBy": [
|
|
166
|
+
"source-gate:fail-beta-branch"
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
]
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"entityType": "bangboo",
|
|
175
|
+
"entityId": "plugboo",
|
|
176
|
+
"excelSourceRefs": [
|
|
177
|
+
"data/source/excel/data.xlsx#邦布属性!A18:T18",
|
|
178
|
+
"data/source/excel/data.xlsx#邦布技能!A29:H30"
|
|
179
|
+
],
|
|
180
|
+
"fields": [
|
|
181
|
+
{
|
|
182
|
+
"fieldPath": "baseStatsByLevel.60.attack",
|
|
183
|
+
"excelValue": 8057.0996,
|
|
184
|
+
"candidates": {
|
|
185
|
+
"prydwen": {
|
|
186
|
+
"value": 8057,
|
|
187
|
+
"status": "semantic-unknown",
|
|
188
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/bangboo/#Plugboo Stats",
|
|
189
|
+
"notes": "Rendered value is rounded/truncated.",
|
|
190
|
+
"promotable": false,
|
|
191
|
+
"blockedBy": [
|
|
192
|
+
"field:semantic-unknown-requires-ruling"
|
|
193
|
+
]
|
|
194
|
+
},
|
|
195
|
+
"nanoka": {
|
|
196
|
+
"value": {
|
|
197
|
+
"stats": {
|
|
198
|
+
"attack": 65,
|
|
199
|
+
"attack_upgrade": 327644
|
|
200
|
+
},
|
|
201
|
+
"level6": {
|
|
202
|
+
"attack": 6059,
|
|
203
|
+
"level_min": 50,
|
|
204
|
+
"level_max": 60
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
"status": "semantic-unknown",
|
|
208
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/bangboo/54008.json#stats.attack+attack_upgrade+level.6",
|
|
209
|
+
"notes": "Detail endpoint exposes raw Bangboo base/growth/level attack fields. Requires normalization formula before comparing to final level-60 panel values.",
|
|
210
|
+
"promotable": false,
|
|
211
|
+
"blockedBy": [
|
|
212
|
+
"field:normalization-formula-required"
|
|
213
|
+
]
|
|
214
|
+
},
|
|
215
|
+
"gachabase": {
|
|
216
|
+
"value": 8057,
|
|
217
|
+
"status": "semantic-unknown",
|
|
218
|
+
"sourceAnchor": "https://zzz.gachabase.net/bangboo/54008/plugboo?lang=en#Base ATK",
|
|
219
|
+
"notes": "Value present, beta-gated.",
|
|
220
|
+
"promotable": false,
|
|
221
|
+
"blockedBy": [
|
|
222
|
+
"source-gate:fail-beta-branch",
|
|
223
|
+
"field:semantic-unknown-requires-ruling"
|
|
224
|
+
]
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"fieldPath": "skills.plugboo-active.segments[0].multiplier",
|
|
230
|
+
"excelValue": 5.12,
|
|
231
|
+
"candidates": {
|
|
232
|
+
"prydwen": {
|
|
233
|
+
"value": 5.12,
|
|
234
|
+
"status": "same",
|
|
235
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/bangboo/#Plugboo Shock Sniper DMG Multiplier",
|
|
236
|
+
"promotable": true
|
|
237
|
+
},
|
|
238
|
+
"nanoka": {
|
|
239
|
+
"value": 5.12,
|
|
240
|
+
"status": "same",
|
|
241
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/bangboo/54008.json#skill_prop.5400801.1001.main",
|
|
242
|
+
"notes": "Detail endpoint exposes 5400801.1001.main=51200, matching Excel/Gachabase after divisor normalization.",
|
|
243
|
+
"promotable": true
|
|
244
|
+
},
|
|
245
|
+
"gachabase": {
|
|
246
|
+
"value": 5.12,
|
|
247
|
+
"status": "same",
|
|
248
|
+
"sourceAnchor": "https://zzz.gachabase.net/bangboo/54008/plugboo?lang=en#skill_data id 5400801",
|
|
249
|
+
"notes": "Serialized damage_multiplier_base=51200, beta-gated.",
|
|
250
|
+
"promotable": false,
|
|
251
|
+
"blockedBy": [
|
|
252
|
+
"source-gate:fail-beta-branch"
|
|
253
|
+
]
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"fieldPath": "skills.plugboo-active.segments[0].dazeMultiplier",
|
|
259
|
+
"excelValue": 1.87,
|
|
260
|
+
"candidates": {
|
|
261
|
+
"prydwen": {
|
|
262
|
+
"value": 1.87,
|
|
263
|
+
"status": "same",
|
|
264
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/bangboo/#Plugboo Shock Sniper Daze Multiplier",
|
|
265
|
+
"promotable": true
|
|
266
|
+
},
|
|
267
|
+
"nanoka": {
|
|
268
|
+
"value": 1.87,
|
|
269
|
+
"status": "same",
|
|
270
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/bangboo/54008.json#skill_prop.5400801.1002.main",
|
|
271
|
+
"notes": "Detail endpoint exposes 5400801.1002.main=18700, matching Excel/Gachabase after divisor normalization.",
|
|
272
|
+
"promotable": true
|
|
273
|
+
},
|
|
274
|
+
"gachabase": {
|
|
275
|
+
"value": 1.87,
|
|
276
|
+
"status": "same",
|
|
277
|
+
"sourceAnchor": "https://zzz.gachabase.net/bangboo/54008/plugboo?lang=en#skill_data id 5400801",
|
|
278
|
+
"notes": "Serialized daze_multiplier_base=18700, beta-gated.",
|
|
279
|
+
"promotable": false,
|
|
280
|
+
"blockedBy": [
|
|
281
|
+
"source-gate:fail-beta-branch"
|
|
282
|
+
]
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"fieldPath": "skills.plugboo-active.segments[0].anomalyBuildup",
|
|
288
|
+
"excelValue": 240,
|
|
289
|
+
"candidates": {
|
|
290
|
+
"prydwen": {
|
|
291
|
+
"value": null,
|
|
292
|
+
"status": "missing-in-new",
|
|
293
|
+
"sourceAnchor": "https://www.prydwen.gg/zenless/bangboo/#Plugboo Shock Sniper",
|
|
294
|
+
"notes": "HTML says accumulating Electric Anomaly Buildup but does not show numeric buildup.",
|
|
295
|
+
"promotable": false,
|
|
296
|
+
"blockedBy": [
|
|
297
|
+
"field:missing-in-source"
|
|
298
|
+
]
|
|
299
|
+
},
|
|
300
|
+
"nanoka": {
|
|
301
|
+
"value": 240,
|
|
302
|
+
"status": "same",
|
|
303
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/bangboo/54008.json#skill_prop.5400801.element_accumulation_value",
|
|
304
|
+
"notes": "Detail endpoint exposes element_accumulation_value=24000, matching Excel/Gachabase after divisor normalization.",
|
|
305
|
+
"promotable": true
|
|
306
|
+
},
|
|
307
|
+
"gachabase": {
|
|
308
|
+
"value": 240,
|
|
309
|
+
"status": "same",
|
|
310
|
+
"sourceAnchor": "https://zzz.gachabase.net/bangboo/54008/plugboo?lang=en#skill_data id 5400801",
|
|
311
|
+
"notes": "Serialized anomaly_buildup=24000, beta-gated.",
|
|
312
|
+
"promotable": false,
|
|
313
|
+
"blockedBy": [
|
|
314
|
+
"source-gate:fail-beta-branch"
|
|
315
|
+
]
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
]
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
"entityType": "enemy",
|
|
323
|
+
"entityId": "dullahan",
|
|
324
|
+
"excelSourceRefs": [
|
|
325
|
+
"data/source/excel/data.xlsx#敌人属性"
|
|
326
|
+
],
|
|
327
|
+
"fields": [
|
|
328
|
+
{
|
|
329
|
+
"fieldPath": "identity.en",
|
|
330
|
+
"excelValue": null,
|
|
331
|
+
"candidates": {
|
|
332
|
+
"prydwen": {
|
|
333
|
+
"value": null,
|
|
334
|
+
"status": "missing-in-new",
|
|
335
|
+
"sourceAnchor": "sampled Prydwen ZZZ pages",
|
|
336
|
+
"promotable": false,
|
|
337
|
+
"blockedBy": [
|
|
338
|
+
"field:missing-in-source"
|
|
339
|
+
]
|
|
340
|
+
},
|
|
341
|
+
"nanoka": {
|
|
342
|
+
"value": "Dullahan",
|
|
343
|
+
"status": "missing-in-excel",
|
|
344
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/monster/30000.json#name",
|
|
345
|
+
"promotable": true
|
|
346
|
+
},
|
|
347
|
+
"gachabase": {
|
|
348
|
+
"value": null,
|
|
349
|
+
"status": "semantic-unknown",
|
|
350
|
+
"sourceAnchor": "not deeply probed",
|
|
351
|
+
"promotable": false,
|
|
352
|
+
"blockedBy": [
|
|
353
|
+
"source-gate:fail-beta-branch",
|
|
354
|
+
"field:semantic-unknown-requires-ruling"
|
|
355
|
+
]
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
},
|
|
359
|
+
{
|
|
360
|
+
"fieldPath": "enemyPanel.defense",
|
|
361
|
+
"excelValue": null,
|
|
362
|
+
"candidates": {
|
|
363
|
+
"prydwen": {
|
|
364
|
+
"value": null,
|
|
365
|
+
"status": "missing-in-new",
|
|
366
|
+
"sourceAnchor": "sampled Prydwen ZZZ pages",
|
|
367
|
+
"promotable": false,
|
|
368
|
+
"blockedBy": [
|
|
369
|
+
"field:missing-in-source"
|
|
370
|
+
]
|
|
371
|
+
},
|
|
372
|
+
"nanoka": {
|
|
373
|
+
"value": {
|
|
374
|
+
"monsterInfoId": 11154,
|
|
375
|
+
"hp": 7097,
|
|
376
|
+
"attack": 97,
|
|
377
|
+
"defence": 58,
|
|
378
|
+
"stun": 3502,
|
|
379
|
+
"autoRecoverRate": 0,
|
|
380
|
+
"elementAbnormal": {
|
|
381
|
+
"30004": 3600
|
|
382
|
+
}
|
|
383
|
+
},
|
|
384
|
+
"status": "semantic-unknown",
|
|
385
|
+
"sourceAnchor": "https://static.nanoka.cc/zzz/3.0.2+15625449/zh/monster/30000.json#monster_info.11154.stats",
|
|
386
|
+
"notes": "Detail endpoint exposes monster stats, curves, resistances, and element_abnormal maps. Requires variant/level mapping before replacing Excel enemy rows.",
|
|
387
|
+
"promotable": false,
|
|
388
|
+
"blockedBy": [
|
|
389
|
+
"field:variant-mapping-required"
|
|
390
|
+
]
|
|
391
|
+
},
|
|
392
|
+
"gachabase": {
|
|
393
|
+
"value": null,
|
|
394
|
+
"status": "semantic-unknown",
|
|
395
|
+
"sourceAnchor": "not deeply probed",
|
|
396
|
+
"promotable": false,
|
|
397
|
+
"blockedBy": [
|
|
398
|
+
"source-gate:fail-beta-branch",
|
|
399
|
+
"field:semantic-unknown-requires-ruling"
|
|
400
|
+
]
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
]
|
|
405
|
+
}
|
|
406
|
+
]
|
|
407
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "fairy-v1-agent-source-candidates-v1",
|
|
3
3
|
"parserVersion": "golden-v1-replay-v0.1.0",
|
|
4
|
-
"generatedAt": "2026-05-
|
|
4
|
+
"generatedAt": "2026-05-15T18:46:10+08:00",
|
|
5
5
|
"policy": {
|
|
6
6
|
"scope": "Minimal reader output for executable V1/V1.1 replay. It extracts Yixuan/Nicole/Yanagi identity and calculation-relevant source text candidates plus Penguinboo/Sharkboo/Plugboo numeric Bangboo rows for G24-G26.",
|
|
7
7
|
"formalDataPolicy": "Candidates are not trusted cleaned modifiers. Effects with trustStatus=requiresManualAcceptance must emit ERR-DAT-005 until an accepted record exists.",
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "fairy-v1-golden-replay-report-v1",
|
|
3
3
|
"parserVersion": "golden-v1-replay-v0.1.0",
|
|
4
|
-
"generatedAt": "2026-05-
|
|
4
|
+
"generatedAt": "2026-05-15T18:46:10+08:00",
|
|
5
5
|
"policy": {
|
|
6
|
-
"scope": "
|
|
6
|
+
"scope": "V0.1.0 true-data replay harness after Phase 4 cutover: all 28 anchors pass executable replay, including G27/G28 nanoka runtime-primary proof anchors.",
|
|
7
7
|
"releaseGate": "releaseReady becomes true only when all executable anchors pass replay and blockingDiagnostics is zero.",
|
|
8
8
|
"manualAcceptance": "G22/G23 use lo-user manual acceptance records tied to the sourceTextHash values in v1-agent-source-candidates.json; A/B effects are replayed as explicit inactive/active snapshot states, and C is skill-level parameterized."
|
|
9
9
|
},
|
|
@@ -33,12 +33,14 @@
|
|
|
33
33
|
"G23",
|
|
34
34
|
"G24",
|
|
35
35
|
"G25",
|
|
36
|
-
"G26"
|
|
36
|
+
"G26",
|
|
37
|
+
"G27",
|
|
38
|
+
"G28"
|
|
37
39
|
],
|
|
38
40
|
"deferredAnchorIds": [],
|
|
39
41
|
"summary": {
|
|
40
|
-
"v1AnchorCount":
|
|
41
|
-
"passed":
|
|
42
|
+
"v1AnchorCount": 28,
|
|
43
|
+
"passed": 28,
|
|
42
44
|
"pendingHarness": 0,
|
|
43
45
|
"blocked": 0,
|
|
44
46
|
"deferred": 0,
|
|
@@ -515,6 +517,82 @@
|
|
|
515
517
|
"Daze uses impact 99 × 1.87 = 185.13, and anomaly buildup uses 240 × floor(132)/100 = 316.8 before enemy resistance.",
|
|
516
518
|
"Excel Path X has no element field; the fixture reuses an explicit neutral ice segment and zero ice resistance so the anchor asserts sourced panel/skill numerics, not inferred element semantics."
|
|
517
519
|
]
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
"id": "G27",
|
|
523
|
+
"status": "passed",
|
|
524
|
+
"sourceRefs": [
|
|
525
|
+
{
|
|
526
|
+
"sourceId": "nanoka-zzz",
|
|
527
|
+
"sourceVersion": "2.8",
|
|
528
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/character/1371.json",
|
|
529
|
+
"dataPath": "/id"
|
|
530
|
+
},
|
|
531
|
+
{
|
|
532
|
+
"sourceId": "nanoka-zzz",
|
|
533
|
+
"sourceVersion": "2.8",
|
|
534
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/character/1371.json",
|
|
535
|
+
"dataPath": "/stats"
|
|
536
|
+
},
|
|
537
|
+
{
|
|
538
|
+
"sourceId": "nanoka-zzz",
|
|
539
|
+
"sourceVersion": "2.8",
|
|
540
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/character/1371.json",
|
|
541
|
+
"dataPath": "/level/6"
|
|
542
|
+
},
|
|
543
|
+
{
|
|
544
|
+
"sourceId": "nanoka-zzz",
|
|
545
|
+
"sourceVersion": "2.8",
|
|
546
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/character/1371.json",
|
|
547
|
+
"dataPath": "/skill/basic/description/4/param/0/param/1371001"
|
|
548
|
+
}
|
|
549
|
+
],
|
|
550
|
+
"notes": [
|
|
551
|
+
"Yixuan new-source proof anchor now runs executable replay from approved-live nanoka: level-60 attack 872.5748 × first-basic 0.458 = 399.6392584 base damage.",
|
|
552
|
+
"Daze uses impact 93 × 0.286 = 26.598, while resource proof binds maxAdrenaline 120, automaticAdrenalineAccumulation 2, resonanceRecovery 71.5, and adrenalineRecovery 0.52.",
|
|
553
|
+
"Rupture fields are retained from nanoka raw evidence: level 1, correction 1, probability 0."
|
|
554
|
+
]
|
|
555
|
+
},
|
|
556
|
+
{
|
|
557
|
+
"id": "G28",
|
|
558
|
+
"status": "passed",
|
|
559
|
+
"sourceRefs": [
|
|
560
|
+
{
|
|
561
|
+
"sourceId": "nanoka-zzz",
|
|
562
|
+
"sourceVersion": "2.8",
|
|
563
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/bangboo/54008.json",
|
|
564
|
+
"dataPath": "/id"
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"sourceId": "nanoka-zzz",
|
|
568
|
+
"sourceVersion": "2.8",
|
|
569
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/bangboo/54008.json",
|
|
570
|
+
"dataPath": "/stats"
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
"sourceId": "nanoka-zzz",
|
|
574
|
+
"sourceVersion": "2.8",
|
|
575
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/bangboo/54008.json",
|
|
576
|
+
"dataPath": "/level/6"
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"sourceId": "nanoka-zzz",
|
|
580
|
+
"sourceVersion": "2.8",
|
|
581
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/bangboo/54008.json",
|
|
582
|
+
"dataPath": "/skill/a"
|
|
583
|
+
},
|
|
584
|
+
{
|
|
585
|
+
"sourceId": "nanoka-zzz",
|
|
586
|
+
"sourceVersion": "2.8",
|
|
587
|
+
"sourceAnchor": "data/source/raw/nanoka/zzz/2.8/zh/bangboo/54008.json",
|
|
588
|
+
"dataPath": "/skill_prop/5400801"
|
|
589
|
+
}
|
|
590
|
+
],
|
|
591
|
+
"notes": [
|
|
592
|
+
"Plugboo new-source proof anchor now runs executable replay from approved-live nanoka: level-60 attack 8057.0996 × active 5.12 = 41252.349952 base damage.",
|
|
593
|
+
"Daze uses impact 99 × 1.87 = 185.13, anomaly buildup uses 240 × floor(132)/100 = 316.8, and skill text proves electric element.",
|
|
594
|
+
"This duplicates the G26 Excel numeric entity with nanoka raw/source refs so Phase 4 release has both archived parity and runtime-primary proof."
|
|
595
|
+
]
|
|
518
596
|
}
|
|
519
597
|
]
|
|
520
598
|
}
|