Repository navigation
feat(Dependencies): Show a change request's dependency changes - #8716
talissoncosta wants to merge 21 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 Walkthrough
Merge Risk: 🟡 Moderate · up to
|
1402ba9 to
e951f1a
Compare
e951f1a to
007b815
Compare
007b815 to
031d0af
Compare
031d0af to
f0b6c71
Compare
c04bb33 to
1a87b8a
Compare
Docker builds report
|
❌ private-cloud · depot-ubuntu-latest-16 — run #22590 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Failed testsfirefox › tests/environment-permission-test.pw.ts › Environment Permission Tests › Environment-level permissions control access to features, identities, and segments @enterprise 🗂️ Previous results✅ private-cloud · depot-ubuntu-latest-arm-16 — run #22590 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #22590 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #22590 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #22557 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #22556 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
✅ private-cloud · depot-ubuntu-latest-16 — run #22557 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-16 — run #22556 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #22557 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #22556 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #22556 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ oss · depot-ubuntu-latest-16 — run #22557 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Skipped testsfirefox › tests/onboarding-tests.pw.ts › Onboarding › New user connects via the single-page onboarding flow @oss |
Visual Regression24 screenshots compared. See report for details. |
There was a problem hiding this comment.
Actionable comments posted: 3
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Organization UI
- Review profile: ASSERTIVE
- Plan: Advanced
- Run ID:
e9bf0141-3342-4292-b5e5-847cb8b6837b
📒 Files selected for processing: 10
frontend/common/hooks/useFeatureStates.tsfrontend/common/types/responses.tsfrontend/common/utils/__tests__/diffDependencies.test.tsfrontend/common/utils/diffDependencies.tsfrontend/web/components/diff/DiffChangeRequest.tsxfrontend/web/components/diff/DiffFeature.tsxfrontend/web/components/feature-dependencies/DependencyChangesTable/DependencyChangesTable.scssfrontend/web/components/feature-dependencies/DependencyChangesTable/DependencyChangesTable.tsxfrontend/web/components/feature-dependencies/DependencyChangesTable/index.tsfrontend/web/components/feature-dependencies/useDependencyChanges.ts
Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 3 remain after this review.
The Dependencies tab lists the prerequisite changes held in each open or scheduled change request for the feature, linking to it. The change request page shows the prerequisite changes it would publish. Both read from the fake that stands in for #8449, and a deleted change request takes its staged changes with it. Gated behind flag_dependencies_change_requests. Refs #8450 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… first used The API cannot list change requests by feature, or features by change request, yet, so those two report an error until it can. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… rows Each change is a diff row with the live table's Status and Satisfies, on the tab and on the change request page. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
A failed list now says so on the tab and the change request page, instead of reading as nothing pending. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
With its status, and a link that opens in a new tab so the modal and anything staged in it stay open. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…he modal The change request page uses them too, so they no longer live in the tab. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The API can't list change requests by feature yet, so the section waits on that discussion while the rest lands. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The API has no list of features by change request, and the change request already says which features it changes. Features with no prerequisite changes get no panel. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ir own tab Next to Value and Segment Overrides, instead of a panel below the diff. Skipped once the change request is published, as the API refuses to list its dependencies then. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…e modal's Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…e API lists them Skipped without versioning or the create change request permission, as the API refuses both, and the feature states skip with them. The diff opens on the first tab that changes, not always the second. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…s Segment Overrides They already show in the Dependencies tab, so one change counted twice. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…endency changes load Committed change requests, and those without versioning or permission, load no dependency changes, so filtering their segments hid the change altogether. A failed load now also opens the Dependencies tab when nothing else changed, so its error is in view. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to GitHub limitations.
🟡 Minor · Reset the controlled tab when Dependencies disappears. · DiffFeature.tsx:103-112
frontend/web/components/diff/DiffFeature.tsx:103-112
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winReset the controlled tab when Dependencies disappears.
When the dependency query fails with no other changes,
firstChangedTabselects Dependencies. When a later refetch succeeds with no dependency changes,showDependenciesbecomes false, butvalueremains the old Dependencies index.Tabsdoes not clamp this value. It appliestab-activeonly to an exact tab index.The remaining Value tab therefore has no active content.
hideNavOnSingleTabalso hides its navigation, so the page can remain blank until the component state resets.Suggested fix
useEffect(() => { - if (firstChangedTab > 0) { - setValue(firstChangedTab) - } + setValue(firstChangedTab >= 0 ? firstChangedTab : 0) }, [firstChangedTab])
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Organization UI
- Review profile: ASSERTIVE
- Plan: Advanced
- Run ID:
794323b0-3a19-4af7-97a7-c69c4fdea4b2
📒 Files selected for processing: 12
frontend/common/types/responses.tsfrontend/web/components/diff/DiffChangeRequest.tsxfrontend/web/components/diff/DiffFeature.tsxfrontend/web/components/feature-dependencies/DependencyChangesTable/DependencyChangesTable.tsxfrontend/web/components/feature-dependencies/useDependencyChanges.tsfrontend/web/components/modals/create-feature/index.tsxfrontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/FeatureDependenciesTab.tsxfrontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/PrerequisitesTable/PrerequisitesTable.scssfrontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/PrerequisitesTable/PrerequisitesTable.tsxfrontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/dependenciesMode.tsfrontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/hooks/useStagedPrerequisites.tsxfrontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/prerequisiteState.ts
💤 Files with no reviewable changes: 5
- frontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/prerequisiteState.ts
- frontend/web/components/feature-dependencies/useDependencyChanges.ts
- frontend/web/components/feature-dependencies/DependencyChangesTable/DependencyChangesTable.tsx
- frontend/common/types/responses.ts
- frontend/web/components/modals/create-feature/tabs/FeatureDependenciesTab/FeatureDependenciesTab.tsx
Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 6 remain after this review.
docs/if required so people know about the feature.Changes
Contributes to #8450
Behind
flag_dependenciesandflag_dependencies_change_requests, the same flags as the feature's Dependencies tab.The pending section in the feature's Dependencies tab is in #8783.
How did you test this code?
Unit tests for
diffDependencies. Locally against #8720 with change requests on: staged two prerequisites, opened the change request and checked the Dependencies tab lists both. Removed a dependency alongside a segment override edit and checked each tab counts one change.