Skip to content

feat(confluence): index PowerPoint and Excel attachments - #8050

Merged
waleedlatif1 merged 1 commit into
stagingfrom
feat/confluence-office-attachments
Sep 20, 2026
Merged

waleedlatif1 merged 1 commit into
stagingfrom
feat/confluence-office-attachments

Conversation

@mzxchandra

Copy link
Copy Markdown
Contributor

Summary

PR #7935 indexes PDF and Word attachments on Confluence pages and blog posts as separate knowledge-base documents. PowerPoint and Excel attachments on the same pages were still dropped silently at listing time, even though the shared parser pipeline already handles them.

  • Add pptx and xlsx to the Confluence attachment allowlist in connectors/confluence/attachments.ts. The set stays a deliberate Confluence-local subset of PIPELINE_PARSED_MIME_TYPES: macro-enabled, template, legacy binary (.xls, .ppt) and OpenDocument variants remain excluded.
  • Update the hydration skip reason and TSDoc to name all four families.
  • Update the two connector guides (knowledgebase/connectors.mdx, search/confluence.mdx) to list the new formats, the conversion advice for .xls/.ppt, and that already-connected spaces pick the formats up on their next sync.

No contentHash change is needed: ineligible attachments never produced a row, and Confluence re-lists every attachment each sync, so a newly eligible file arrives as a new document on the next run.

Type of Change

  • New feature

Testing

Unit (connectors/confluence/attachments.test.ts, extended in place):

  • listing includes .pptx/.xlsx stubs with the pipeline MIME types and excludes .pptm, .xls, .ppt, images and archived files
  • hydration matrix covers pdf, doc, docx, pptx, xlsx
  • genuine-bytes roundtrips through the public parser for PDF, DOCX, a JSZip-built PPTX and a SheetJS-built XLSX
  • an attachment renamed to .ppt/.xls after listing hydrates as a replace-skip without downloading

200 tests pass across the three Confluence-related files; type-check, lint (sim and docs) and check:api-validation pass.

End to end on a local build against a Confluence Cloud test site, with a seeded page carrying Onboarding Guide.pdf, Roadmap Deck.pptx, Budget Tracker.xlsx and Old Deck.ppt:

Sync Code Seeded page yielded
Baseline pre-change file page + Onboarding Guide.pdf only
Re-sync of the same connector this change + Roadmap Deck.pptx, + Budget Tracker.xlsx; .ppt still excluded (2 added, 0 deleted)

Stored objects are byte-identical to the uploaded files and keyed with their real extensions. After processing, sim knowledge search --kb returned the deck's chunk as the top hit for a sentence only the deck contains, and the spreadsheet's chunk for a sentence only the spreadsheet contains.

Reviewers: the wording in the two docs pages and the FILE_EXTENSIONS TSDoc are the judgement calls.

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

🤖 Generated with Claude Code

Extend the Confluence attachment allowlist so .pptx and .xlsx files on
synced pages and blog posts are listed and handed to the shared parser
pipeline the same way PDF and Word attachments already are. Macro-enabled,
template, legacy binary and OpenDocument variants stay excluded.

Add listing, hydration, genuine-bytes roundtrip and renamed-to-unsupported
coverage, and update the connector guides to name the new formats.
@vercel

vercel Bot commented Sep 20, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
docs Ready Ready Preview Sep 20, 2026 12:43am UTC

Request Review

@mzxchandra

Copy link
Copy Markdown
Contributor Author

@greptile @cubic review

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

@greptile @cubic review

@mzxchandra I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 4 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@greptile-apps

greptile-apps Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

The PR appears safe to merge; the newly allowed formats follow established connector hydration, parsing, access, and synchronization paths with focused test coverage.

Summary

This PR extends Confluence attachment indexing to modern Excel and PowerPoint files while retaining the existing deferred-download, parser, size-limit, and permission paths.

  • Adds .xlsx and .pptx to the Confluence-local attachment allowlist.
  • Expands listing, hydration, genuine-file parser, and unsupported-rename tests.
  • Updates both Confluence documentation surfaces with supported formats and migration guidance.
Diagram
%%{init: {'theme': 'neutral'}}%%
flowchart LR
  A[Confluence attachment listing] --> B{Supported extension?}
  B -->|pdf, doc, docx, pptx, xlsx| C[Emit deferred document stub]
  B -->|Other format| D[Exclude from listing]
  C --> E[Classify as new or changed]
  E --> F[Download original with 100 MB limit]
  F --> G[Shared parser pipeline]
  G --> H[PDF, Word, Excel, or PowerPoint parser]
  H --> I[Knowledge document processing and indexing]
Loading

Reviews (1) · Last reviewed commit: "feat(confluence): index PowerPoint and E..."

@waleedlatif1
waleedlatif1 merged commit a854709 into staging Sep 20, 2026
34 checks passed
@waleedlatif1
waleedlatif1 deleted the feat/confluence-office-attachments branch September 20, 2026 00:46
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.

2 participants