Skip to content

fix: complete fail-closed closure delivery - #24

Merged
calltelemetry-jason merged 3 commits into
masterfrom
fix/REL-358-close-delivery-contract
Aug 24, 2026
Merged

calltelemetry-jason merged 3 commits into
masterfrom
fix/REL-358-close-delivery-contract

Conversation

@calltelemetry-jason

@calltelemetry-jason calltelemetry-jason commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Completes the fail-closed Linear close contract before publishing 0.9.28.

Changes

  • route read-only closure report generation through the embedded streaming runner
  • reject Linear activity mutations unless agentActivityCreate.success is exactly true
  • normalize partial and null GraphQL activity failures
  • replace the new closure regression fixed delay with an event-driven completion signal
  • rebuild committed distribution artifacts and bump package/plugin metadata to 0.9.28

Testing

  • npm run build
  • npm run typecheck
  • npx vitest run src/api/linear-api.test.ts src/pipeline/webhook.test.ts — 207 passed
  • npm test -- --run — 43 files, 1,213 tests passed
  • npm run test:coverage — 89.45% statements, 81.04% branches
  • npm pack --dry-run --json — valid 0.9.28 package
  • independent Codex review — clean
  • CodeRabbit CLI — 0 findings on final head
  • Gemini high-thinking review — reviewed; reported concerns triaged against passing tests and existing caught streaming emissions

Checklist

  • No secrets or credentials included
  • openclaw doctor passes after changes — deferred until released package is installed
  • Tested with a simulated Linear webhook

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

@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 15 minutes.

View limit details

Limit details: You’ve used the included review currently available. Your 156 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 96345877-a2cf-4763-8eff-7798822c9c40

📥 Commits

Reviewing files that changed from the base of the PR and between 1277272 and e389fa3.

⛔ Files ignored due to path filters (3)
  • dist/src/api/linear-api.js is excluded by !**/dist/**
  • dist/src/pipeline/webhook.js is excluded by !**/dist/**
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (6)
  • openclaw.plugin.json
  • package.json
  • src/api/linear-api.test.ts
  • src/api/linear-api.ts
  • src/pipeline/webhook.test.ts
  • src/pipeline/webhook.ts

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

@calltelemetry-jason
calltelemetry-jason enabled auto-merge (squash) August 24, 2026 17:55
@calltelemetry-jason
calltelemetry-jason merged commit 0ec8541 into master Aug 24, 2026
4 checks passed
@calltelemetry-jason
calltelemetry-jason deleted the fix/REL-358-close-delivery-contract branch August 24, 2026 17:56
@codecov

codecov Bot commented Aug 24, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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