Skip to content

feat(aggregator): deep-link board/roadmap/item/projects out to live services (#1136) - #2447

Merged
dezren39 merged 1 commit into
mainfrom
queue/3034-1136-service-links
Oct 30, 2026
Merged

dezren39 merged 1 commit into
mainfrom
queue/3034-1136-service-links

Conversation

@dezren39

@dezren39 dezren39 commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Implements #1136 (queue task 3034): deep-link every card/row out to its live service.

Registry first — new pm-stack/aggregator/src/service-links.ts: service id → URL templates in one place. Browser forms only: Kaneo at its public hostname, Grist / Pad / ready-for-agent on the tailnet MagicDNS host (amd-6.raptor-pumpkinseed.ts.net) — never loopback or raw IPs. The Kaneo task route (/dashboard/workspace/<ws>/project/<proj>/task/<task>) was verified against the live Kaneo web bundle on 2026-10-29 (its by-ticket route redirects to exactly this canonical form).

The gap this closes: BoardItem.kaneoUrl was set by both sources but rendered nowhere — and the live source set it to the loopback API base. RoadmapRow carried no Grist URL at all.

  • sources/live.ts: board items now carry the per-task Kaneo deep link (workspaceId plumbed out of kaneoProjects); roadmap rows carry gristUrl (roadmap document link). Fixtures roadmap rows carry it too.
  • render.ts: Kaneo ↗ badge on board cards, Grist ↗ badge on roadmap cards, a Live services line on item pages (server passes itemServiceLinks(subject) via extras), and a Live services strip on the projects page (both the pool and no-pool branches).
  • model.ts: RoadmapRow.gristUrl?: string.

Verification: test/service-links.test.ts (8 tests) covers registry forms, the URL builders, itemServiceLinks, and all four render surfaces. Full aggregator suite: 349 pass / 1 fail — the one failure (actions.test.ts, attention snooze strip) fails identically on clean main, pre-existing and unrelated. tsc --noEmit clean.

Refs #1136 — the issue stays open for live spot-verification once this lands; merging is currently blocked by the merge-queue stall #2403 (no merges since #2233, 10:57Z).


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

…ervices (#1136)

Service-link registry (src/service-links.ts): service id -> browser URL
templates — Kaneo public hostname, Grist/Pad/ready-for-agent on the
tailnet MagicDNS host, never loopback. Kaneo task route verified against
the live bundle (/dashboard/workspace/<ws>/project/<proj>/task/<task>).

- live source: BoardItem.kaneoUrl is now the per-task deep link (was the
  loopback API base); RoadmapRow gains gristUrl (roadmap doc link).
- render: Kaneo badge on board cards, Grist badge on roadmap cards,
  Live services line on item pages (via server extras), service strip
  on the projects page (both pool and no-pool branches).
- BoardItem.kaneoUrl was previously set by both sources but rendered
  nowhere — the field was dead.
- tests: test/service-links.test.ts (8) cover registry forms, builders,
  and all four render surfaces. Full suite 349 pass / 1 pre-existing
  fail (actions.test.ts attention snooze strip, fails on clean main too).
@dezren39
dezren39 requested a review from a team as a code owner October 29, 2026 22:22
@coderabbitai

coderabbitai Bot commented Oct 29, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 48 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 09f7e5f6-9107-4c91-87fa-e3e408841589
Commits

Reviewing files that changed from the base of the PR and between 5a34fa7 and e9f6c6c.

Files selected for processing: 7
  • pm-stack/aggregator/src/model.ts
  • pm-stack/aggregator/src/render.ts
  • pm-stack/aggregator/src/server.ts
  • pm-stack/aggregator/src/service-links.ts
  • pm-stack/aggregator/src/sources/fixtures.ts
  • pm-stack/aggregator/src/sources/live.ts
  • pm-stack/aggregator/test/service-links.test.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-29T22:23:51.298792Z e9f6c6c PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@dezren39
dezren39 added this pull request to the merge queue Oct 29, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to Branch Protection failures Oct 29, 2026
You're not authorized to push to this branch. Visit "About protected branches" for more information.
@dezren39
dezren39 added this pull request to the merge queue Oct 29, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to Branch Protection failures Oct 29, 2026
You're not authorized to push to this branch. Visit "About protected branches" for more information.
@dezren39
dezren39 added this pull request to the merge queue Oct 30, 2026
Merged via the queue into main with commit 2e01ec1 Oct 30, 2026
3 checks passed
@dezren39
dezren39 deleted the queue/3034-1136-service-links branch October 30, 2026 00:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant