区分同年同轨道会议事件并显式迁移原有身份 #30

Merged
Zayden-Jung merged 2 commits from codex/event-identity into main 2026-11-08 15:37:09 +00:00
Collaborator

WWW 1994和1995各举办两届,现有 editions 唯一键仅含 venue/year/track,补入另一届会混入原事件。本PR以独立event_key区分同年同轨道事件,保留原paper/submission/decision/source IDs与main轨道。

  • paper_atlas/db/schema.sql、db/events.py、db/store.py、postgres/writer.py:新样本使用四字段唯一键;既有库显式迁移。按源记录既有投稿与精确固定DBLP Fall证据刷新原事件,不按标题/作者猜季节;歧义、错误key及移来源至另一事件均拒绝。
  • paper_atlas/ingestion/event_identity.py:只读计划绑定数据库、edition哈希、所有业务表数量与目标来源/历史哈希;显式SHA确认、事务DDL及WWW1995原edition填键,SQLite外键检查、原生PG writer advisory lock与表锁,失败回滚、旧计划失效和安全重试。不重导论文/投稿/决定,不默认修改生产。生产只读计划的单条全表count在60秒限制内超时,现改为同一快照下最多5000个主键的精确分页,持续报告进度;不使用统计估计或放宽超时。
  • paper_atlas/ingestion/records.py、ingestion/backfill.py:manifest逐行核对事件键,一文件只允许一个事件,错误整文件回滚;身份回填选择正确事件,不挪动来源。
  • paper_atlas/querying.py、audits/histories.py:详细投稿与known_acceptances输出event_key;支持--event-key与status组合查询,保留同一论文在两届的不同决定。旧库普通查询仍可用。
  • paper_atlas/cli.py、.gitea/workflows/check.yml:maintain event-identity入口与安装后的CLI检查。
  • tests/test_event_identity.py:16项新测试,包括3项真实PG迁移/查询及失效计划/锁释放;覆盖精确主键分页计数、编码复合键边界、NUL/Unicode、ID/历史保留、同作品独立投稿、错误key、全文件回滚、回填与冻结SQLite保护。tests/test_submission_evidence.py改为显式旧列fixture,保持原迁移测试。
  • README.md、docs/event-identity.md:配置、计划/应用/重试、旧文件刷新、查询和生产验收边界。

生产只读预检已确认WWW1995 edition1212有59个Fall卷来源;CI1053通过后独立v2只读计划已完成并取回核验SHA256 defa3a9c620924f693bf680ca681006024998a19d41e28d69ce3d470ca991aea:20张业务表精确计数,1399个edition保持原ID,唯一拟填键目标edition1212/59投稿,5类受保护来源及历史表各59条均记录完整哈希。生产已于2026-11-08使用整合版4182070完成显式迁移并独立验收,报告SHA256 f5dbb8a8e387904adb076896e9c50a89c9e16cc6781ad8a93b7d7f29fe31acdf;保留1399原届次IDs/字段、59条Fall投稿来源和全库历史哈希。生产迁移已由包含本功能的PR31整合精确版本完成;Spring或1994新论文尚未补导。ECML/PKDD同年事件已属不同venue,不需要为这些既有记录迁移或合并。

分支从main 1b81d1a独立创建,不夹带其他未合并PR。PR25身份保护、PR27增量覆盖、PR28注解及PR29联合归属仍各自评审;未来生产运行版本需要整合所需防护,不能拿旧运行版本刷新数据。

本机仅AST与差异检查,未执行测试或构建。
精确head e044c6354679cf894783b4c5baa535cfe7bb6b40 的CI1053/job1150在授权aliyun-ces-control(ces-control:host)通过226项测试,wheel构建、安装及安装后CLI检查成功。日志SHA256 cfca78592e4f540ccde4669511c96c5e73a29fa48bf8a196a6d1082de5a222c9。

等待用户手动合并,不自动合并。完整goal仍active、13/17;实际历史数据补齐和最终全库去重尚未完成;本轮仅事件模型迁移验收完成。

WWW 1994和1995各举办两届,现有 editions 唯一键仅含 venue/year/track,补入另一届会混入原事件。本PR以独立event_key区分同年同轨道事件,保留原paper/submission/decision/source IDs与main轨道。 - paper_atlas/db/schema.sql、db/events.py、db/store.py、postgres/writer.py:新样本使用四字段唯一键;既有库显式迁移。按源记录既有投稿与精确固定DBLP Fall证据刷新原事件,不按标题/作者猜季节;歧义、错误key及移来源至另一事件均拒绝。 - paper_atlas/ingestion/event_identity.py:只读计划绑定数据库、edition哈希、所有业务表数量与目标来源/历史哈希;显式SHA确认、事务DDL及WWW1995原edition填键,SQLite外键检查、原生PG writer advisory lock与表锁,失败回滚、旧计划失效和安全重试。不重导论文/投稿/决定,不默认修改生产。生产只读计划的单条全表count在60秒限制内超时,现改为同一快照下最多5000个主键的精确分页,持续报告进度;不使用统计估计或放宽超时。 - paper_atlas/ingestion/records.py、ingestion/backfill.py:manifest逐行核对事件键,一文件只允许一个事件,错误整文件回滚;身份回填选择正确事件,不挪动来源。 - paper_atlas/querying.py、audits/histories.py:详细投稿与known_acceptances输出event_key;支持--event-key与status组合查询,保留同一论文在两届的不同决定。旧库普通查询仍可用。 - paper_atlas/cli.py、.gitea/workflows/check.yml:maintain event-identity入口与安装后的CLI检查。 - tests/test_event_identity.py:16项新测试,包括3项真实PG迁移/查询及失效计划/锁释放;覆盖精确主键分页计数、编码复合键边界、NUL/Unicode、ID/历史保留、同作品独立投稿、错误key、全文件回滚、回填与冻结SQLite保护。tests/test_submission_evidence.py改为显式旧列fixture,保持原迁移测试。 - README.md、docs/event-identity.md:配置、计划/应用/重试、旧文件刷新、查询和生产验收边界。 生产只读预检已确认WWW1995 edition1212有59个Fall卷来源;CI1053通过后独立v2只读计划已完成并取回核验SHA256 `defa3a9c620924f693bf680ca681006024998a19d41e28d69ce3d470ca991aea`:20张业务表精确计数,1399个edition保持原ID,唯一拟填键目标edition1212/59投稿,5类受保护来源及历史表各59条均记录完整哈希。生产已于2026-11-08使用整合版4182070完成显式迁移并独立验收,报告SHA256 f5dbb8a8e387904adb076896e9c50a89c9e16cc6781ad8a93b7d7f29fe31acdf;保留1399原届次IDs/字段、59条Fall投稿来源和全库历史哈希。生产迁移已由包含本功能的PR31整合精确版本完成;Spring或1994新论文尚未补导。ECML/PKDD同年事件已属不同venue,不需要为这些既有记录迁移或合并。 分支从main 1b81d1a独立创建,不夹带其他未合并PR。PR25身份保护、PR27增量覆盖、PR28注解及PR29联合归属仍各自评审;未来生产运行版本需要整合所需防护,不能拿旧运行版本刷新数据。 本机仅AST与差异检查,未执行测试或构建。 精确head `e044c6354679cf894783b4c5baa535cfe7bb6b40` 的CI1053/job1150在授权aliyun-ces-control(ces-control:host)通过226项测试,wheel构建、安装及安装后CLI检查成功。日志SHA256 cfca78592e4f540ccde4669511c96c5e73a29fa48bf8a196a6d1082de5a222c9。 等待用户手动合并,不自动合并。完整goal仍active、13/17;实际历史数据补齐和最终全库去重尚未完成;本轮仅事件模型迁移验收完成。
codex-bot added 1 commit 2026-11-08 12:41:39 +00:00
Add explicit conference event identity with guarded legacy migration
Metadata integrity checks / metadata (push) Successful in 1m14s
c3aeee6323
codex-bot marked the pull request as ready for review 2026-11-08 12:44:01 +00:00
codex-bot added 1 commit 2026-11-08 12:52:56 +00:00
Bound exact event migration counts with primary-key pagination
Metadata integrity checks / metadata (push) Successful in 1m20s
e044c63546
codex-bot marked the pull request as work in progress 2026-11-08 12:53:09 +00:00
codex-bot marked the pull request as ready for review 2026-11-08 12:55:05 +00:00
Zayden-Jung merged commit 90f3fb213e into main 2026-11-08 15:37:09 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Zayden-Jung/paper-atlas#30