Files
ft/CodexOutput/upserver/KVGameplayLoopTests/update_checkpoint.py

49 lines
5.6 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from pathlib import Path
import json
folder=Path(__file__).resolve().parents[1]
entry='''## 当前有效状态:R1方案已裁决,最小接线实施中;101/102现有KV均为空(2026-09-24)
独立审查接受R1范围和编码合同;主会话核对70项hash、6项新增路径,九项合同、2P2/3P3逐条裁决,见[实施批准](阶段4最小真实玩法闭环方案审查裁决与实施批准-2026-09-24.md)。R1不再处于方案待审。
用户已允许沿用101/102,要求不强行修改、选择合适方式。已在固定s101地址完成两账号登录和只读全量KV备份:均0键、无NewPlayerDataDic;KV Set/Delete均0。未启用运行许可,未PlayMode或打包,没有自动复制PF或制造初始档。
- [x] R1-C0:hash、逐条裁决、白名单实施批准、原始源码快照;用户账号授权及现有KV备份。
- [ ] R1-C1/C2:已编写许可/进程限制、正常会话接线、31对象绑定、facade、装备等待与关闭分支;Unity首轮编译0错误0警告,正在限定回归。尚未证明真实加载可用。
- [ ] R1-数据:既有101/102 KV空档;需确定完整初始存档来源,不自动迁移PF。
- [ ] R1-接线差异:M24射击对象在普通活动初始化时才注册,R1提前绑定需核查并准备精确补充裁决;尚未增加注册或改业务模块。
- [ ] R1-C3:真实界面装备、全部原票据Confirmed、Unity进程重启/新缓存恢复、独立实施复核和关闭,均未完成。
当前主会话继续白名单内验证和具体差异材料;完整实施记录见[实施记录](阶段4最小真实玩法闭环实施记录-2026-09-24.md)。4B1/4B2/4B3A已关闭;整个4B3/G4、4C、热换号、P2-α真实存量档迁移仍未通过。正式API固定http://s101.local:18080/,Unity CLI Loop,不使用UnitySkills。
### 以下为历史快照(当前以本节为准)
'''
for name in ['接手入口.md','开发状态.md','TODO.md']:
p=folder/name;old=p.read_text(encoding='utf-8-sig');head,rest=old.split('\n',1)
if name!='接手入口.md': head='# '+('开发状态' if name=='开发状态.md' else 'TODO')+':R1实施与数据预检'
p.write_text(head+'\n\n'+entry+rest.lstrip(),encoding='utf-8')
record='''
## 检查点0补充:账号授权与现有数据
用户回复:“可以沿用101 和 102 ,不必强行修改,按最合适的方式执行即可”。因此允许读取/备份这两个测试账号,后续运行按完整存档事实选择,不再重复索取账号许可;不把此话视为自动PF迁移或强制造档。
`Preflight/`只使用既有S101AccountSession登录及PlayerKVClient.GetAsync(null),没有Set/Delete实现。首次沙箱请求Network失败;相同程序经自动审批在非沙箱连接成功。20260924T035000Z两备份均0键,摘要见backups对应summary,101 SHA256 B4A65FE01518DE0D953F47ED770EEF88FFF434C58EF7F4889E21D669501016C8,102 SHA256 A4DA163C8E53A171AA74485F2DCA4FE92303F7E6A8573A5FFDBB90A711B1F402。当前无需恢复,因为未写KV。问询只读PF来源检查/现成KV备份/先接线三个选项,未收到选择前不迁移数据。
## 检查点1/2进行中:接线与初验
按白名单新增三源码及meta,修改11个既有文件;保留默认PF路径,复用原Bridge/Schema/31模块方法和装备序列化。尚无运行许可。许可13断言通过;Unity CLI沙箱EPERM后相同编译经自动审批成功,0错误0警告;State确认正确项目、未PlayMode、Enabled/Ready=false、无进程标记。默认服务宿主8组73断言通过。4B2离线75组1715断言通过。4A/4B1沙箱运行发生缓存写入相关失败,原日志保留,正在诊断;不能先称全回归通过。
核查发现M24 EventShootingRangeData未在LoginStage注册,而在FishingEventData.SetEvent7/PlayerData活动逻辑才注册。本轮绑定仅Resolve已有实例,缺失则拒绝,不擅自新增注册。此处会阻止完整31对象加载;准备精确差异材料,不能因编译通过声称真实闭环通过。
'''
for name in ['阶段4最小真实玩法闭环实施记录-2026-09-24.md','开发日志.md']:
with (folder/name).open('a',encoding='utf-8') as f:f.write(record)
with (folder/'阶段4最小真实玩法闭环方案审查裁决与实施批准-2026-09-24.md').open('a',encoding='utf-8') as f:
f.write('\n## 后续账号授权补充\n\n用户已允许沿用101/102,不必强行修改。主会话已只读备份现有KV,均空档;可继续白名单代码验证,但不自动PF迁移/造档。运行数据门仍以完整有效存档及实际允许key为准,不再重复请求账号许可。\n')
p=folder/'阶段4B3当前TodoItem-2026-09-24.json';d=json.loads(p.read_text(encoding='utf-8-sig'))
d.update(phase='R1-implementation-existing-KV-empty',nextResponsibleSide='main-session',gameplayEnabled=False,formalRequests=4,formalRequestDetail='Successful: 2 login + 2 full KV Get; initial sandbox login Network failure excluded; Set/Delete=0',R1ImplementationApproved=True)
for item in d['todoItem']:
if item['id'].startswith('R1'): item['status']='see-R1-checkpoints-below'
d['todoItem'] += [dict(id='R1-C0',status='completed',detail='70 hashes/6 absent paths; design ruling; account authorization and empty-KV backups'),dict(id='R1-C1-C2',status='in-progress',detail='Whitelist source compiled; regression and M24 registration gap audit pending'),dict(id='R1-C3',status='not-complete',detail='Full save source and M24 binding prerequisite unresolved; no real gameplay loop or implementation closure')]
p.write_text(json.dumps(d,ensure_ascii=False,indent=2)+'\n',encoding='utf-8')
print('Current entry/state/TODO and checkpoint logs updated.')