Skip to content

feat(sdk): publish findings through durable concurrent batches - #453

Draft
kmbroai wants to merge 7 commits into
dev/kyleb/linear-publish-persistencefrom
dev/kyleb/linear-publish-durable
Draft

feat(sdk): publish findings through durable concurrent batches#453
kmbroai wants to merge 7 commits into
dev/kyleb/linear-publish-persistencefrom
dev/kyleb/linear-publish-durable

Conversation

@kmbroai

@kmbroai kmbroai commented Aug 15, 2026

Copy link
Copy Markdown
Collaborator

Summary

Publish prepared security findings in bounded concurrent batches and derive final results from validated durable records stored in local scan history.

Changes

  • Group connected Linear issue creation into batches of at most 20 findings.
  • Write finding-to-issue mappings into a private durable handoff instead of trusting model-generated summaries.
  • Validate exact finding, occurrence, destination, team, project, title, description, and priority before importing publication records.
  • Read final issue identities, URLs, and receipts back from the transactional workbench store.
  • Preserve partial successes, recover incomplete handoffs, and retain recoverable mappings if database persistence fails.
  • Keep CLI commands, interactive presentation, and end-to-end CLI integration out of this SDK layer.

Testing

  • Real SQLite publication-store, connected-app event validation, and durable publisher tests: 55 passed with 224 assertions.
  • Verified a 41-finding 20 + 20 + 1 batching boundary, malformed or absent Codex output, out-of-order completion, exact destination validation, partial failures, and durable recovery.
  • Consolidated recovery assertions into the stronger case preserving both written and independently salvaged issue mappings when database persistence fails.

Risk and rollout

  • Publication still uses the existing authenticated Codex profile and connected Linear app.
  • No issues are created before validating the completed local scan and every finding association.
  • Stacked on the workbench publication-persistence layer.

Public disclosure review

  • No customer, partner, prospect, or user identities, data, or identifying details are included.
  • No credentials, personal data, private source, scan findings, or nonpublic links or tickets are included.
  • I reviewed the branch name, title, description, commits, changes, comments, logs, screenshots, attachments, and links for public disclosure.

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