feat(web): branches repeat-group in the assignment editor schema#99
Merged
Conversation
The branches list (a list of branch rules) rides in the same flat draft as the scalar fields, via indexed keys, so live validation / preview / save all work. - branchRuleSchema query: field metadata for one branch rule (name + protect, mergeOnly, default, allowForcePush, codeOwnerApprovalRequired). - assignmentOwn emits a branches.count sentinel plus branches.<i>.<field> for each rule. - applyDraft rebuilds the branches list from those keys, driven by branches.count (so the GUI can clear the list too); rows without a name are dropped. Verified: go test ./web/... (set/own round-trip, nameless-row drop, clear-all), go vet (both tags), golangci-lint, and an isolated live check (branchRuleSchema lists the 6 fields; setting two branches persists via indexed keys). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Der
branches-Block (eine Liste von Objekten — Branch-Regeln) reitet im selben flachen Draft wie die Skalarfelder, über indizierte Keys — damit Live-Validierung, Vorschau und Speichern unverändert funktionieren (H1, Backend).branchRuleSchema-Query — Feld-Metadaten einer Branch-Regel:name(+ Flagsprotect,mergeOnly,default,allowForcePush,codeOwnerApprovalRequired), je mit Beschreibung.assignmentOwnliefertbranches.count(Sentinel) +branches.<i>.<feld>pro Regel.applyDraftbaut die Liste aus diesen Keys neu auf, gesteuert vonbranches.count(so kann das GUI die Liste auch leeren); Zeilen ohne Namen fallen weg.Verifiziert
go test ./web/...(set/own-Roundtrip, namenlose Zeile verworfen, clear-all) ·go vet(beide Tags) ·golangci-lint· isolierter Live-Check (branchRuleSchemaliefert die 6 Felder; zwei Branches persistieren über indizierte Keys).Nächster Schritt: H2 — Repeat-Group-UI im Assignment-Editor (Zeilen hinzufügen/entfernen).
🤖 Generated with Claude Code