I have addressed all comments. Good to go? @GitLabDuo
fixed
John Slaughter (0b95131b) at 18 Mar 15:43
fix(flow): disable obsolete binding remove button in read-only mode
This is valid Vue/HTML formatting. The closing > on the next line is a common Prettier line-break pattern. The template compiles and the pipeline passes. @GitLabDuo
This is valid Vue/HTML formatting. The closing > on the next line is a common Prettier line-break pattern. The template compiles and the pipeline passes. @GitLabDuo
@GitLabDuo This is actually safe. toFlow() is only called after FlowV1Schema.safeParse() succeeds, and the Zod schema already constrains environment to z.enum(['ambient', 'chat', 'chat-partial']). So flowV1.environment is guaranteed valid before it reaches #convertToFlow. No drift risk here.
@GitLabDuo I have addressed your review comments. Let me know if you see anything else i should address.
Addressed. Restored the watch() on toolName that auto-prunes bindings when switching to a tool with a known schema. Bindings whose parameter names don't exist in the new tool's inputSchema.properties are dropped. For unknown tools (no schema), bindings are left untouched so the obsolete-binding UI can handle them.
Addressed. Metadata is now conditionally spread only when at least one field is defined (Object.values(metadata).some(v => v !== undefined)). This preserves the "absent unless provided" semantics.
Addressed. I added a VALID_ENVIRONMENTS allowlist at module scope with a derived EnvironmentType. The save path now validates against the allowlist and falls back to 'ambient' for any unexpected value, avoiding the silent cast.
John Slaughter (5dd3b44b) at 18 Mar 14:12
fix(flow): validate environments, trim empty metadata, and prune to...
... and 1 more commit
John Slaughter (afe60b13) at 18 Mar 13:40
refactor(flow): extract shared node form logic and validation badges
John Slaughter (ff7a9d2f) at 18 Mar 13:12
feat(flow): preserve obsolete parameter bindings and provide explic...
... and 54 more commits
John Slaughter (4d143c32) at 17 Mar 16:50
John Slaughter (64a151fa) at 17 Mar 16:50
Merge branch 'uc/update-agentic-classic-duo-language' into 'main'
... and 1 more commit
Updates mentions of agentic and classic versions of GitLab Duo Chat in UI copy to align with the latest guidance.
It also fixes a few other terminology mentions to align with the style guide - mainly, to ensure we're saying GitLab before Duo in most places (per legal guidance).
This is an update after closing !3010. It reflects the latest terminology confirmed in gitlab-org/gitlab!226691+
fix: Bug fix fixes - a user-facing issue in production - included in changelogfeature: New feature - a user-facing change which adds functionality - included in changelogBREAKING CHANGE: (fix or feature that would cause existing functionality to change) - should bump major version, mentioned in the changelogUpdates mentions of agentic and classic versions of GitLab Duo Chat in UI copy to align with the latest guidance.
It also fixes a few other terminology mentions to align with the style guide - mainly, to ensure we're saying GitLab before Duo in most places (per legal guidance).
This is an update after closing !3010. It reflects the latest terminology confirmed in gitlab-org/gitlab!226691+
fix: Bug fix fixes - a user-facing issue in production - included in changelogfeature: New feature - a user-facing change which adds functionality - included in changelogBREAKING CHANGE: (fix or feature that would cause existing functionality to change) - should bump major version, mentioned in the changelogLGTM! Approved and merged
Not doing this now because we can get a similar experience with the existing utility functions.