Skip to content

fix(labels): gate Studio module on remote feature - #1041

Merged
sfmskywalker merged 1 commit into
mainfrom
codex/1038-labels-remote-feature
Sep 14, 2026
Merged

sfmskywalker merged 1 commit into
mainfrom
codex/1038-labels-remote-feature

Conversation

@sfmskywalker

Copy link
Copy Markdown
Member

Purpose

Close #1038 by making the Studio Labels module follow the optional backend feature contract.

Scope

  • Add the canonical Labels remote-feature metadata.
  • Gate the Labels menu with the existing fail-closed helper.
  • No Labels UX or server persistence changes.

Changes

  • Add [RemoteFeature(RemoteFeatureName)] to the Labels Feature.
  • Define RemoteFeatureName as Elsa.Labels.ShellFeatures.Labels.
  • Inject IRemoteFeatureProvider into LabelsMenu and gate it with IsEnabledOrDefaultAsync.
  • Add menu failure-path, feature-metadata, and widget-initialization coverage.

Verification

  • Focused Labels tests: 8 passed.
  • Full Elsa.Studio.Administration.Tests: 44 passed.
  • git diff --check: clean.
  • Commit signature verified locally.

@sfmskywalker
sfmskywalker requested a balanced review from Copilot September 14, 2026 01:33

@sfmskywalker sfmskywalker left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Round 1 — APPROVE (HIGH)

Tip: d2d1aee9b51691e39d34da92c43e7ef059460884main (#1038)

Code Review gate: APPROVE + HIGH
(Formal GitHub event COMMENT — cannot approve an own-authored PR.)

The Labels module now declares the exact Core shell-feature name, the menu uses the existing fail-closed helper, and the tests cover enabled/disabled plus authentication, cancellation, and prerender failures. The existing Administration placement assertion was updated with an enabled provider; widget registration remains covered. Root verification: exact four-file diff reviewed, signed commit verified, worker reported 8/8 focused and 44/44 full Administration tests, and git diff --check is clean.

Merge only after exact-head Copilot is clear, Greptile is 5/5 with zero unresolved threads, and hosted checks are terminal green.

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.

🟢 Approved

The focused change follows established remote-feature patterns and includes appropriate coverage.

Pull request overview

Gates the Labels Studio module on the optional backend Labels feature.

Changes:

  • Adds canonical remote-feature metadata.
  • Hides Labels navigation when unavailable.
  • Adds metadata, initialization, and failure-path tests.
File summaries
File Description
Module.cs Declares the required remote feature.
LabelsMenu.cs Adds fail-closed feature gating.
LabelsMenuTests.cs Covers gating and feature initialization.
AdministrationNavigationTests.cs Updates construction for the new dependency.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 0
  • Review effort level: Balanced (auto)

Note

Copilot is running an experiment and ran this review at Balanced.


💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

@greptile-apps

greptile-apps Bot commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

No confirmed change prevents merging, though the focused .NET test run remains unavailable until a .NET SDK is installed.

What we checked:

  • T-Rex ran an environment check and confirmed the .NET toolchain is not installed, with dotnet not found during the validation flow. T-Rex
  • T-Rex attempted the prescribed labels-validation tests, but each run failed due to dotnet: command not found, and the environment check reported dotnet --info exiting with 127. T-Rex
  • T-Rex uploaded and referenced the labels validation command script and the after-run logs to support validation review. T-Rex

Summary

  • Summary

  • The Labels module now declares its backend feature identifier and exposes Labels navigation only when that feature is available.
  • No product issue was confirmed in the reviewed changes.
  • T-Rex validation blocked

  • The focused Labels restore and test run could not start because no .NET SDK or dotnet executable is installed in the environment.

Reviews (1) · Last reviewed commit: "feat(labels): gate navigation by remote ..."

@sfmskywalker
sfmskywalker merged commit 168dbce into main Sep 14, 2026
11 checks passed
@sfmskywalker
sfmskywalker deleted the codex/1038-labels-remote-feature branch September 14, 2026 01:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Labels module missing RemoteFeature + menu gate (core LabelsFeature optional)

2 participants