[platform] Recurring automation ticks re-delivered 3-30x per batch to live sessions (cross-type, multi-day)
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 38/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Domaine
- backend
Piste de recherche
No repository file, test, or entry point is identified; start by locating the upstream message-dispatch and recurring-automation delivery path. Reproduce or inspect duplicate deliveries across automation types, then verify that each (automation_id, slot_ts) is delivered once or exposes a reliable idempotency signal, with telemetry if that is the chosen resolution.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
Recurring automations (cron-style scheduled prompts) are being re-delivered to live sessions multiple times per tick. Observed continuously across several days (2026-09-16 → 09-25):
- Same tick / same minute delivered 3–30× per batch, batch-internal gaps of 8–20 seconds;
- A single inbound message can contain 30+ verbatim copies of the same scheduled instruction;
- Affects multiple sessions and multiple automation definitions; also observed for non-heartbeat message types (a whole advisory report got re-delivered the same way), so it is not specific to one automation's content.
Local-side forensics (all clean)
crontab -l: no related entries;launchctl: the automation runs as a single launchd instance (no duplicate daemons);- The scheduled script itself is deterministic and idempotent — every delivery logs
ok=true, repeated ticks short-circuit as already-done.
⇒ The duplication is not produced on the local machine. Root cause appears to be concurrent dispatch in the upstream delivery layer (multiple host-side workers picking up the same scheduled slot).
Impact
- Massive token/context waste: the vast majority of session messages become heartbeat noise;
- Statistics corruption: any acceptance/coverage metric counted from tick delivery must de-duplicate by timestamp (same tick ≥5 min apart counts once) — raw counts are unusable;
- Cross-type spread (advisory reports re-delivered verbatim) suggests the duplication happens at the message-dispatch boundary, not in automation definitions.
Requests
- Upstream delivery layer should de-duplicate per
(automation_id, slot_ts)— deliver once per slot, or coalesce concurrent workers; - Or expose an idempotency key / delivery contract so clients can reliably detect re-delivery;
- Or at minimum, expose per-automation duplicate-delivery telemetry so affected users can confirm the diagnosis.
Happy to provide sanitized timestamp logs if useful.
- Langage dominant
- Python
- Étoiles
- 39
- Forks
- 20
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de zai-org/zcode-plugins
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
zai-org/zcode-plugins#14 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 45/100
zai-org/zcode-plugins#43 · 2 commentaires ·
-
[mimosa 1.0.3] 深扫 worker 未构建:security-scan-worker.mimosa 解密为空模块,security_scan 恒返回 inconclusive Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 40/100
zai-org/zcode-plugins#41 ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 40/100
zai-org/zcode-plugins#37 ·
-
今天你上传代码了吗 Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 20/100
zai-org/zcode-plugins#36 · 1 réaction ·
Toutes les issues de zai-org/zcode-plugins
Issues similaires
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 75/100
-
hcocena Ouvertepolicies-accepted pre-review precheck-passed
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Bioconductor/BiocContributions#214 · 5 commentaires ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
TencentCloud/Octop#1169 · 1 commentaire ·
-
[开源推荐] 在老板拷问你之前,先让 AI 灵魂拷问你 Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
521xueweihan/HelloGitHub#3778 ·
-
The version checker's trailing attribute region has no control for a less-than inside a quoted value Ouvertearea: dashboard area: tests bug perceived difficulty: 2 python
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Nitjsefnie-Harness-Commons/daedalus#1105 · 1 commentaire ·