Files
DjangoAdmin_FastAPI_EleVue/tests/contract/golden/permissions.json
T
ClaudeandClaude fe1d191e55 feat(phase0): 工具链 + 契约快照测试,修复既有 bug
- 新增 pyproject.toml / pytest.ini / Makefile / requirements-dev.txt
- 新增 3 个契约快照测试(路由167/权限串148/表名25),守护前端与数据契约
- 修复 requirements.txt UTF-16 编码导致 pip 无法解析
- 修复 JobLog 未继承 Base 导致无法映射(fastapi_job_log 表缺失于 metadata)
- 修复 base_model.to_dict() 未序列化纯 date 类型(birthday 等导致 500)
- 补充 .gitignore(.env/缓存/上传目录)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-07 09:57:33 +08:00

150 lines
3.3 KiB
JSON

[
"sys:ad:add",
"sys:ad:batch_delete",
"sys:ad:delete",
"sys:ad:detail",
"sys:ad:page",
"sys:ad:status",
"sys:ad:update",
"sys:adsort:add",
"sys:adsort:batch_delete",
"sys:adsort:delete",
"sys:adsort:detail",
"sys:adsort:page",
"sys:adsort:update",
"sys:city:add",
"sys:city:batch_delete",
"sys:city:delete",
"sys:city:detail",
"sys:city:page",
"sys:city:update",
"sys:config:add",
"sys:config:batch_delete",
"sys:config:delete",
"sys:config:detail",
"sys:config:page",
"sys:config:update",
"sys:configitem:add",
"sys:configitem:batch_delete",
"sys:configitem:delete",
"sys:configitem:detail",
"sys:configitem:page",
"sys:configitem:status",
"sys:configitem:update",
"sys:dept:add",
"sys:dept:delete",
"sys:dept:detail",
"sys:dept:list",
"sys:dept:update",
"sys:dict:add",
"sys:dict:batch_delete",
"sys:dict:delete",
"sys:dict:detail",
"sys:dict:page",
"sys:dict:update",
"sys:dictitem:add",
"sys:dictitem:batch_delete",
"sys:dictitem:delete",
"sys:dictitem:detail",
"sys:dictitem:page",
"sys:dictitem:status",
"sys:dictitem:update",
"sys:item:add",
"sys:item:batch_delete",
"sys:item:delete",
"sys:item:detail",
"sys:item:page",
"sys:item:update",
"sys:itemcate:add",
"sys:itemcate:batch_delete",
"sys:itemcate:delete",
"sys:itemcate:detail",
"sys:itemcate:page",
"sys:itemcate:update",
"sys:job:add",
"sys:job:delete",
"sys:job:detail",
"sys:job:page",
"sys:job:pause",
"sys:job:reload",
"sys:job:resume",
"sys:job:run_once",
"sys:job:status",
"sys:job:update",
"sys:job_log:batch_delete",
"sys:job_log:delete",
"sys:job_log:detail",
"sys:job_log:page",
"sys:level:add",
"sys:level:batch_delete",
"sys:level:delete",
"sys:level:detail",
"sys:level:export",
"sys:level:import",
"sys:level:page",
"sys:level:status",
"sys:level:update",
"sys:link:add",
"sys:link:batch_delete",
"sys:link:delete",
"sys:link:detail",
"sys:link:page",
"sys:link:status",
"sys:link:update",
"sys:login_log:batch_delete",
"sys:login_log:delete",
"sys:login_log:page",
"sys:member:add",
"sys:member:batch_delete",
"sys:member:delete",
"sys:member:detail",
"sys:member:page",
"sys:member:status",
"sys:member:update",
"sys:memberlevel:add",
"sys:memberlevel:batch_delete",
"sys:memberlevel:delete",
"sys:memberlevel:detail",
"sys:memberlevel:page",
"sys:memberlevel:update",
"sys:menu:add",
"sys:menu:delete",
"sys:menu:detail",
"sys:menu:list",
"sys:menu:update",
"sys:notice:add",
"sys:notice:batch_delete",
"sys:notice:delete",
"sys:notice:detail",
"sys:notice:page",
"sys:notice:update",
"sys:operation_log:batch_delete",
"sys:operation_log:delete",
"sys:operation_log:page",
"sys:position:add",
"sys:position:batch_delete",
"sys:position:delete",
"sys:position:detail",
"sys:position:page",
"sys:position:status",
"sys:position:update",
"sys:role:add",
"sys:role:batch_delete",
"sys:role:delete",
"sys:role:detail",
"sys:role:page",
"sys:role:status",
"sys:role:update",
"sys:rolemenu:index",
"sys:rolemenu:save",
"sys:upload:file",
"sys:upload:image",
"sys:user:add",
"sys:user:batch_delete",
"sys:user:delete",
"sys:user:detail",
"sys:user:page",
"sys:user:resetPwd",
"sys:user:status",
"sys:user:update"
]