Skip to content

DO NOT MERGE: Fix CDS extraction and scoped UI5 indexing - #466

Open
mbaluda wants to merge 4 commits into
mainfrom
cds-extractor-fixes
Open

mbaluda wants to merge 4 commits into
mainfrom
cds-extractor-fixes

Conversation

@mbaluda

@mbaluda mbaluda commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor
  • More reliable extraction: Better handles large file selections and filenames containing spaces or special characters, reducing failures caused by platform limits or filename interpretation. These improvements apply consistently across Windows and Unix-like systems.
  • Better CAP coverage: Includes CSN models even when no CDS sources are selected, alongside feature-specific models. In repositories combining Java CAP backends with JavaScript/UI5 workspaces, project boundaries are preserved so models are not mixed into the wrong project.
  • Analysis scope: Honors source inclusions and exclusions across CAP models, generated model data, and UI5 XML views and fragments.
  • More reproducible analysis: Prefers CAP compiler versions pinned in project or workspace lockfiles instead of potentially picking newer releases.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 11:56
@mbaluda
mbaluda force-pushed the cds-extractor-fixes branch from 2475f81 to a0e95da Compare November 4, 2026 11:58

This comment was marked as resolved.

@mbaluda
mbaluda force-pushed the cds-extractor-fixes branch from a0e95da to 39b9a0a Compare November 4, 2026 13:36
Copilot AI balanced review requested due to automatic review settings November 4, 2026 13:36

This comment was marked as resolved.

@mbaluda
mbaluda force-pushed the cds-extractor-fixes branch from 39b9a0a to 29cbc7e Compare November 4, 2026 14:47
Copilot AI balanced review requested due to automatic review settings November 4, 2026 14:47

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 17:05

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 17:45

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 21:22

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 21:36

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 22:00

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 22:48

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 4, 2026 22:59

This comment was marked as resolved.

Copilot AI balanced review requested due to automatic review settings November 5, 2026 14:20

This comment was marked as resolved.

Centralize project-owned CDS and CSN selection while preserving CAP entry points, source filters, workspace boundaries, and generated extraction outputs.

Share bounded, shell-safe compilation between extraction and test workflows, prefer locked compiler versions, and scope UI5 XML indexing consistently across platforms.

Simplify selection fixtures and dependency documentation, retain regression coverage, and mark rebuilt bundles as generated for easier review.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mbaluda
mbaluda force-pushed the cds-extractor-fixes branch from eccabc6 to d3aabc7 Compare November 5, 2026 15:10
Copilot AI balanced review requested due to automatic review settings November 5, 2026 15:10

This comment was marked as resolved.

Retain the default CDS globs while adding concrete CSN source includes through the literal filename and byte-limit safeguards. Add unfiltered extraction and batching regressions, and rebuild the extractor bundle.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings November 5, 2026 16:29

This comment was marked as resolved.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings November 5, 2026 18:45

Copilot AI 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.

🔵 Needs a closer look

Mocked execution tests cannot establish native Windows command escaping and compiler behavior or multi-batch CodeQL extraction completeness, so human integration validation is needed.

No open issues 🎉

2 resolved since last review
1 file not reviewed
  • extractors/cds/tools/package-lock.json: Generated file

Review effort: Balanced

@mbaluda
mbaluda requested review from a team and data-douser November 9, 2026 14:45
@mbaluda
mbaluda marked this pull request as ready for review November 9, 2026 14:45
@mbaluda mbaluda changed the title Fix CDS extraction and scoped UI5 indexing DO NOT MERGE: Fix CDS extraction and scoped UI5 indexing Nov 10, 2026
Copilot AI balanced review requested due to automatic review settings November 11, 2026 03:02

Copilot AI 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.

🟡 Changes recommended

Source-filter matching misinterprets literal characters in CDS and UI5 paths, while project discovery omits CSN-only projects, causing incorrect analysis scope.

3 open issues
1 file not reviewed
  • extractors/cds/tools/package-lock.json: Generated file

Review effort: Balanced

const includePaths = [normalizedPath, ...includedSourcePaths.map(normalizePathSeparators)];
const matches = (raw: string, include = false): boolean => {
// Escape literal Unix backslashes before minimatch parses the glob.
const pattern = normalizePathSeparators(raw).replace(/\\/g, '\\\\').replace(/\/+$/, '');
const pattern = match[2]
.split(sep)
.join('/')
.replace(/\\/g, '\\\\')

This branch has not been deployed

No deployments
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.

4 participants