fix(fristenrechner): m/paliad#57 — cleanup (Custom labels, forward-workflow root, same-context-twice, Add prefill) #66
Open
mAi
wants to merge 1 commits from
mai/darwin/fristenrechner-cleanup into main
pull from: mai/darwin/fristenrechner-cleanup
merge into: m:main
m:main
m:mai/knuth/editor-first-real-edit
m:mai/knuth/wire-build-patentstyle
m:mai/ritchie/build-patentstyle-unguarded
m:mai/knuth/rescue-cited-design
m:mai/ritchie/vendor-guard-first-catch
m:mai/knuth/stale-branch-triage
m:mai/ritchie/stale-negative-claims
m:mai/knuth/reset-form-language-and-email
m:mai/knuth/adopt-mauth-module
m:mai/knuth/reset-link-scanner-safe
m:mai/knuth/registry-coherence-139-postscript
m:mai/ritchie/db-test-packages-sh-and
m:mai/knuth/gen-skeleton-submission
m:mai/knuth/retire-skeleton-generator-tier5
m:mai/jason/seed-orphan-drafts-guard
m:mai/knuth/ci-lane-no-dsn
m:mai/jason/seed-script-prod-guard
m:mai/knuth/skeleton-doccomment-completeness
m:mai/brunel/harness-findings-postscript
m:mai/hades/dead-surface-sweep
m:mai/brunel/views-eventkind-flake
m:mai/jason/issue-158-service-address
m:mai/knuth/issue-139-letterhead-vars
m:mai/cronus/issue-148-trigger-picker
m:mai/hades/issue-155-followup
m:mai/hades/issue-155-naming
m:mai/brunel/escalation-visibility-flag
m:mai/jason/alles-overrides-horizon
m:mai/knuth/m-paliad-150-part-b-m
m:mai/hades/issue-161-zustandigkeit
m:mai/cronus/m-paliad-160-per-user
m:mai/jason/issue-163-parties-role
m:mai/ares/issue-162-one-convention
m:mai/brunel/m-paliad-115-the-sweep-s
m:mai/goodall/for-every-check-in-this
m:mai/knuth/land-darwin-s-follow-up
m:mai/diesel/guard-report-lib
m:mai/diesel/issue-139-slice-b
m:mai/diesel/issue-139-letterhead-vars
m:mai/darwin/148-crossparty-ui
m:mai/diesel/m-paliad-158-a-stale
m:mai/darwin/vacation-doc-warnings
m:mai/darwin/upc-vacation-findings
m:mai/darwin/rop-citation-fix
m:mai/darwin/issue-150-holidays
m:mai/ritchie/build-the-block-editor
m:mai/darwin/swallowed-cleanup-errors
m:mai/darwin/formalities-refusal-schema4
m:mai/darwin/drift-caveat-shape
m:mai/darwin/http-smoke-enforcing
m:mai/darwin/s6-round-3
m:mai/darwin/loops-acting-user
m:mai/darwin/s6-rehearsal-round-2
m:mai/darwin/close-the-s6-blockers
m:mai/darwin/rehearse-the-s6-flip
m:mai/knuth/drilling-the-scheduled
m:mai/brunel/21-test-files-under-pkg
m:mai/atlas/design-hlc-com-as
m:mai/hopper3/a-hand-run-can-advance
m:mai/grace4/re-vendor-mai
m:mai/grace3/vendor-the-nine-german
m:mai/head/slug-rule-contract
m:mai/head/vendor-contract-note
m:mai/grace2/wiki-generator-language
m:mai/marco/verify-the-outlook-add
m:mai/pike2/an-explicit-begin-commit
m:mai/noether5/remove-the-paris-p3-and
m:mai/lexy2/r2-backfill-procedural
m:mai/kepler/issue-502-hl-to-hlc
m:mai/hertz2/r4-litigationplanner
m:mai/shannon2/docker-compose-yml-never
m:mai/linus2/r3-finish-the-b-5
m:mai/zeus2/guard-no-live-sql-string
m:mai/galileo2/the-embedded-upc-planner
m:mai/kepler2/slice-b-procedural
m:mai/diesel2/mig044-erwiderung-repair
m:mai/diesel2/fresh-db-replay-past-mig
m:mai/head/gen-upc-snapshot-dead-table
m:mai/noether4/offices-export-regen-201
m:mai/noether4/base-p1-genericize-m
m:mai/hopper/finish-the-half-built
m:mai/pike/dead-migration-tests
m:mai/linus/audit-comment-fix
m:mai/linus/fristensuche-82-search
m:mai/linus/b7-checklists
m:mai/linus/b8-frontend-pure-logic
m:mai/pike/b5-auth-path-coverage
m:mai/diesel/rule-test-resync
m:mai/diesel/regression-m-confirmed
m:mai/patton/b1-make-the-dormant-test
m:mai/athena/test-gap-audit-map
m:mai/diesel/kostenrechner-bug-upc
m:mai/hopper/patentsstyle-styleguide
m:mai/pike/re-render-patentsstyle
m:mai/linus/firm-footer-officelanguag
m:mai/carmack/re-render-deploy
m:mai/diesel/fresh-db-bootstrap
m:mai/pike/follow-up-gen-template
m:mai/turing/docforge-flip
m:mai/cronus/bighand-delimiter-constant
m:mai/ritchie/composer-delete-all
m:mai/atlas/inventor-followup-rules
m:mai/knuth/coder-conditional-rule
m:mai/cronus/inventor-ci-cd-pre
m:mai/demeter/gitster-submission
m:mai/atlas/inventor-per-event-card
m:mai/cronus/inventor-procedural
m:mai/cronus/inventor-backup-mode
m:mai/icarus/inventor-inbox-overhaul
m:mai/atlas/inventor-symmetric-date
m:mai/gauss/inventorcoder-team-admin
m:mai/kepler/inventorcoder-project
m:mai/darwin/roadmap-ccr-en
m:mai/euler/coder-small-ux-polish
m:mai/darwin/fixercoder-priority-bug
m:mai/leibniz/inventor-caldav-multi
m:mai/hertz/inventor-unified-modal
m:mai/archimedes/inventor-excel-data
m:mai/boltzmann/inventor-gap-tolerant
m:mai/copernicus/submission-slice-1
m:mai/fermi/interactive-session
m:mai/hertz/inventor-suggest-changes
m:mai/copernicus/inventor-submission
m:mai/mendel/test-strategy-slice-1
m:mai/ampere/custom-views-improvements
m:mai/planck/paliadin-per-user-rls
m:mai/ritchie/phase-h-ai-deadline
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
No description provided.
Delete Branch "mai/darwin/fristenrechner-cleanup"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes m/paliad#57. Follow-up issue m/paliad#65 filed for the future forward-workflow tool.
Summary (4 parts)
HIDDEN_CASCADE_ROOTSfilter inloadEventCategoryTree(). DB rows preserved for the future forward-workflow tool (m/paliad#65).Kontext: <proc — rule>caption (withändern); clicking the card body shows the picker as primary, with the card's rule-pill list hidden via CSS while expanded. Cross-cutting trigger pills stay visible (different concept tier).Test plan
go build ./...clean.go test ./internal/...— all packages pass (cached).bun run buildclean. i18n codegen picks up two new keys (pill_picker.locked_label,pill_picker.change).bun test— 73 pass, 0 fail.Ich möchte etwas einreichenrow; (d) search 'Klageerwiderung', click any single pill on the card — calc panel shows locked context, noWhich context?fieldset; (e) search 'Klageerwiderung', click card body — calc panel shows picker, card's rule pills section is hidden while expanded.Acceptance (from #57 + comment)
Four UX cleanups on /tools/fristenrechner per m's 2026-05-20 14:02–14:04 report: 1. **Pre-fill project on 'Add'** — when Step 1 binds an Akte, both the Pathway A "Save to Project" modal and the Pathway B card-calc inline 'Add' picker now default their <select> to that project. Override still allowed; the picker lists all projects. New helper `preselectedProjectId()` reads `currentStep1Context` once so both surfaces stay in sync. 2. **Drop 'Custom' prefix from UPC/DE/EPA/DPMA adhoc chips** — the chip context already reads "oder ad-hoc, ohne Akte"; 'Custom' was redundant signaling. Labels become "UPC-Verfahren" / "UPC proceeding" (and the three sister jurisdictions). 3. **Remove 'Ich möchte etwas einreichen' from 'Was ist passiert?'** — the Fristenrechner is a backward-looking calc ("event happened, what spawns?"); the forward-workflow framing ("I want to file X") needs a different tool. Filter the `ich-moechte-einreichen` root subtree out in `loadEventCategoryTree()` (HIDDEN_CASCADE_ROOTS set) so the picker never offers it. DB rows preserved for the future forward-workflow tool, tracked in m/paliad#65. 4. **Same-context-asked-twice on Statement-of-Defence picker** — when the user clicks a specific rule pill on a concept card, the calc panel now renders a locked "Kontext: <proceeding — rule>" caption with an "ändern" affordance instead of re-showing the same five proceedings as a radio fieldset. When the user clicks the card body (no specific pill), the picker is still the primary surface, but the card's rule-pill section hides via CSS while expanded (`fristen-card-pills-section--rules`) so the same options aren't listed twice. Cross-cutting trigger pills (Wiedereinsetzung, Weiterbehandlung etc.) stay visible — they're conceptually different siblings, not the same proceeding context.View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.