Skip to content

Conversation

@Kroustille
Copy link
Member

Context

Briefly describe the purpose and context of this PR. Include relevant screenshots or screen recordings for the product team.

Use same generic documents methods to load list of resources.

How to test

Provide step-by-step instructions to test your changes. Include screenshots of your local testing results.

  • check that loading is working for every resources on private pages

Related issues

Checklist

Quality

  • I consider this work complete and ready for review
  • I tested all features and edge cases
  • I refactored code where necessary to improve quality
  • I made sure my code meets development guidelines
  • I performed a self-review of my code

Testing

  • I wrote test cases for the relevant use cases (unit, integration or e2e tests)
  • (Bug fixes only) I added tests that reproduce and verify the fix

What tests have been made

  • Unit tests
  • Integration tests
  • E2E tests
  • Local manual tests

Additional information

Any additional context, dependencies, or concerns reviewers should know about.

@Kroustille Kroustille added the needs feature env Indicate if the PR needs an associated feature environment label Jan 29, 2026
@github-actions github-actions bot added the Filigran Team use to identify PR from the Filigran team label Jan 29, 2026
@codecov
Copy link

codecov bot commented Jan 29, 2026

Codecov Report

❌ Patch coverage is 33.58779% with 87 lines in your changes missing coverage. Please review.
✅ Project coverage is 28.85%. Comparing base (a08a7d6) to head (aeef4a5).

Files with missing lines Patch % Lines
...grations/[serviceInstanceId]/integrations-list.tsx 0.00% 25 Missing ⚠️
...rds/[serviceInstanceId]/custom-dashboards-list.tsx 0.00% 21 Missing ⚠️
...ios/[serviceInstanceId]/openaev-scenarios-list.tsx 0.00% 21 Missing ⚠️
...naev_scenarios/[serviceInstanceId]/page-loader.tsx 0.00% 4 Missing ⚠️
...tom_dashboards/[serviceInstanceId]/page-loader.tsx 0.00% 4 Missing ⚠️
...i_integrations/[serviceInstanceId]/page-loader.tsx 0.00% 4 Missing ⚠️
...-api/src/modules/services/document/document.app.ts 91.30% 2 Missing ⚠️
...s/[serviceInstanceId]/public-integrations-list.tsx 0.00% 2 Missing ⚠️
...onents/service/components/service-manage-sheet.tsx 0.00% 1 Missing ⚠️
...document/one-click-deploy/choose-platform-form.tsx 0.00% 1 Missing ⚠️
... and 2 more
Additional details and impacted files

Impacted file tree graph

@@               Coverage Diff               @@
##           development    #1609      +/-   ##
===============================================
+ Coverage        28.81%   28.85%   +0.03%     
===============================================
  Files              617      617              
  Lines            40758    40744      -14     
  Branches          2061     2062       +1     
===============================================
+ Hits             11746    11758      +12     
+ Misses           28743    28717      -26     
  Partials           269      269              
Files with missing lines Coverage Δ
...es/custom-dashboards/custom-dashboards.resolver.ts 52.17% <ø> (+5.00%) ⬆️
...i/src/modules/services/document/document.helper.ts 90.03% <100.00%> (+0.79%) ⬆️
...src/modules/services/document/document.resolver.ts 40.76% <100.00%> (-7.09%) ⬇️
...odules/services/document/domain/document.domain.ts 71.57% <100.00%> (ø)
.../modules/services/integrations/integrations.app.ts 44.11% <ø> (+5.09%) ⬆️
...les/services/integrations/integrations.resolver.ts 54.00% <ø> (-0.91%) ⬇️
...es/openaev-scenarios/openaev-scenarios.resolver.ts 67.44% <ø> (+7.44%) ⬆️
...vice/custom-dashboards/custom-dashboard.graphql.ts 0.00% <ø> (ø)
...rc/components/service/document/document.graphql.ts 0.00% <ø> (ø)
...onents/service/integrations/integration.graphql.ts 0.00% <ø> (ø)
... and 15 more

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a08a7d6...aeef4a5. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Contributor

github-actions bot commented Jan 29, 2026

Summary

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Other ❓ Flaky 🍂 Duration ⏱️
31 31 0 0 0 0 3m 28s

Insights

Average Tests per Run Total Flaky Tests Total Failed Slowest Test (p95)
31 0 0 23.8s

Suites

31 passed, 0 failed, and 0 other

Suite Passed Failed Other Duration
✅ app/apps/portal-e2e-tests/tests/tests_files/api/user.spec.ts
        ✅ should prevent user to update another one when he does not have MANAGE_ACCESS
        ✅ should allow user to update another one when he has ADMINISTRATE_ORGANIZATION
        ✅ should allow user to update another one when he has MANAGE_ACCESS
