João Salavisa
6b86b3482c
fix: simplify plugin settings layout ( #3914 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-09-24 18:57:14 +01:00
João Salavisa
9fae7ab500
fix: deduplicate mobile plugin toolbars ( #3908 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-09-24 16:18:07 +01:00
João Salavisa
9885fd40ba
fix(ui): polish mobile navigation and plugins ( #3890 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-09-23 21:30:36 +01:00
Clément Fiere
f8708da1e0
feat(plugins): render a task menu action as a submenu ( #3874 )
...
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-09-23 11:00:23 +01:00
João Salavisa
545cd0b599
fix(ui): move task plugins into mobile menu
...
Move task plugin actions and destinations into the shared mobile Plugins menu, preserving a compact task header and accessible touch targets. Add focused mobile coverage, plugin authoring documentation, and process-probe stability handling.
2026-09-23 08:14:51 +01:00
José Almeida
bae7b8b7de
feat(ui): unify mobile navigation and task access ( #3830 )
2026-09-20 19:24:26 +01:00
Carlos Florêncio
2eee90d38e
test: close conversation storage follow-up gates ( #3742 )
2026-09-17 10:39:30 +01:00
Carlos Florêncio
173e4c8c94
fix: keep transient retry banners to one notice ( #3704 )
2026-09-16 10:38:31 +01:00
Mattias Andersson
411f56b51b
feat(plugins): add signed webhook automation adapters ( #3692 )
...
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-09-15 19:44:43 +00:00
Clément Fiere
2b1d0cf7d1
feat: add prompt history plugin Host prerequisites ( #3588 )
...
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-09-15 19:05:40 +01:00
Alassane
cc33b2a813
fix(plugins): support direct agent profile invocation ( #2870 )
...
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-09-15 09:40:39 +01:00
Carlos Florêncio
32b21c8b22
feat: open canvas setup dialog directly ( #3587 )
2026-09-13 16:59:54 +01:00
José Almeida
3f33ce0451
feat(ui): use native mobile confirmation sheets ( #3621 )
2026-09-12 14:58:49 +02:00
José Almeida
5ffe881877
fix(ui): improve mobile threads and shared listing headers ( #3570 )
2026-09-10 20:06:10 +00:00
Carlos Florêncio
d74e85883d
feat: add plugin-backed canvases ( #3111 )
2026-09-05 18:44:43 +00:00
João Salavisa
e4eb278f21
feat(plugins): move shortcuts into plugin settings ( #3384 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-09-04 17:38:05 +00:00
Carlos Florêncio
34b8eafabf
docs: add branded diagram design guidance ( #3316 )
2026-09-03 23:12:45 +00:00
Henry
335d80bf66
fix(task): prevent ready task environments with empty repo inventory ( #3008 )
...
Co-authored-by: nova28 <17953305+nova28@users.noreply.github.com >
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-26 23:00:36 +00:00
Carlos Florêncio
824851acbd
fix(ui): contain growing dialog content ( #3060 )
2026-08-26 14:13:35 +00:00
Carlos Florêncio
7f24cce795
feat: expand compact workflow step navigation ( #3054 )
2026-08-26 13:11:37 +00:00
Alassane
0700911e05
feat(plugins): plugin task list facets for sort and group ( #2932 )
...
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-08-25 06:59:14 +00:00
Carlos Florêncio
832734bb67
docs: migrate legacy specs and add product context ( #2964 )
2026-08-24 11:09:03 +00:00
Alassane
96c48d0517
feat(plugins): surface plugin update checks and manual updates ( #2513 )
...
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com >
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-23 17:35:46 +00:00
José Almeida
c13924b51c
feat(ui): add plugin uninstall confirmations ( #2886 )
2026-08-22 18:49:55 +00:00
Aulma
132bf61ee1
refactor(web): render every routed page's chrome through one topbar contract ( #2718 )
...
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-21 22:06:16 +01:00
Alassane
64bc820c45
feat(plugins): add task-row tags and sidebar actions ( #2609 )
...
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-21 18:12:30 +01:00
Carlos Florêncio
6ca94f6e10
fix(web): make mobile topbar actions scrollable ( #2769 )
2026-08-18 17:18:32 +00:00
Clément Fiere
0e6c98c0a0
feat(web): add prompt history panel ( #2738 )
...
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-18 16:13:15 +00:00
Carlos Florêncio
7c96621de1
feat: add executor parity safeguards ( #2704 )
2026-08-16 21:13:41 +00:00
João Salavisa
0de77f7871
feat(web): make the plugin row's settings page discoverable ( #2707 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-08-16 16:31:28 +01:00
nova28
60d37aa24a
feat(plugins): let nav items target the sidebar footer icon row ( #2562 )
...
Co-authored-by: nova28 <17953305+nova28@users.noreply.github.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-15 19:33:08 +01:00
Alassane
31e07fab34
feat(plugins): add sidebar workspace actions to New Task ( #2607 )
...
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-15 17:00:02 +01:00
João Salavisa
bfd632bafa
test(e2e): label or convert every remaining unconditional sleep ( #2650 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-13 23:55:11 +01:00
Carlos Florêncio
29b3e397bd
fix: align setup and launch timeouts ( #2578 )
2026-08-13 11:26:02 +01:00
José Almeida
f218880ecb
feat(plugins): add source-control extension contracts ( #2117 )
2026-08-13 08:29:29 +01:00
João Salavisa
fa7d88bee6
fix(plugins): make the composer capability usable end to end ( #2575 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-08-12 20:29:18 +01:00
José Almeida
6732c16385
feat: make status bar a default-off appearance preference ( #2523 )
2026-08-12 00:25:58 +01:00
Aulma
31907ba651
feat(web): restructure settings and unify page chrome behind PageShell ( #2322 )
...
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
2026-08-11 19:34:52 +02:00
Carlos Florêncio
d38d9a0b86
fix(plugins): show install loading state ( #2454 )
2026-08-09 12:06:38 +01:00
nova28
5fc675ce9a
fix(e2e): route make test-e2e through managed runner ( #2412 )
2026-08-08 16:13:06 +01:00
João Salavisa
6393d2df85
feat(plugins): expand host.ui and add host.toast / host.utils ( #2410 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-08-08 07:58:17 +02:00
João Salavisa
fffde518dd
fix(plugins): repair modal tooltips, live theme, and min_kandev_version ( #2408 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
2026-08-08 02:12:44 +02:00
Alassane
82177a270b
feat(plugins): add a task-card-tags slot ( #2332 )
...
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com >
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-07 21:46:45 +01:00
Alassane
345ea1216d
feat(plugins): add task panel, menu, and storage hooks ( #2152 )
...
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com >
2026-08-05 19:02:29 +01:00
Carlos Florêncio
87239d1b29
fix: harden plugin failure recovery ( #2169 )
2026-08-02 22:25:27 +01:00
José Almeida
03e179c4d3
feat: add last task startup preference ( #2102 )
2026-08-01 09:58:05 +01:00
João Salavisa
eb72f53c1b
fix(web): phone navigation for plugin pages ( #2093 )
...
Co-authored-by: Kandev Agent <agent@kandev.dev >
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-31 14:57:40 +01:00
Carlos Florêncio
167ab6b778
feat(mcp): add session attachment diagnostics ( #2061 )
2026-07-30 20:49:07 +01:00
José Almeida
c16411db9a
feat(web): polish mobile status drawer ( #1929 )
...
* feat(web): polish mobile status drawer
* fix(web): preserve mobile metrics row width
2026-07-27 10:18:20 +01:00
João Salavisa
5db3e48262
feat: add opt-in plugin auto-updater ( #1903 )
...
* feat: add opt-in plugin auto-updater
Automatically update installed plugins in the background, off by default
and opt-in. Builds on the existing verified install pipeline — an
auto-update is just an automatic reinstall of a newer catalog package_url.
Two-tier toggle on Settings > Plugins: an instance-wide default (SQLite
plugin_settings) plus a per-plugin override (tri-state auto_update on the
plugin record, carried forward on upgrade). The AutoUpdatePoller
(~90-min cadence + a boot sweep) upgrades only plugins that are currently
active, opted in, and report update_available; disabled/errored plugins
stay on their installed version.
New endpoints: GET/PUT /api/plugins/settings and
PUT /api/plugins/:id/auto-update.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* fix(plugins): recheck auto-update eligibility at install and fix test mock
Address PR #1903 review feedback:
- Re-check each plugin's current status + effective opt-in immediately before
InstallFromURL (eligibleForAutoUpdate), closing the TOCTOU window between the
candidate snapshot / catalog fetch and the install so a plugin disabled or
opted out mid-sweep is never reinstalled and reactivated.
- Correct the marketplace spec to describe the real failure behavior (shared
with manual updates) instead of promising a version rollback the install
pipeline does not perform.
- Fix the frontend CI failure: the plugins page test mocked the whole
plugins-api module without the new settings/auto-update functions, so
useAutoUpdateSettings threw at mount.
- Add an aria-label to the per-plugin auto-update Switch and Reset control.
- Add a use-auto-update-settings hook test (load, failure, optimistic setDefault,
rollback) and an eligibleForAutoUpdate unit test.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Kandev Agent <agent@kandev.dev >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-24 13:04:54 +01:00