fbbbe11388
feat: 后台题目列表支持按标签筛选
2026-08-05 06:00:03 -06:00
5b393a3b4c
feat(problem): 新增批量给题目添加/移除标签接口
...
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-05 04:21:08 -06:00
c775ae4b22
feat(problem): 新增标签管理接口
...
列表带题目数,重命名撞名时自动合并并返回受影响题数,删除后清标签缓存。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-05 04:18:41 -06:00
ec7cf71ea7
refactor(problem): 标签创建逻辑收敛到 services.resolve_tags
...
原本 4 处题目保存逻辑各自复制了一份 get-or-create,且大小写敏感、有竞态。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-05 04:15:36 -06:00
224960ac0f
fix
2026-07-26 07:20:16 -06:00
66fac1f66d
update
2026-07-05 03:12:34 -06:00
9535b64a4b
精简 Problem 模型:移除 rule_type / total_score / io_mode
...
系统只用 ACM 模式且题目固定标准 IO,这三列已无实际用途:
- rule_type / total_score:OI 专用,删除后 judge/dispatcher 的 OI 分支全部塌缩为 ACM
- io_mode:判题改为固定发送 Standard IO 常量;languages.py 的 seccomp_rule
保留 dict 形态但改用字面量 key,不改判题机 wire 契约
- prompt 字段保留(预留给未来 AI 分析)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-04 11:40:38 -06:00
4743b0398a
update
2026-07-04 11:07:24 -06:00
deae73cd88
feat: SQL 题测试点脚本回显接口
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-03 19:29:51 -06:00
803d6ca58d
feat: SQL 题测试点预览接口
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-03 19:25:47 -06:00
2ec036ac37
feat: 新增 rebuild_sql_display 管理命令,为存量 SQL 题回填展示数据
...
生成逻辑从 ProblemBase._build_sql_display 提取为 problem.utils.generate_sql_display,
管理端保存与回填命令共用。命令支持 --dry-run / --force。
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-03 09:42:11 -06:00
5af9d67fe2
fix: 终审修复——test_case_id 格式校验、modify 空变更报错、异常兜底与文档补充
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-03 06:26:00 -06:00
67079b5304
fix: _build_sql_display 兜底 info 结构损坏,避免 KeyError 导致 500
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-03 01:22:27 -06:00
06642b8131
feat: 保存 SQL 题时自动生成 sql_display 展示数据
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-03 01:15:58 -06:00
9f7f818d51
新增 SQL 题型:SQLite 内联判题(不依赖外部沙箱)
...
- SQL 作为语言接入现有提交流程,judge_task 按 language 分流到 SQLJudgeDispatcher
- judge/sql_runner.py:内存 SQLite 判题核心,查询题比结果集/增删改题比表状态,
authorizer + progress_handler + max_page_count 三重防护
- dispatcher 提取 _process_judge_result/_push_status 供 SQL 判题复用(行为不变)
- 测试点通道支持 1.sql..N.sql 压缩包,出题只需数据脚本+标准答案
- Problem 增加 sql_config 字段;options 数据迁移注册 SQL 语言
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-02 17:23:13 -06:00
d7e04adf07
fix
2026-06-05 09:46:49 -06:00
385d04505b
feat: open teaching analytics to Teacher Admin
...
StuckProblems, TopACTrend, AI user analysis, and problemset user
progress are now accessible to Teacher Admin (previously super-only).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-06-02 18:17:26 -06:00
f94d29cf93
feat: add Teacher Admin role to four-tier permission system
...
Introduces a four-tier role system: Regular User → Student Admin →
Teacher Admin → Super Admin. Teacher Admin can manage own contests,
problemsets, and view classroom data. Student Admin (renamed from Admin)
retains problem management only.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-06-02 18:13:33 -06:00
6ab2886f77
remove contest type
2026-05-26 23:10:27 -06:00
980b803517
feat: update all query filters to treat AST_CHECK_FAILED as accepted
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-25 20:45:15 -06:00
c9751c095f
update
2026-05-11 04:32:49 -06:00
ee84a0abe3
update
2026-05-11 04:27:15 -06:00
25bd43676e
update
2026-05-11 00:55:01 -06:00
128745f4f8
update yearly ac rate
2026-05-11 00:43:08 -06:00
df097dd610
fix flowchart
2026-05-07 06:09:13 -06:00
028ea6e5f9
fmt
2026-04-23 13:57:56 -06:00
a12a665fde
update
2026-03-18 13:26:32 +08:00
3cd944a7e1
fix
2026-03-08 21:37:46 +08:00
6527d8bfe5
update
2026-03-08 21:31:00 +08:00
889380c58e
add teaching feature
2026-03-08 21:15:46 +08:00
ed40019a14
自动生成流程图
2026-01-05 10:23:02 +08:00
4168d41a16
删除无用代码并且新增流程图相关内容
2025-10-11 23:29:56 +08:00
cbe0e297fd
update acm helper
2025-10-06 00:06:59 +08:00
7835cf013a
后台出题人
2025-10-03 14:30:40 +08:00
yuetsh
6356406b01
fix
2024-07-02 21:55:41 +08:00
a891255605
添加问题可见/不可见的API
2024-07-02 21:28:37 +08:00
yuetsh
8a47c6e0ef
update announcement and problem list serializer
2024-06-12 10:05:26 +08:00
7a152d65a3
get what i want
2024-05-07 20:25:59 +08:00
Beichi-CHs
d4b3a42f94
fix flake8 standard problems
2021-11-18 12:56:16 +08:00
helsonxiao
0566b2856e
fix(style): code style
2020-11-29 14:07:18 +08:00
myleosu
f2eb58062e
Update admin.py
2019-11-16 22:09:00 +08:00
myleosu
02a32f1c02
Update admin.py
2019-11-16 21:56:03 +08:00
myleosu
43df53adaf
Update admin.py
...
FPSProblemImport bug
2019-11-16 20:59:21 +08:00
virusdefender
0401468ff3
删除比赛题目暂时不删除测试用例
2019-09-22 15:05:02 +08:00
virusdefender
d957b724ce
删除题目的时候不删除测试用例
2019-04-30 13:12:47 +08:00
virusdefender
61b07dfc4c
fix fps parser
2019-04-05 14:22:58 +08:00
virusdefender
a5f0c8eb31
remove celery and use dramatiq
2019-03-11 17:59:24 +08:00
virusdefender
a52f383930
将编译选项修改为数据库存储
2019-01-05 14:12:17 +08:00
virusdefender
94baab8570
try to fix permission
2018-10-14 17:49:20 +08:00
zema1
24a5b5a1bc
support admin filter problems by problemID or problemDisplayID
2018-08-27 20:16:00 +08:00