✅ 3 ❌ 0 ⏭️ 0 5.1s
✅ app/apps/portal-e2e-tests/tests/tests_files/capabilities.spec.ts
        ✅ Should add subscription with capabilities
✅ 1 ❌ 0 ⏭️ 0 23.8s
✅ app/apps/portal-e2e-tests/tests/tests_files/csv-feeds.spec.ts
        ✅ Should add CSV Feed
        ✅ Should delete CSV Feed from the list
        ✅ Should delete CSV Feed from the detailed page
✅ 3 ❌ 0 ⏭️ 0 21.0s
✅ app/apps/portal-e2e-tests/tests/tests_files/custom-dashboards.spec.ts
        ✅ Should add custom dashboard
        ✅ Should see the custom dashboard on public page
        ✅ Should edit a custom dashboard
✅ 3 ❌ 0 ⏭️ 0 28.2s
✅ app/apps/portal-e2e-tests/tests/tests_files/document.spec.ts
        ✅ should perform complete CRUD operations on documents
✅ 1 ❌ 0 ⏭️ 0 4.6s
✅ app/apps/portal-e2e-tests/tests/tests_files/one-click-deploy.spec.ts
        ✅ should send telemetry event
✅ 1 ❌ 0 ⏭️ 0 7.6s
✅ app/apps/portal-e2e-tests/tests/tests_files/organizations.spec.ts
        ✅ should perform complete CRUD operations on organizations
✅ 1 ❌ 0 ⏭️ 0 5.6s
✅ app/apps/portal-e2e-tests/tests/tests_files/profile.spec.ts
        ✅ should update user profile information
✅ 1 ❌ 0 ⏭️ 0 4.7s
✅ app/apps/portal-e2e-tests/tests/tests_files/public/redirections.spec.ts
        ✅ should redirect user between public pages and login page
✅ 1 ❌ 0 ⏭️ 0 3.0s
✅ app/apps/portal-e2e-tests/tests/tests_files/registration.spec.ts
        ✅ should register openAEV platform
        ✅ should register openCTI platform
✅ 2 ❌ 0 ⏭️ 0 6.4s
✅ app/apps/portal-e2e-tests/tests/tests_files/service-management.spec.ts
        ✅ should be able to admin service
✅ 1 ❌ 0 ⏭️ 0 9.6s
✅ app/apps/portal-e2e-tests/tests/tests_files/service-pictures.spec.ts
        ✅ should be able to add pictures to a service
✅ 1 ❌ 0 ⏭️ 0 4.1s
✅ app/apps/portal-e2e-tests/tests/tests_files/streams.spec.ts
        ✅ Should add Stream
        ✅ Should delete Stream from the list
        ✅ Should delete Stream from the detailed page
✅ 3 ❌ 0 ⏭️ 0 23.0s
✅ app/apps/portal-e2e-tests/tests/tests_files/taxii-feeds.spec.ts
        ✅ Should add TAXII Feed
        ✅ Should delete TAXII Feed from the list
        ✅ Should delete TAXII Feed from the detailed page
✅ 3 ❌ 0 ⏭️ 0 22.0s
✅ app/apps/portal-e2e-tests/tests/tests_files/third-party-integrations.spec.ts
        ✅ Should add Third Party Integration
        ✅ Should delete Third Party Integration from the list
        ✅ Should delete Third Party Integration from the detailed page
✅ 3 ❌ 0 ⏭️ 0 22.2s
✅ app/apps/portal-e2e-tests/tests/tests_files/user.spec.ts
        ✅ Should perform complete CRUD of users as BYPASS
        ✅ Should only see authorized users
        ✅ Should not edit first and last name as MANAGE_ACCESS user
✅ 3 ❌ 0 ⏭️ 0 16.5s

🎉 No failed tests in this run. | 🍂 No flaky tests in this run.

Github Test Reporter by CTRF 💚

🔄 This comment has been updated

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Refactors private “resource list” pages (integrations, custom dashboards, OpenAEV scenarios) to use the generic documents query end-to-end, removing the now-redundant specialized list queries and centralizing list loading logic.

Changes:

  • Frontend list pages now load/refetch via DocumentsListQuery + documentItem_fragment instead of per-resource list queries.
  • Backend removes integrations/customDashboards/openAEVScenarios list queries and routes list fetching through DocumentApp.loadDocuments.
  • Updates GraphQL schemas/types and expands the shared document fragment to cover integration-specific fields.

Reviewed changes

