Skip to content

bug(scheduler): _execute_process_schedule lock-denial branch still unaudited (sibling of #1969) #1994

Closed

Description

@vybe

#1975 fixed the agent-schedule path: a cron tick suppressed by the Redis distributed lock now writes a skipped execution row. The identical bare-return lock-denial branch survives in _execute_process_schedule (src/scheduler/service.py ~2138–2141) — a denied process-schedule tick still leaves no audit record. Same one-call fix shape as #1975; out of #1969's explicit scope (agent schedules), filed as follow-up.

Refs #1969, #1975.

Activity

  1. self-assigned this
    on Aug 6, 2026
  2. dolho commented on Aug 6, 2026

    @dolho
    Contributor

    /claim — taking this. Will mirror the #1975 shape onto the process-schedule branch.

  3. github-actions commented on Aug 6, 2026

    @github-actions

    @dolho This issue is already assigned to dolho. Use /unclaim first if you want to take over.

  4. dolho commented on Aug 6, 2026

    @dolho
    Contributor

    PR up: #2039

    Mirrored the #1975 shape onto _execute_process_schedule. One thing the issue's "same one-call fix" framing understates: _record_skipped_process_schedule hard-coded the max_instances wording, so a bare call would have filed the lock collision under the wrong mechanism. Added skip_reason/event_reason the way #1808 did for the agent-schedule sibling, with defaults preserving the existing EVENT_JOB_MAX_INSTANCES caller's behaviour (pinned by a test).

    14 tests mirroring test_1969_lock_denied_tick_audit.py so the two paths stay reviewable side by side, including an end-to-end case that lands a real skipped row in SQLite rather than only asserting the helper was called. Mutation check: reverting service.py fails 6 of 14.

  5. added
    status-in-devMerged to dev, awaiting release cut to main
    and removed on Aug 6, 2026
  6. removed
    status-in-devMerged to dev, awaiting release cut to main
    on Aug 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions