Skip to content

Fix/sync/release/11.14.0 - #61

Merged
hebus merged 82 commits into
release/11.14.0from
fix/sync/release/11.14.0
Jun 24, 2026
Merged

hebus merged 82 commits into
release/11.14.0from
fix/sync/release/11.14.0

Conversation

@hebus

@hebus hebus commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

No description provided.

hebus and others added 30 commits May 31, 2026 15:42
…e Next version

Enable the unversioned docs/ as the 'Next' version in both Docusaurus configs (lastVersion stays 11.14.0). atomic: add the Examples (JS & React) section, a from-scratch-to-helpers filters guide, and a filter helper reference; fix the atomic sidebar changelog id (atomic/changelog -> changelog). atomic-angular: sync docs from source and add the Composables category. Wire the new Examples and Composables categories in sidebars.js.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add the FiltersBarComponent to both home pages (app and app2) using the new `homepage` input so only filters flagged `homepage: true` in the filters customization JSON are displayed.

Align the legacy app home with app2: remove the effect that navigated to /search on filter apply and the afterNextRender reset that cleared filters on (re)entry, so applying a filter only updates the QueryParamsStore and persists. Seed the aggregations from afterNextRender so the filters bar is mounted before the first-page query resolves.

Bump @sinequa/atomic-angular to ^1.0.7.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ES-29556 #done fix: display homepage filters bar on home pages
Update `@sinequa/atomic-angular` from 1.0.4 to 1.0.10 and refresh
`package-lock.json` with latest resolved versions of transitive
dependencies, including `brace-expansion` 5.0.6, `express-rate-limit`
8.5.2, `fast-uri` 3.1.2, and `hono`.
ES-32071 #done ES-29556 #done ES-32039 #done ES-32053 #done Prevent usersettings overwrite when overridding users (atomic-angular🏷️1.0.10)
The /loading route (LoadingComponent) is no longer used: the AuthGuard now
redirects to the login page and authentication is handled at bootstrap by
signIn(). Remove the route + import from both app and app2.
Also sync the atomic-angular loading doc (deprecation notice).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ng route (atomic🏷️1.1.4, atomic-angular🏷️1.0.12)

ES-30924 #done ES-30205 #done chore(routes): remove the unused /loading route (atomic🏷️1.1.4, atomic-angular🏷️1.0.12)
…0.4 breaking changes

- Remove effect() for agentsStore.setReady() (responsibility moved to
agent package)
- Replace signalREvents$ RxJS subscription with DOM custom event
listeners (agent-reconnecting, agent-reconnected, agent-connection-lost)
- Inject SignalRService and use AbortController for event listener
cleanup
…nt v4.0.4 breaking changes

ES-32037 #done fix(agent): adapt AgentLayoutComponent to @sinequa/agent v4.0.4 breaking changes
- pin @sinequa/atomic-angular to exact 1.0.14 (stay on the 1.0.x line)
- switch package-lock.json + .npmrc to the public npmjs registry
- gitignore generated agt-* i18n translation folders

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Resolved conflicts in favor of release/11.14.0 (HEAD), which has diverged
with its own refactors (inline templates, fetchServerPage, redesigned app2
home, AuthPageComponent, url-query-params-sync, atomic-angular 1.4.x line).

Net change vs 11.14.0: the ES-32071/ES-32053 search-recording guard
(lastRecordedKeys) is brought into src/app/pages/search/all/search-all.component.ts
so a search is only recorded on a genuine new search, not when the query
re-fires on a user-override toggle. (app2 already avoids this structurally
by recording in an effect independent of userOverrideActive.)

Resolution notes:
- package.json / lock: kept 11.14.0 (atomic-angular 1.4.x line; do not
  downgrade to the 1.0.x line of 11.13.0). atomic ^1.1.1 already permits 1.1.4.
- themes (chapsvision.css, sinequa.css): kept 11.14.0 — it already defines
  --menu-bg/--menu-border and deliberately avoids light-dark() (Chrome bug).
- app2 home page: kept 11.14.0's redesign (inline template, no sidebar/filters
  bar); deleted home.html. ES-29556's filters-bar-on-home is not carried into
  app2 (the main app already has it). Confirmed with maintainer.
- /loading route + LoadingComponent: kept in 11.14.0 (its deprecation is
  handled separately, not in this merge).