Copilot reviewed 30 out of 31 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
apps/portal-front/src/utils/shareable-resources/shareable-resources.types.ts Extends shareable/subscribable resource unions to include the generic document fragment type.
apps/portal-front/src/components/service/openaev-scenarios/openaev-scenario.graphql.ts Removes OpenAEV scenarios list fragment/query in favor of the generic documents list query.
apps/portal-front/src/components/service/openaev-scenarios/[serviceInstanceId]/openaev-scenarios-list.tsx Switches OpenAEV scenario list to DocumentsListQuery + documentItem_fragment.
apps/portal-front/src/components/service/integrations/integration.utils.tsx Repoints LogicalFilterInput typing to documents query types.
apps/portal-front/src/components/service/integrations/integration.graphql.ts Removes integrations list fragment/query in favor of the generic documents list query.
apps/portal-front/src/components/service/integrations/[serviceInstanceId]/public-integrations-list.tsx Updates refetch typings (currently mismatched; needs correction).
apps/portal-front/src/components/service/integrations/[serviceInstanceId]/integrations-list.tsx Switches integrations list to DocumentsListQuery + documentItem_fragment.
apps/portal-front/src/components/service/document/one-click-deploy/one-platform-display.tsx Makes resource name null-safe for i18n interpolation.
apps/portal-front/src/components/service/document/one-click-deploy/one-click-deploy.tsx Makes telemetry payload resource_title null-safe.
apps/portal-front/src/components/service/document/one-click-deploy/choose-platform-form.tsx Makes resource name null-safe for i18n interpolation.
apps/portal-front/src/components/service/document/document.graphql.ts Expands documentItem_fragment fields and updates documents list query args (notably filters → logicalFilters).
apps/portal-front/src/components/service/custom-dashboards/custom-dashboard.graphql.ts Removes custom dashboards list fragment/query in favor of the generic documents list query.
apps/portal-front/src/components/service/custom-dashboards/[serviceInstanceId]/custom-dashboards-list.tsx Switches custom dashboards list to DocumentsListQuery + documentItem_fragment.
apps/portal-front/src/components/service/components/service-manage-sheet.tsx Makes document name null-safe for i18n interpolation.
apps/portal-front/schema.graphql Updates client schema: removes deprecated list queries and updates documents signature.
apps/portal-front/app/(application)/app/(user)/service/opencti_integrations/[serviceInstanceId]/page-loader.tsx Loads integrations lists through DocumentsListQuery with logical filters.
apps/portal-front/app/(application)/app/(user)/service/opencti_custom_dashboards/[serviceInstanceId]/page-loader.tsx Loads custom dashboards lists through DocumentsListQuery with logical filters.
apps/portal-front/app/(application)/app/(user)/service/openaev_scenarios/[serviceInstanceId]/page-loader.tsx Loads OpenAEV scenario lists through DocumentsListQuery with logical filters.
apps/portal-api/src/modules/services/openaev-scenarios/openaev-scenarios.resolver.ts Removes openAEVScenarios list resolver.
apps/portal-api/src/modules/services/openaev-scenarios/openaev-scenarios.graphql Removes openAEVScenarios list field from service schema.
apps/portal-api/src/modules/services/integrations/integrations.resolver.ts Removes integrations list resolver.
apps/portal-api/src/modules/services/integrations/integrations.graphql Removes integrations list field from service schema.
apps/portal-api/src/modules/services/integrations/integrations.app.ts Removes list-loading app method (now handled by documents).
apps/portal-api/src/modules/services/document/domain/document.domain.ts Updates parent-documents loader to respect parentsOnly input.
apps/portal-api/src/modules/services/document/document.resolver.ts Routes documents query through DocumentApp.loadDocuments (error mapping behavior changed).
apps/portal-api/src/modules/services/document/document.helper.ts Introduces ALL_METADATA_KEYS for generic list loading.
apps/portal-api/src/modules/services/document/document.graphql Removes legacy filters arg from documents query signature.
apps/portal-api/src/modules/services/document/document.app.ts Adds DocumentApp.loadDocuments to infer document type from service definition and fetch list.
apps/portal-api/src/modules/services/custom-dashboards/custom-dashboards.resolver.ts Removes customDashboards list resolver.
apps/portal-api/src/modules/services/custom-dashboards/custom-dashboards.graphql Removes customDashboards list field from service schema.
apps/portal-api/src/generated/resolvers-types.ts Updates generated resolver types to reflect schema removals/arg changes.
Files not reviewed (1)
  • apps/portal-api/src/generated/resolvers-types.ts: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Kroustille Kroustille force-pushed the issue/1605 branch 2 times, most recently from 108ce77 to 472b2ef Compare February 2, 2026 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Filigran Team use to identify PR from the Filigran team needs feature env Indicate if the PR needs an associated feature environment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants