Skip to content

feat(config): add form-view-enabled feature flag, default off - #8029

Merged
mengw15 merged 1 commit into
apache:mainfrom
yangzhang75:formview-pr1-flag
Aug 28, 2026
Merged

feat(config): add form-view-enabled feature flag, default off#8029
mengw15 merged 1 commit into
apache:mainfrom
yangzhang75:formview-pr1-flag

Conversation

@yangzhang75

Copy link
Copy Markdown
Contributor

What changes were proposed in this PR?

Adds a single feature flag form-view-enabled (default off) that will gate the entire Form View feature, so the rest of the stacked series can merge without exposing an unfinished feature to users.

  • common/config/.../gui.conf: gui.workflow-workspace.form-view-enabled = false (env-overridable)
  • GuiConfig: read it as guiWorkflowWorkspaceFormViewEnabled
  • ConfigResource: expose via /api/config/gui as formViewEnabled
  • frontend gui-config.ts + gui-config.service.mock.ts: add formViewEnabled

Nothing reads the flag yet; it is flipped on only by the final PR in the series.

Any related issues, documentation, discussions?

Closes #8013.
Part of #8011 — first of a stacked series of 16 PRs (1/16)

How was this PR tested?

GuiConfigSpec asserts the flag parses; ng build and the existing frontend test suite pass. No behavior change — nothing consumes the flag yet.

Was this PR authored or co-authored using generative AI tooling?

Generated-by: Claude Code (Claude Opus)

@github-actions github-actions Bot added frontend Changes related to the frontend GUI common platform Non-amber Scala service paths labels Aug 27, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Automated Reviewer Suggestions

Based on the git blame history of the changed files, we recommend the following reviewers:

  • Contributors with relevant context: @zyratlo
    You can notify them by mentioning @zyratlo in a comment.

@yangzhang75

Copy link
Copy Markdown
Contributor Author

/request-review @mengw15

@codecov-commenter

codecov-commenter commented Aug 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.31%. Comparing base (7fbf64e) to head (986ea5a).
⚠️ Report is 14 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff              @@
##               main    #8029      +/-   ##
============================================
+ Coverage     93.14%   93.31%   +0.17%     
- Complexity     4654     4689      +35     
============================================
  Files          1174     1179       +5     
  Lines         47580    47716     +136     
  Branches       5316     5314       -2     
============================================
+ Hits          44318    44526     +208     
+ Misses         1785     1738      -47     
+ Partials       1477     1452      -25     
Flag Coverage Δ *Carryforward flag
access-control-service 81.00% <ø> (ø)
agent-service 99.32% <ø> (ø) Carriedforward from 7fbf64e
amber 89.46% <100.00%> (+0.22%) ⬆️
computing-unit-managing-service 73.67% <ø> (ø)
config-service 86.86% <100.00%> (+0.13%) ⬆️
file-service 86.70% <ø> (+1.14%) ⬆️
frontend 95.82% <ø> (+0.17%) ⬆️
notebook-migration-service 79.31% <ø> (ø)
pyamber 97.57% <ø> (ø) Carriedforward from 7fbf64e
workflow-compiling-service 77.19% <ø> (ø)

*This pull request uses carry forward flags. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

Pull request overview

Adds a new GUI feature flag (form-view-enabled, default off) to gate the upcoming Form View feature across the config layer (HOCON → Scala GuiConfig/api/config/gui JSON) and exposes it in the frontend GUI config typing/mocks.

Changes:

  • Add gui.workflow-workspace.form-view-enabled to gui.conf with an env override and a Scala accessor (GuiConfig.guiWorkflowWorkspaceFormViewEnabled) plus a parsing assertion in GuiConfigSpec.
  • Expose the flag from ConfigResource /api/config/gui as formViewEnabled.
  • Add formViewEnabled to the frontend GuiConfig interface and MockGuiConfigService defaults.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
common/config/src/main/resources/gui.conf Introduces form-view-enabled with default false and env override.
common/config/src/main/scala/org/apache/texera/common/config/GuiConfig.scala Adds Scala accessor for the new GUI config key.
common/config/src/test/scala/org/apache/texera/common/config/GuiConfigSpec.scala Adds a regression assertion that the default resolves to false when env override is unset.
config-service/src/main/scala/org/apache/texera/service/resource/ConfigResource.scala Adds formViewEnabled to the /api/config/gui response payload.
frontend/src/app/common/type/gui-config.ts Extends the frontend GUI config type with formViewEnabled.
frontend/src/app/common/service/gui-config.service.mock.ts Updates the frontend GUI config mock defaults to include formViewEnabled.

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

Comment thread frontend/src/app/common/service/gui-config.service.mock.ts
@github-actions

github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

⚠️ Benchmark changes need a look

🟢 2 better · 🔴 6 worse · ⚪ 7 noise (<±5%) · 0 without baseline

Compared against main 57a4230 benchmarked on this same runner, so the delta is largely free of cross-runner hardware noise. The "7d avg" column still reflects the gh-pages dashboard. Treat <±5% as noise unless repeated.

Dashboard · Run

config throughput MB/s latency max Δ latest / 7d
🔴 bs=10 sw=10 sl=64 377 0.23 25,895/34,816/34,816 us 🔴 +14.1% / 🔴 +151.5%
🔴 bs=100 sw=10 sl=64 783 0.478 126,244/157,550/157,550 us 🟢 -10.4% / 🔴 +68.2%
bs=1000 sw=10 sl=64 934 0.57 1,064,500/1,124,964/1,124,964 us ⚪ within ±5% / 🔴 +24.6%
Baseline details

Latest main 57a4230 from same runner

config metric PR latest main 7d avg Δ latest Δ 7d
bs=10 sw=10 sl=64 throughput 377 tuples/sec 418 tuples/sec 894.86 tuples/sec -9.8% -57.9%
bs=10 sw=10 sl=64 MB/s 0.23 MB/s 0.255 MB/s 0.546 MB/s -9.8% -57.9%
bs=10 sw=10 sl=64 p50 25,895 us 22,697 us 11,139 us +14.1% +132.5%
bs=10 sw=10 sl=64 p95 34,816 us 32,573 us 13,843 us +6.9% +151.5%
bs=10 sw=10 sl=64 p99 34,816 us 32,573 us 16,839 us +6.9% +106.8%
bs=100 sw=10 sl=64 throughput 783 tuples/sec 785 tuples/sec 1,166 tuples/sec -0.3% -32.8%
bs=100 sw=10 sl=64 MB/s 0.478 MB/s 0.479 MB/s 0.711 MB/s -0.2% -32.8%
bs=100 sw=10 sl=64 p50 126,244 us 118,932 us 87,509 us +6.1% +44.3%
bs=100 sw=10 sl=64 p95 157,550 us 175,791 us 93,675 us -10.4% +68.2%
bs=100 sw=10 sl=64 p99 157,550 us 175,791 us 102,153 us -10.4% +54.2%
bs=1000 sw=10 sl=64 throughput 934 tuples/sec 918 tuples/sec 1,198 tuples/sec +1.7% -22.0%
bs=1000 sw=10 sl=64 MB/s 0.57 MB/s 0.56 MB/s 0.731 MB/s +1.8% -22.1%
bs=1000 sw=10 sl=64 p50 1,064,500 us 1,086,625 us 859,766 us -2.0% +23.8%
bs=1000 sw=10 sl=64 p95 1,124,964 us 1,181,214 us 902,897 us -4.8% +24.6%
bs=1000 sw=10 sl=64 p99 1,124,964 us 1,181,214 us 937,957 us -4.8% +19.9%
Raw CSV
config_idx,batch_size,schema_width,string_len,num_batches,total_ms,total_tuples,total_bytes,tuples_per_sec,mb_per_sec,lat_p50_us,lat_p95_us,lat_p99_us
0,10,10,64,20,531.20,200,128000,377,0.230,25894.77,34816.42,34816.42
1,100,10,64,20,2553.72,2000,1280000,783,0.478,126243.96,157549.61,157549.61
2,1000,10,64,20,21404.97,20000,12800000,934,0.570,1064500.04,1124963.96,1124963.96

Introduces gui.workflow-workspace.form-view-enabled (default false) plumbed through GuiConfig
and ConfigResource to the frontend GuiConfig type and mock, guarded by a GuiConfigSpec assertion.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

@mengw15 mengw15 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.

LGTM

@mengw15
mengw15 added this pull request to the merge queue Aug 28, 2026
Merged via the queue into apache:main with commit 782c37f Aug 28, 2026
33 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

common frontend Changes related to the frontend GUI platform Non-amber Scala service paths

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(config): add form-view-enabled feature flag, default off

4 participants