Skip to content

test: share Linear access suite runtime startup - #29688

Merged
OrcaWin merged 1 commit into
mainfrom
OrcaWin/test-audit-linear-startup-consolidation
Oct 16, 2026
Merged

OrcaWin merged 1 commit into
mainfrom
OrcaWin/test-audit-linear-startup-consolidation

Conversation

@OrcaWin

@OrcaWin OrcaWin commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

ELI5

The Linear tests keep all 25 cases while loading the application runtime once instead of twice. Application behavior is unchanged.

What Changed

Move the project-access suite into a byte-identical imported fragment under the existing agent-access entry point. Every assertion, fresh runtime instance, provider mock, and deadline stays intact. The existing guard against accidental default RPC catalog use also covers the imported cases.

Why

These suites protect distinct behaviors but repeat an isolated runtime startup. Sharing the entry point removes that repeated work without pooling runtime instances, replacing the facade with a mock, or dropping coverage. The separate read-command, save-issue, generic RPC, and caller-permission suites remain independent.

Linked Issue

N/A — internal test audit.

Visual Proof

N/A — test-only change; no application UI or interaction changes.

Testing

  • I manually tested these changes locally
  • Automated tests added/updated, or explained why not below

Linux, background launch enabled, Node 24.21.0 / Bun 1.4.3, one worker. Untouched baseline and candidate pass the same 25 case names. Three alternating pairs all pass with zero unhandled errors: median command wall 11,208 → 9,634 ms (14% lower), summed module time 9,418 → 7,948 ms (16% lower). These are local selected-suite measurements. The source-qualified hosted comparison below also supports reduced startup; whole-PR wall-time savings remain unproven.

Shuffled execution (seed 104729): 52 cases across five suites pass. Three deliberate production faults are caught at the intended assertions: omit projectId from actual create arguments, select the wrong-team project, and leak provider content into the public project result. Each production file was restored byte-for-byte.

The actual CI dependency graph connects the fragment to the retained entry point; discovery includes the keeper and excludes both the fragment and old entry point. Node typecheck, changed-code-quality, focused lint/format and diff checks pass. Full PR workflow 38908365173 and its aggregate passed at exact head 0f959d68; all 32 checks completed successfully or intentionally skipped. Hosted Node 24.19.0 / Bun 1.4.3: selected module sum 6,612 → 2,001 ms, collection 6,426.454 → 1,909.832 ms, execution 94.154 → 81.346 ms; 17+8 cases become 25 passing cases. All five raw shard inventories reconcile: 12,368 → 12,371 files reflects four inherited test additions and the one intended entrypoint removal. Selected source, runner and dependencies match; 27 unrelated baseline paths and three inherited candidate test paths differ. This is one ordinary hosted comparison with different shard placement, not a whole-CI wall-time claim.

Review

Independent preservation review approved for exact head 0f959d68. Test/source evidence covers all 25 retained cases and the widened provider-mock scope. Production/support: zero changed lines. Test: one import added plus a byte-identical rename; zero cases removed.

Agent skill upstream boundary

  • Not applicable, or this change copies or mechanically translates no upstream skill-installer source, tests, fixtures, registry entries, path tables, comments, or documentation.

Notes

No runtime, platform, remote-host, folder-workspace or wire behavior changes. The preselected hosted comparison uses ordinary full PR workflow 38905448586; source and inherited checkout differences were qualified before interpreting timings. No benchmark-only retries planned.

Checklist

  • This PR is small and focused
  • I explained what changed and why (ELI5, the user-facing before/after, the mechanism, and why over the alternatives)
  • Before/after screenshots or videos attached for UI changes, or N/A with reason
  • Self-reviewed for correctness, security, and performance
  • Cross-platform, SSH/remote, and path/shortcut impact considered (or N/A)
  • pnpm lint, pnpm typecheck, pnpm test, and pnpm build pass (or CI will cover; local preferred)

@coderabbitai

coderabbitai Bot commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: eabd5eb2-c8db-4a85-83f8-c559c95716b1
📥 Commits

Reviewing files that changed from the base of the PR and between bd32573 and 0f959d6.

📒 Files selected for processing: 2
  • src/main/runtime/rpc/methods/linear-agent-access.test.ts
  • src/main/runtime/rpc/methods/linear-agent-project-access.spec.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 3 remain after this review.

📝 Walkthrough

The test file now imports linear-agent-project-access.spec, adding the spec to the test suite’s imports.

Priority: ⬇️ Low

Merge Risk: ⚪ Minimal · up to 0f959

The project-access suite runs once through the existing test entry point, preserving the intended test consolidation without a material test-discovery or runtime risk.

Pre-merge checks: Passed 5
Check name Status Explanation
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Title check Passed The title clearly and concisely describes the main change: sharing Linear access suite runtime startup in a test-only update.
Description check Passed The description is detailed and follows the required sections. It explains the change, rationale, testing, scope, risks, and lack of UI impact. The internal test-audit explanation supports the absence…
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1 files.

Full details: Description check

Explanation

The description is detailed and follows the required sections. It explains the change, rationale, testing, scope, risks, and lack of UI impact. The internal test-audit explanation supports the absence of a linked issue, and pending full hosted checks are disclosed.

✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
  • 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.

@OrcaWin
OrcaWin merged commit 7cbbc95 into main Oct 16, 2026
32 checks passed
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