fix(queue): F1 版本维度收敛——family 启动校验 + budget 快照,删除永久 pending
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by reading the version handling in task_queue.py, especially the cited checks at lines 795–801 and 1727–1741, then trace how workers validate queue configuration at startup. The issue calls for changing version and budget handling across messages and worker startup. Done means the listed rolling-upgrade, startup-rejection, envelope-field, and environment-ledger acceptance criteria pass.
Written by the indexing model from the issue text.
Description
优先级 P1 · 依赖:无
基线 HEAD = 658a912f
Summary
6 个版本类字段混在一起;其中两个会让消息永久 pending:
config_family不匹配 → 不 ack、留 pending(task_queue.py:795-801);budget_generation不匹配 → 留 pending(task_queue.py:1727-1741)。
唯一出口 task_max_age_seconds 默认 0(关闭)。
建议
- 只保留两个版本维度:wire schema + IR;
config_family移到 worker 启动校验:queue/group/dlq/namespace 不匹配拒绝启动;budget_generation换成消息上的预算快照(max_deliveries一个整数);tenant_generation保留为身份字段,不计入版本预算;- 除 schema-too-new → DLQ 外,不再有永久 pending 路径。
验收
- 队列改名滚动升级:无消息卡 pending;连错队列的 worker 启动失败;
- 信封只剩
schema_version+tenant_generation+ 预算快照; - env/开关进入账本,每季净减 1。
边界
- 不改 schema 语义;不做新版本维度(需 ADR + 删除计划)。
- Dominant language
- Python
- Stars
- 0
- Forks
- 1
- Avg merge
- 2h 33m
- Merged PRs (30d)
- 9
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from jeffkit/plaita
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
jeffkit/plaita#331 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
jeffkit/plaita#330 · 1 comment ·
Maintainers usually reply within 1 day
-
keeper-ignore
Difficulty 5/5 Over a week Newbie friendliness 22/100
jeffkit/plaita#329 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
jeffkit/plaita#327 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
jeffkit/plaita#326 · 2 comments ·
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
iceboundrock/AutoForge#304 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
fossasia/visdom-dev#77 ·
Maintainers usually reply within 4 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
aws-cloudformation/cfn-lint#4890 ·
Maintainers usually reply within 2 days