Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Terminalize requests pinned to permanently unavailable agent versions

Open
#1,395 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
55/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript

Research direction

Start at the invalid-pending-target reconciliation path and trace the existing request lifecycle conventions for terminal status and failure metadata. Add coverage for deleted agents, missing or retired exact versions, queue movement, temporary unavailability, and prevention of silent version substitution. Done means permanently unavailable pinned targets are terminalized while recoverable cases return to pending.

Written by the indexing model from the issue text.

Description

Problem

Scheduler reconciliation returns queued requests to pending when their selected registry target disappears or moves queues. Invalid pending targets are currently only logged and reported through telemetry.

A request explicitly pinned to an agent version that has been deleted, removed, or retired can therefore remain pending indefinitely unless that exact target is restored.

This was identified during review of #1381.

Expected behavior

Terminalize requests whose explicitly selected target is permanently unavailable, with a clear failure reason such as agent_version_unavailable.

Preserve recovery for cases that may become valid again:

  • A version that moved to another queue should be returned to pending and dispatched to its current queue.
  • A temporary agent outage should remain recoverable.
  • Requests must not be silently migrated to another agent version because that could change execution behavior and undermine benchmark reproducibility.

Implementation notes

Update invalid-pending-target reconciliation to distinguish permanent invalidity from temporary unavailability. Add coverage for:

  • deleted agent
  • missing or retired exact version
  • queue movement
  • temporary agent unavailability
  • no silent version substitution

Keep the terminal status and failure metadata consistent with existing request lifecycle conventions.

Dominant language
TypeScript
Stars
5
Forks
5
Avg merge
4d 19h
Merged PRs (30d)
15

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/scope

All issues in microsoft/scope

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.