- docs (filters-bar.md, loading.md): kept 11.14.0 versions (match its lib line).
Brings the 1.4.2/1.5.0/1.5.1 fixes: ES-29556, ES-32039, ES-31573,
ES-31806/ES-31807, ES-31941, ES-30205, ES-30924, ES-32053, ES-32155.
Build verified green. @sinequa/agent left at 4.0.3 (postinstall pulls
@latest at install time).
Extract `filters-bar` from the `SearchFooter` slot and render it as a
sibling below `app-search`, wrapped in a flex column container. Remove
the `allowFilters` guard and `SearchFooter` import in favour of a
standalone `<filters-bar homepage />` with a `gap-1` utility class.
Also standardise import quote style (single → double) across the
component.
#noJiraCheck merge release/11.13.0 into release/11.14.0
Bring the oxlint + oxfmt + biome toolchain from release/11.14.0 over to
release/11.13.0 so that files edited on either branch are formatted
identically, eliminating quote-style and formatting noise during
release/11.13.0 -> release/11.14.0 merges.

- add .oxfmtrc.json, .oxlintrc.json and biome.json (lineWidth aligned to 160)
- switch .prettierrc to double quotes, add the cn tailwind function and tailwindStylesheet
- replace `ng lint` with oxlint, scope prettier to HTML only, add fmt/fmt:check scripts
- update lint-staged to run oxlint + oxfmt + prettier(html), fixing the invalid glob
- add oxlint/oxfmt/biome devDeps and bump prettier 3.5.3 -> 3.8.1

No bulk reformat is performed: existing code is intentionally left untouched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Fix two coquilles in the lint/format toolchain and normalize the config
files so they match release/11.13.0 byte-for-byte (companion to the
toolchain-alignment PR on 11.13.0), keeping merges noise-free.

- lint-staged: fix invalid glob `*.w{js,ts,scss,css,json}` -> `*.{js,ts,scss,css,json}`
- biome.json: lineWidth 120 -> 160 (aligned with oxfmt/prettier printWidth 160)
- normalize .oxfmtrc.json, .oxlintrc.json and biome.json with oxfmt

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…r page

- app.config.ts (app & app2): bootstrap via bootstrapApp({ createRoutes: true }) instead of the
  deprecated withBootstrapApp(inject(ApplicationService), ...). Dropping the eager
  inject(ApplicationService) lets detection set backendUrl before stores are constructed (fixes the
  /undefined/api/v1/... requests), and removes the now-redundant provideAppInitializer(appInitializerFn).
- app2/app.component: hide the application chrome (sidebar) on the error page — isAuthRoute renamed
  isChromelessRoute, now also matching /error.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
(cherry picked from commit 58de6f5f49276db2ce346d6455a04a62d1520b49)
#noJiraCheck chore: align lint/format toolchain with release/11.14.0
Bumps to the 1.0.15 release (navbar-tabs persist-filters-across-tabs
feature) and widens the constraint to ~1.0.15 to track the 1.0.x line.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…docs

#noJiraCheck docs(docusaurus): publish atomic & atomic-angular docs (Next version)
chore(deps): upgrade @sinequa/atomic-angular to 1.0.14 #noJiraCheck
Align the mint agent page with the agent demo while keeping mint's
intentional differences (saved-chats in a page container, custom
agent-preview, expanded-search panel, routing structure).

- Add Mint saved-chat/debug host directives that surface agent-saved-chat
  and agent-debug events through `notify` and the shared agt-directives
  transloco scope.
- Wire both directives onto AgentPageLayoutComponent and register
  provideDefaultDebugPresentation().
- Inject AGENT_INSTANCE_ID instead of hardcoding the instance id.
- Drive SignalR retry delays from the SIGNALR_RETRY_DELAYS token and mark
  the connection-lost toast as important (temporary cast until atomic
  exposes the option).
- Apply ChangeDetectionStrategy.OnPush across the agent page components.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Clicking a saved chat in the history panel did nothing because the
SavedChat component had no bindings or selection handler. Wire it like
the agent demo: bind instanceId/activeChatId and handle chatSelected by
navigating to /chat/:id (guarded on the idle machine state) so the agent
loads the chosen conversation.

Also bootstrap the app from app2 (app.component/app.config) instead of
the legacy app entrypoint, so the app2 implementation — including this
agent page — is actually used.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Move the history out of the ResizablePanelGroup so the group matches the
agent demo's column count (chat + preview, plus Mint's expanded-search
column). History now renders as a non-modal absolute panel that slides in
from the left with a smooth transform transition; the chat stays
interactive behind it.

- Drop the history ResizablePanel/handle; render an animated <aside>
  (translateX + inert when collapsed).
- Simplify computeLayout to [chat, search, preview] and align its values
  with the demo's split ([100,0]/[60,40]).
- Replace the history-driven layout effect with the demo's chatId-driven
  reset effect (clear selection + collapse preview on navigation).
- Remove the now-unused BreakpointObserverService.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Drop the Mint-specific expanded-search column so the ResizablePanelGroup
holds the same two panels as the agent demo (chat + preview). Search
results now render inline in the conversation, like the demo.

- Remove the ExpandedSearchResults panel/handle and SearchExpansionService.
- Inline the demo's panel sizes ([100,0] / [60,40]) and drop computeLayout.
- Reduce activeMobilePanel to chat | preview.

The floating saved-chats history panel is kept (intentional Mint
difference), as is the richer agent-preview component.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Use getState(selectionStore) + the demo's untracked guard structure in the
preview-opening effect, matching chat-layout.ts verbatim to keep future
diffs against the demo minimal. No behavioural change.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
hebus and others added 23 commits June 17, 2026 18:33
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ES-32346 #done sync @sinequa/agent 4.0.4 into Mint
- package.json: keep 11.14.0 deps (@sinequa/agent, assistant 4.0.4,
  atomic-angular 1.5.3, ui 1.3.0, shiki, xstate, zod 4)
- fix lint-staged glob typo (*.w{...} -> *.{js,ts,scss,css,json})
- merge overrides from both sides (ajv, uuid, vite)
- src app/app2 config & routes: keep resolved import ordering

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…heck

Bump transitive build deps to patched versions through package.json
overrides (@angular/build pins them exactly, no Angular patch fixes
them yet):

- vite 7.3.2 -> 7.3.5 (NTLMv2 hash disclosure, server.fs.deny bypass)
- esbuild 0.27.7/0.28.0 -> 0.28.1 (dev-server arbitrary file read)
- @babel/core 7.28.3 -> 7.29.7 (file read via sourceMappingURL)

npm audit now reports 0 vulnerabilities. Production build verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- feature-flags: live admin-gated toggle dialog
- navbar-tabs: persist filters across tabs (ES-29749)
- auth: signed-out /logout view, SSO hardening, OIDC auto-auth docs
- search: basePath prefix on static index fetch

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
chore: resolve 11.14.0/11.13.0 merge conflicts + fix dev-toolchain vulnerabilities #noJiraCheck
Merge Conflicts release/11.13.0 into release/11.14.0 #noJiraCheck
…6.0 and atomic-ui to v1.4.0

- @sinequa/atomic: ^2.0.1 → ^2.0.5
- @sinequa/atomic-angular: ^1.5.3 → ^1.6.0
- @sinequa/ui: ^1.3.0 → ^1.4.0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add reusable SearchInputComponent with clear button and animated icons
- Wire debounced search signal (300ms) to SavedChat filter
docs(atomic): publish authentication docs (getCsrfToken null contract, OIDC auto-auth, AuthMode 2.0) #noJiraCheck
…sform-icons-in-explicit-labels

ES-31364 #noJiraCheck fix(accessibility): remove aria-hidden attributes from icons
…c-angular-1.6.0

ES-32037 #done ES-32163 #done ES-32168 #done ES-29749 #done ES-31364 #done ES-32119 #done chore(deps): upgrade @sinequa/atomic to v2.0.5, @sinequa/atomic-angular to v1.6.0 and @sinequa/ui to v1.4.0
feat(app): open feature-flags dialog with Ctrl+Shift+F #noJiraCheck
ES-31155 #done feat: add search input for agent saved chats
@hebus
hebus changed the base branch from dev/11 to release/11.14.0 June 24, 2026 13:47
@hebus
hebus requested review from Hydhen and larde June 24, 2026 13:47
@hebus
hebus merged commit 1fa62b4 into release/11.14.0 Jun 24, 2026
0 of 3 checks passed
@hebus
hebus deleted the fix/sync/release/11.14.0 branch June 24, 2026 15:41
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.

4 participants