Skip to content

feat(harmonia): adopt Harmonia 2.6.0 - slot-picker toolbar, month/week pickers, upstream skill - #6312

Merged
delchev merged 1 commit into
masterfrom
feat/harmonia-2.6.0
Jul 20, 2026
Merged

feat(harmonia): adopt Harmonia 2.6.0 - slot-picker toolbar, month/week pickers, upstream skill#6312
delchev merged 1 commit into
masterfrom
feat/harmonia-2.6.0

Conversation

@delchev

@delchev delchev commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

What & why

Harmonia was bumped 2.3.1 → 2.6.0 by dependabot (#6311, pom only). This adapts the generated Harmonia UI stack to the 2.4–2.6 breaking changes and adopts the new date pickers.

Breaking changes handled (from the upstream 2.4–2.6 changelog)

Change Version Impact
Slot Picker no longer renders its own toolbar 2.5.0 Fixedview: slots lost all date navigation
Month / Week pickers added (x-h-month-picker / x-h-week-picker) 2.4.0 Adopted as two new field types
Range slider rewritten; position-fit removed 2.6.0 / 2.4.0 Not used by any template — no change

Slot picker

The picker now renders only the day grid, so the generated slots page had no way to page days. The date-navigation toolbar (previous / calendar / next / title / today) is now composed from the x-h-slot-picker-* control directives; today / chooseDate i18n keys added.

Month / Week field types (new)

  • parser: month / week accepted field types
  • EDM generator: both → VARCHAR (length 7 / 8). The MONTH/WEEK widget type is chosen from the logical type, not the JDBC dataType (both are VARCHAR, so invisible to widgetForType) — mirrors the existing documentTitle special-case
  • Harmonia manage form-view + document-view render x-h-month-picker / x-h-week-picker instead of plain <input type="month|week">; the form-builder gets input-month / input-week controls
  • format.js: month/week are plain strings — toPayload passes them through (not ISO-instant-ized), toDateInput slices
  • The AngularJS stacks already handle both widget types (verified)

Docs

  • Removed the in-repo reference/harmonia/ skill mirror (71 files); CLAUDE.md and the migration note now link the upstream skill + docs (codbex.com/harmonia) to avoid drift
  • Bumped the "Harmonia 2.3.1" version string → 2.6.0; documented the two new field types

Tests

  • EdmIntentGeneratorTest + IntentParserTest cover the month/week → VARCHAR + MONTH/WEEK widget mapping and type acceptance
  • IntentEngineIT.month_and_week_fields_generate_the_harmonia_pickers asserts the generated .model widget types and the rendered pickers end-to-end (passing locally)

🤖 Generated with Claude Code

…k pickers, upstream skill

Harmonia was bumped 2.3.1 -> 2.6.0 (dependabot #6311, pom only). Adapt the
generated Harmonia stack to the 2.4-2.6 breaking changes and adopt the new
pickers.

Slot Picker (2.5.0 breaking): the picker no longer renders its own toolbar,
so the `view: slots` page composed only a bare grid with no date navigation.
Compose the previous/calendar/next/title/today toolbar from the
x-h-slot-picker-* control directives; add the today/chooseDate i18n keys.

Month/Week pickers (new in 2.4.0): adopt as two new intent field types.
- parser: `month`/`week` accepted field types
- EdmIntentGenerator: both map to VARCHAR (len 7/8); the MONTH/WEEK widget
  type is chosen from the LOGICAL type, not the JDBC dataType (both VARCHAR,
  so invisible to widgetForType) - mirrors the documentTitle special-case
- Harmonia manage form-view + document-view: render x-h-month-picker /
  x-h-week-picker instead of plain <input type="month|week">
- FormIntentGenerator + template-form-builder-harmonia: input-month /
  input-week controls and picker blocks
- format.js: MONTH/WEEK are plain strings - toPayload passes them through
  (not ISO-instant-ized), toDateInput slices; fmtDate maps input-week -> WEEK
The AngularJS stacks already handle both widget types (verified).

Range slider (2.6.0 breaking) and the removed `position-fit` (2.4.0) are not
used by any template, so nothing to change there.

Docs: remove the in-repo `reference/harmonia/` skill mirror (71 files) and
point CLAUDE.md / the migration note at the upstream skill + docs
(codbex.com/harmonia) to avoid drift; bump the "Harmonia 2.3.1" version
string to 2.6.0; document the two new field types.

Tests: EdmIntentGeneratorTest + IntentParserTest cover the month/week
mapping and acceptance; IntentEngineIT.month_and_week_fields_generate_the_harmonia_pickers
asserts the generated .model widget types and the rendered pickers end-to-end.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@delchev
delchev merged commit 486db9a into master Jul 20, 2026
10 checks passed
@delchev
delchev deleted the feat/harmonia-2.6.0 branch July 20, 2026 14:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant