Skip to content

feat(server): keep issue links current with paced refreshes - #98

Merged
Bil0000 merged 5 commits into
feat/issue-auto-linkfrom
feat/issue-live-links
Oct 5, 2026
Merged

Bil0000 merged 5 commits into
feat/issue-auto-linkfrom
feat/issue-live-links

Conversation

@Bil0000

@Bil0000 Bil0000 commented Oct 4, 2026 •

Copy link
Copy Markdown
Owner

Linked issues kept the title they had when saved and showed no open or closed state. The server now refreshes active thread links, saves the current title and state, and sends those changes to every connected client. It checks newly added links right away. Active open links refresh every 4–6 minutes; settled or closed links refresh every 24–36 minutes. The spread keeps host calls from arriving at the same time.

This layer builds on the issue auto-link rule above the original issue tracking PR. Its diff keeps issue metadata current and brings issue reads under the existing PR request safeguards.

Updates use the thread project, provider, and host. An atomic guard prevents a late host reply from overwriting a newer link, a removed link, or a link that was added again. Shared links use one host read per sweep. Sync does not change the thread activity time.

GitHub and Linear background updates read only the issue number, title, URL, and state. A 15-second shared cache combines repeated reads without clearing full issue details. Other providers keep their existing detail read.

GitHub issue reads now share the existing PR host/account pause and 10% GraphQL reserve. Linear honors HTTP 429 and GraphQL RATELIMITED responses, retry headers, and request/complexity reset times. Its pauses stay scoped to the credential; an endpoint-only pause leaves other operations available. Sync resumes at the reported reset rather than applying the generic 30-minute failure delay.

Verified with 189 focused CLI, provider, service, sync, rate-limit, and PR discovery tests, scoped server type checks, lint, and whitespace checks. Tests cover the four-read limit, separate host/account failures, spread polling, immediate edits, link races, narrow summary reads, the shared GitHub reserve, and Linear reset and endpoint isolation. This image shows actual thread metadata before and after a fake host issue changed. No real host API was called.

Actual live issue metadata before and after host update

Archived and deleted threads are skipped. Successful edits, close, and reopen through T3 request an immediate refresh, including MCP calls. Host failures use per-issue or per-source retry delays. Changes made outside T3 can take up to 36 minutes to appear on closed or settled links. Issue-only metadata changes no longer trigger PR discovery.

The polling, retry, and refresh improvements build on @TonybynMp4’s #105, while keeping the guarded write path.

Model: GPT-6.1 Sol High. Harness: native Codex through T3 Code.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Oct 4, 2026
@Bil0000
Bil0000 marked this pull request as ready for review October 4, 2026 16:13
@Bil0000
Bil0000 added this pull request to stack #103 October 4, 2026 16:14
@Bil0000 Bil0000 changed the title feat(server): keep linked issue titles and state current feat(server): keep issue links current with paced refreshes Oct 4, 2026
@github-actions github-actions Bot added size:XL and removed size:L labels Oct 5, 2026
@Bil0000
Bil0000 merged commit 21f4622 into feat/issues-page Oct 5, 2026
12 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant