Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
452 commits
Select commit Hold shift + click to select a range
c60652b
fix(browser): log why a page envelope was rejected instead of droppin…
graseeel Jul 26, 2026
b2d0346
chore(browser): instrument the page-message delivery path end to end
graseeel Jul 26, 2026
9e2a431
chore(browser): log drained page messages to close the delivery diagn…
graseeel Jul 26, 2026
bafbc38
fix(browser): accept page-ready so the smoke works where frames are n…
graseeel Jul 26, 2026
5be298c
fix(browser): stabilize Windows packaged runtime smoke
graseeel Jul 26, 2026
8c5e560
fix(ci): make packaged browser smoke tolerate cold starts
graseeel Jul 26, 2026
d094555
fix(ci): stabilize headless multi-tab browser pacing
graseeel Jul 26, 2026
103dc1c
fix(ci): launch browser smoke from active event loop
graseeel Jul 26, 2026
89563f2
fix(ci): avoid nested main-thread webview dispatch
graseeel Jul 26, 2026
26b3f0f
fix(ci): replace browser smoke delay with readiness
graseeel Jul 26, 2026
e20ad54
fix(ci): keep browser smoke event loop active
graseeel Jul 26, 2026
1dd03ad
fix(windows): avoid nested WebView2 message pump
graseeel Jul 26, 2026
a30b454
fix(ci): synchronize browser smoke with UI turns
graseeel Jul 26, 2026
13ec54c
fix(windows): preserve COM reentrancy during WebView2 waits
graseeel Jul 26, 2026
17faffc
fix(windows): use COM event waits for WebView2
graseeel Jul 26, 2026
2d39c9d
fix(windows): reuse WebView2 environment across tabs
graseeel Jul 26, 2026
96aa218
fix(windows): make WebView2 contract test CRLF-safe
graseeel Jul 26, 2026
1763e02
ci(macos): sign and notarize release artifacts
graseeel Jul 26, 2026
f009ccf
ci(macos): sign and validate embedded native dependencies
graseeel Jul 26, 2026
0d46610
fix(release): unblock native browser and macOS signing
graseeel Jul 27, 2026
03bc2e4
test(windows): make browser contracts CRLF-safe
graseeel Jul 27, 2026
872924a
fix(windows): defer WebView2 script completion
graseeel Jul 27, 2026
2aa98ac
fix(windows): restore sequential WebView2 script pump
graseeel Jul 27, 2026
1d32693
fix(windows): chain WebView2 document scripts
graseeel Jul 27, 2026
2f77b2e
fix(windows): batch WebView2 initialization scripts
graseeel Jul 27, 2026
f34d44f
fix(windows): isolate embedded browser initialization
graseeel Jul 27, 2026
4436e3d
fix(windows): keep browser environment on UI thread
graseeel Jul 27, 2026
0fefc92
chore(windows): trace controller completion signaling
graseeel Jul 27, 2026
449299b
fix(windows): restore WebView2 script completion helper
graseeel Jul 27, 2026
d8c5122
fix(windows): pump browser bridge script registration
graseeel Jul 27, 2026
47c493d
ci(beta): skip packaged browser runtime smoke
graseeel Jul 27, 2026
a067ecc
ci(macos): allow extended notarization queues
graseeel Jul 27, 2026
52770e0
test(manifests): make single-flight check deterministic
graseeel Jul 27, 2026
cd10ed0
ci(release): make macOS notarization resumable
graseeel Jul 27, 2026
8a1af0a
fix(release): bound macOS DMG creation
graseeel Jul 27, 2026
5315e3b
ci(release): extract macOS signing identity as cert common name
graseeel Jul 27, 2026
e5f918b
chore(version): bump to 0.6.1-beta and @verboo/code 0.14.5
graseeel Jul 30, 2026
f195dce
feat(updates): probe Stable channel availability and enable chip dyna…
graseeel Jul 30, 2026
cea2ae6
feat(goal): make the goal cycle actually run end-to-end in the packag…
graseeel Jul 30, 2026
99633fc
fix(build): abort instead of signing a stale artifact, verify deliver…
graseeel Jul 30, 2026
df3007e
ci(workflows): detect channel-only prerelease tags and bump Node to 2…
graseeel Jul 30, 2026
8a02e0f
chore(cli-bundle): prune unused packages from the bundled cli-package…
graseeel Jul 30, 2026
63d7105
chore(version): update Cargo.lock for verboo-desktop 0.6.1-beta
graseeel Jul 30, 2026
cc13165
ci: cross-platform verify gate + pin packageManager
graseeel Jul 30, 2026
de8b9fb
test(verify): run the full Linux suite and verify sidecars by hash
graseeel Jul 30, 2026
6b25c9a
fix(video): host_target unified, maps Linux and Windows ARM
graseeel Jul 30, 2026
3e1a69c
fix(process): suppress Windows console windows on every CLI spawn
graseeel Jul 30, 2026
d649cf2
fix(auth): non-blocking CLI login with incremental read and login:event
graseeel Jul 30, 2026
d4bf3c1
chore(chrome-ext): parallel work committed by user order, NOT QA-gated
graseeel Jul 30, 2026
8375af6
feat(goal): T1 — per-task batch execution + action-evidence guard
graseeel Jul 30, 2026
460d652
feat(goal): T2 — batch state matrix + global stagnation guard
graseeel Jul 30, 2026
6bab646
feat(goal): T3 — task frontier with /compact handoff
graseeel Jul 31, 2026
d270993
feat(goal): T3b — compact at every task frontier with coalescence
graseeel Jul 31, 2026
911247f
feat(goal): T4 — final batch report with evidence, in-place progress,…
graseeel Jul 31, 2026
195a9a9
feat(goal): T5 — batch input with tolerant parser
graseeel Jul 31, 2026
2ab5d3d
fix(process): add missing CommandExt import at seven call sites
graseeel Jul 31, 2026
b5ce048
chore(verify): local Windows compile gate + Linux arch parametrization
graseeel Jul 31, 2026
916b3d2
fix(goal): evaluator downgraded markdown-wrapped decisions silently
graseeel Jul 31, 2026
6d838ff
refactor(goal): minimalist goal panel at user request
graseeel Jul 31, 2026
11078a8
fix(goal): restore batch final report with time+token, fix progress s…
graseeel Jul 31, 2026
ab5de9b
fix(process): reserved slash commands pass through to CLI unwrapped
graseeel Jul 31, 2026
2f7460e
feat(goal): resumable pause-by-reply when task is impossible, plus tw…
graseeel Jul 31, 2026
ba16676
fix(evaluator): pause when output is a symbolic artifact, never conclude
graseeel Jul 31, 2026
b07630f
feat(process): propagate TodoWrite contents instead of discarding them
graseeel Aug 1, 2026
68dea5f
feat(checklist): agent task list with floating card and docked mode
graseeel Aug 1, 2026
c666f8a
fix(checklist): stop card colliding with other floating elements, cut…
graseeel Aug 1, 2026
34c020c
feat(extension): rotinas, extracao estruturada e sessao de opcoes
graseeel Aug 2, 2026
d7f4751
feat(browser): ciclo de vida, visibilidade e User-Agent das abas, mai…
graseeel Aug 2, 2026
e2be3ab
chore: prototipos de rascunho do checklist
graseeel Aug 2, 2026
9e32ae2
fix(ci): CARGO_TARGET_DIR fora do env de job, que invalidava o workflow
graseeel Aug 2, 2026
fca7172
fix(ci): hash do ffmpeg, recurso cli-package e shell do passo Windows
graseeel Aug 2, 2026
46f3da7
fix(test): CLI falso descarregava stdout tarde demais no Windows
graseeel Aug 2, 2026
9df9360
fix(test): teste do Safari fixava a versao da maquina de desenvolvimento
graseeel Aug 2, 2026
a8c3bb8
fix(ci): ffmpeg moderno no Linux em vez do apt do Ubuntu 22.04
graseeel Aug 2, 2026
92942d8
fix(scripts): caminho interno de bundle .app e sempre POSIX
graseeel Aug 2, 2026
74c9d6d
fix(test): CLI falso nao prende mais a CPU, e vivacidade do filho vir…
graseeel Aug 2, 2026
cce7c1b
fix(scripts): normalizar fim de linha ao ler arquivo em teste
graseeel Aug 2, 2026
68f9f3a
fix(test): teto de tempo derivado da vida do filho, em vez de numero …
graseeel Aug 2, 2026
28f3b81
merge: main (conteudo ja contido na dev)
graseeel Aug 2, 2026
588a004
docs: o app nao e self-contained — exige Node do sistema
graseeel Aug 2, 2026
19d1d25
docs(extension): politica de privacidade em conformidade com o manifest
graseeel Aug 2, 2026
75669ae
feat(transcript): ferramentas do Chrome ganham icone e rotulo proprios
graseeel Aug 3, 2026
7c2e2de
feat(chrome): avisar que o painel lateral precisa estar aberto
graseeel Aug 3, 2026
a2216bb
fix(transcript): cada passo do Chrome diz a propria acao
graseeel Aug 3, 2026
aa09c4b
feat(transcript): cada acao do Chrome ganha sua propria linha
graseeel Aug 3, 2026
595be8e
fix(chrome): apagar a moldura de presenca ao fim do turno via MCP
graseeel Aug 3, 2026
d49e9a0
feat: ship side chats, settings redesign, and Chrome context
graseeel Aug 4, 2026
57e9917
docs: design interactive iOS simulator
graseeel Aug 5, 2026
cbe4659
docs: plan interactive iOS simulator
graseeel Aug 5, 2026
77a0b15
feat(chrome): intent classifier with serialized reclassification fall…
graseeel Aug 7, 2026
5801875
merge: absorb main 0.6.2-beta into dev before extension PR
graseeel Aug 7, 2026
5135993
feat: ship iOS simulator, signed CLI updates, and Chrome automation (…
graseeel Aug 9, 2026
b48e9fc
feat(providers): add multi-account usage to desktop
graseeel Aug 9, 2026
7bc9db4
feat(context): add memory context with localOnly filtering
graseeel Aug 10, 2026
fcae29f
fix(providers): harden account preflight with capability fallback, mo…
graseeel Aug 10, 2026
e31c510
fix(feedback): fallback opens a GitHub issue with stable supabase codes
graseeel Aug 10, 2026
c408566
fix(providers): serde default for turn account, spawn canary, and dea…
graseeel Aug 10, 2026
ac0b693
chore(fixtures): use example paths instead of the owner's path
graseeel Aug 10, 2026
d4e89a7
fix(renderer): required bridge params and single source of chat store…
graseeel Aug 10, 2026
2cf2c03
perf(providers): async tauri commands with parallel usage fetch
graseeel Aug 10, 2026
c063bc1
fix(login): browser-phase timeout, second-account screens, and logged…
graseeel Aug 10, 2026
41652d7
fix(login): sanitize PTY risk notice at the source
graseeel Aug 10, 2026
ef3fb9b
feat(providers): redesigned account list with kebab menu, usage label…
graseeel Aug 10, 2026
411672a
perf(providers): parallel discovery with TTL cache and bound-send reload
graseeel Aug 10, 2026
87f1099
fix(providers): parse reset timestamps with microsecond fractions
graseeel Aug 10, 2026
bdcfaa9
fix(login): corruption-proof OAuth anchors and post-URL grace
graseeel Aug 10, 2026
423149d
fix(providers): inline nickname pencil and centered use-here action
graseeel Aug 10, 2026
2c59fcb
feat(chat): restart provider session keeping transcript
graseeel Aug 10, 2026
53fef51
fix(login): require oauth evidence before connected on additive logins
graseeel Aug 10, 2026
35cf1c1
feat(providers): login progress and cancel in the account list
graseeel Aug 10, 2026
d4bc399
fix(login): detect new accounts via registry-aware state snapshot
graseeel Aug 11, 2026
a4ba525
style(providers): provider icon on every row, aligned action row, qui…
graseeel Aug 11, 2026
257f50b
fix(providers): drop account-switch transcript notice and localize mo…
graseeel Aug 11, 2026
76c4227
feat(providers): compact account cards with horizontal scroll
graseeel Aug 11, 2026
6a8154b
feat(providers): simple and expanded view modes with wrap layout
graseeel Aug 11, 2026
f44f1e6
merge: absorb main intent-classifier (PR #65) into dev
graseeel Aug 11, 2026
b086f7d
docs(runtime): design managed Node bootstrap
graseeel Aug 11, 2026
3f3855f
feat(runtime): define managed Node contract
graseeel Aug 11, 2026
e941566
feat(runtime): install managed Node on demand
graseeel Aug 11, 2026
2f58c4c
feat(runtime): stage Node before CLI bootstrap
graseeel Aug 11, 2026
b115d76
feat(runtime): show managed setup progress
graseeel Aug 11, 2026
9bfd785
build(runtime): remove Node from installers
graseeel Aug 11, 2026
dae12f9
fix(runtime): accept official Node archive links
graseeel Aug 11, 2026
0fb03e5
test(runtime): close managed Node verification
graseeel Aug 11, 2026
53cb483
fix(app): stabilize startup and provider accounts
graseeel Aug 11, 2026
c24e650
docs(release): design versioned whats-new modal
graseeel Aug 11, 2026
db3b37c
docs(release): plan versioned whats-new modal
graseeel Aug 11, 2026
bbeec66
feat(release): add bilingual release catalog
graseeel Aug 11, 2026
fba5eeb
feat(release): generate metadata from reviewed notes
graseeel Aug 11, 2026
484aa5e
feat(app): persist versioned whats-new state
graseeel Aug 11, 2026
8585e67
feat(ui): add accessible whats-new modal
graseeel Aug 11, 2026
7ff3e3d
feat(app): show release notes once per version
graseeel Aug 11, 2026
ded18eb
fix(ui): keep release notes pending until closed
graseeel Aug 11, 2026
7bcf975
fix(simulator): harden agent verification and add tooltips
graseeel Aug 12, 2026
d763fa0
fix(ios-simulator): harden semantic interaction
graseeel Aug 12, 2026
9c46a70
fix(macos): stabilize bundled executable signatures
graseeel Aug 12, 2026
aef2e65
feat(models): single-step model picker with inline continuity hint
graseeel Aug 12, 2026
dfa36df
fix(checklist): opaque docked panel and per-conversation minimize
graseeel Aug 12, 2026
f6240b2
fix(models): hide disconnected providers from selector
graseeel Aug 12, 2026
792868f
feat(models): simplify model selector surface
graseeel Aug 13, 2026
1756516
feat: add themed media preview and model metadata
graseeel Aug 13, 2026
d3d99ed
fix(simulator): prevent lost stop wake-up
graseeel Aug 13, 2026
2176c41
fix(simulator): discard stale fallback frames
graseeel Aug 13, 2026
7213aa0
fix(release): publish 0.7.1-beta provider hotfix
graseeel Aug 13, 2026
077ae7f
fix(simulator): confirm device refresh
graseeel Aug 13, 2026
9265000
fix(simulator): migrate stale MCP registrations
graseeel Aug 13, 2026
86b2615
chore(release): prepare 0.7.2-beta hotfix
graseeel Aug 13, 2026
7cf5ccc
fix(windows): CLI login DPAPI BOM handling + security audit fixes (#70)
ednsinf Aug 16, 2026
c713d86
fix(windows): restore entropy single-quote escaping in DPAPI scripts
graseeel Aug 16, 2026
02f46f4
test(windows): make DPAPI script escaping test load-bearing
graseeel Aug 16, 2026
2c2f0aa
feat(chrome): Verboo in Chrome 0.4.0 — browser agent com parser multi…
graseeel Aug 19, 2026
d778b68
Merge pull request #74 from graseeel/feat/verboo-in-chrome-ext
graseeel Aug 19, 2026
ac16704
fix(windows): write DPAPI file without BOM and recover from corrupt b…
graseeel Aug 19, 2026
58195bb
feat(windows): guided Git install when CLI login requires git-bash
graseeel Aug 19, 2026
3523715
fix(chrome): add activity arms for find and extract_page_content tools
graseeel Aug 19, 2026
40f5313
test(windows): gate platform-dependent tests in windows_git
graseeel Aug 19, 2026
fbfb859
feat(simulator): guided iOS simulator setup with automatic and manual…
graseeel Aug 19, 2026
2be41de
ci: cache apt packages and raise linux test timeout
graseeel Aug 19, 2026
83981be
chore(release): prepare 0.7.3
graseeel Aug 19, 2026
ecfa465
chore(release): rename 0.7.3 to 0.7.3-beta
graseeel Aug 19, 2026
0767af2
chore: merge main into dev (join histories, keep dev tree)
graseeel Aug 19, 2026
e3cfec9
chore(release): add 0.7.3-beta release catalog entry
graseeel Aug 20, 2026
efbba49
fix(linux): auto-disable WebKitGTK DMABUF renderer on AppImage/NVIDIA
graseeel Aug 20, 2026
365f8a2
feat(android): emulator requirements, guided setup and platform tabs …
graseeel Aug 20, 2026
5165efa
feat(android): emulator boot, interactive preview and input (F1)
graseeel Aug 20, 2026
700be1a
feat(android): accessibility, capture, recording and system actions (F2)
graseeel Aug 20, 2026
9920c4a
feat(simulator): compact TopBar with simulator chooser menu
graseeel Aug 20, 2026
f42a6c1
fix(android): real setup orchestration with production progress parsing
graseeel Aug 20, 2026
dc2129a
chore(release): prepare 0.8.0-beta
graseeel Aug 20, 2026
f5298e0
fix(simulator): suppress menu tooltip overlap and humanize AVD labels
graseeel Aug 20, 2026
32c19ce
fix(android): boot emulator headless so it only appears inside the app
graseeel Aug 20, 2026
48e6d13
redesign(login): simplify sign-in screen with progressive disclosure
graseeel Aug 20, 2026
3314d97
fix(login): stabilize layout across locales and polish sign-in screen
graseeel Aug 21, 2026
c47cabe
fix(window): restore double-click to zoom on the title bar
graseeel Aug 21, 2026
e8cb04e
fix(login): keep session feedback truthful and never silence a user a…
graseeel Aug 21, 2026
90eab32
fix(login): tag CLI login events with a flow id so stale events canno…
graseeel Aug 21, 2026
9460729
test(window): pin the ACL capability that allows double-click to zoom
graseeel Aug 21, 2026
e592822
fix(login): stop the red flash during startup and make the window dra…
graseeel Aug 21, 2026
a2952af
refactor(comments): make every comment pay rent across the repo
graseeel Aug 22, 2026
f33d387
fix: repair three defects the comment pass exposed
graseeel Aug 22, 2026
39404c7
fix(renderer): dedupe automatic permission approvals
graseeel Aug 22, 2026
c617f9c
fix(android): fail closed on unknown cmdline-tools artifacts
graseeel Aug 24, 2026
eaede02
feat(android): fence native 60fps session work through task 7
graseeel Aug 24, 2026
345203f
feat(renderer): add VAF1 parser, frame stats and WebGL painter for an…
graseeel Aug 24, 2026
0af67db
feat(android): add binary VAF1 read_frame command and fps=0 fail-clos…
graseeel Aug 24, 2026
ace8145
fix(android): make preview cancellation absorbing and fail-closed ava…
graseeel Aug 24, 2026
450eded
feat(renderer): harden VAF1/frameStats/WebGL preview and add android …
graseeel Aug 24, 2026
d34b2b7
feat(renderer): freeze android stream rate vocabulary to 60/30 with d…
graseeel Aug 24, 2026
c7d11a5
feat(renderer): add AndroidPreviewCanvas leaf owning the webgl painte…
graseeel Aug 24, 2026
d37c41c
feat(renderer): add canvas slot to SimulatorSurface with shared point…
graseeel Aug 24, 2026
7c353f0
feat(renderer): rewrite android panel hook with vaf1 raf pipeline and…
graseeel Aug 24, 2026
9e6b077
feat(renderer): wire android vaf1 canvas tab with 60/30 stream selector
graseeel Aug 24, 2026
1b946f8
feat(renderer): embed cli bootstrap gate card on the login screen
graseeel Aug 24, 2026
83ad7b1
chore: remove planning docs from the repository
graseeel Aug 24, 2026
c625146
chore(renderer): remove unused setFallbackRate from android panel hook
graseeel Aug 24, 2026
917ca52
fix(android): emit terminal fail-closed preview-state when the first …
graseeel Aug 24, 2026
0cd1f69
feat(renderer): persist android stream rate with transactional select…
graseeel Aug 24, 2026
f12acf7
fix(android): retry grpc discovery within budget and gate input prese…
graseeel Aug 25, 2026
dccb64a
fix(renderer): correct vaf1 frame orientation, canvas tap fallback an…
graseeel Aug 25, 2026
2cf51c3
fix(android): publish vaf1 frame dimensions and gate all presence emi…
graseeel Aug 25, 2026
2d8d461
fix(renderer): send manual input origin from panel system actions
graseeel Aug 25, 2026
6f801b9
fix(android): discover sdk in default install paths, typed preview er…
graseeel Aug 25, 2026
fa2c2d7
fix(renderer): localized preview errors, clean session-ended transiti…
graseeel Aug 25, 2026
dee8151
fix(android): convert taps to physical device pixels via adb wm size
graseeel Aug 25, 2026
f82c84f
feat(renderer): boot and shutdown transitions for the android emulato…
graseeel Aug 25, 2026
d3d8fd2
feat(android): expose the embedded emulator to the model via a native…
graseeel Aug 25, 2026
cfc45d6
fix(android): typed inspect errors, mcp attach sync event and session…
graseeel Aug 25, 2026
df11b2d
feat(renderer): inspect feedback, adoptive presence and boot cancel f…
graseeel Aug 25, 2026
a1f4931
feat(android): temp-managed annotation captures with promote and cleanup
graseeel Aug 25, 2026
d32c1b7
feat(renderer): live component inspection preview, presence grace and…
graseeel Aug 25, 2026
4538ca6
fix(security): harden mcp discovery permissions and constant-time sec…
graseeel Aug 26, 2026
2d935f4
feat(renderer): stop button in composer with turn-identity lock and E…
graseeel Aug 26, 2026
81e8b22
fix(renderer): place interruption marker before queued follow-up bubble
graseeel Aug 26, 2026
2433016
fix(renderer): defer queued follow-up bubble until dispatch
graseeel Aug 26, 2026
29a4da2
fix(bootstrap): expõe o erro real do preparo do CLI na interface
graseeel Aug 26, 2026
053edb6
fix(linux): remove libdbus da AppImage e adiciona fallback da API key
graseeel Aug 27, 2026
da32219
fix(login): corrige overflow do botão Save da API key
graseeel Aug 27, 2026
6054158
fix(auth): persiste API key sem coleção Default no Secret Service
graseeel Aug 27, 2026
5218503
fix(chat): erro de autenticação do CLI sem vazar caminhos internos
graseeel Aug 27, 2026
d02c72d
fix(auth): destrava o login após OAuth do CLI concluir
graseeel Aug 27, 2026
caa7718
feat(terminal): disponibiliza o comando verboo no terminal interno
graseeel Aug 27, 2026
4025479
fix(browser): restringe o webview embutido ao painel no Linux
graseeel Aug 27, 2026
d676846
fix(sidebar): atualiza o plano do rodapé assim que a sessão valida
graseeel Aug 27, 2026
afcd21a
fix(settings): abre em Geral e remove dica circular do modo livre
graseeel Aug 27, 2026
0dd8dc1
fix(settings): textos de bandeja por plataforma no lugar de menu bar …
graseeel Aug 27, 2026
9f230a1
fix(conta): botão estilizado no upload de foto
graseeel Aug 27, 2026
65aceef
fix(conta): total de tokens soma input e output
graseeel Aug 27, 2026
8ddc6f0
fix(settings): feedback visível no verificar atualizações e texto do …
graseeel Aug 28, 2026
bc0db5f
fix(dialogs): títulos e filtros dos diálogos nativos seguem o idioma …
graseeel Aug 28, 2026
cb0efe4
fix(plugins): catálogo visível ao abrir e busca isolada por aba
graseeel Aug 28, 2026
cd1dffa
fix(composer): tooltip do anexo some ao remover o chip
graseeel Aug 28, 2026
6bf984a
fix(feedback): diálogo cabe na tela e texto de suporte neutro
graseeel Aug 28, 2026
83e5729
fix(janela): janela restaurada cabe na tela e bordas redimensionam
graseeel Aug 28, 2026
5fe80cd
fix(conta): estado honesto de plano e consumo com chave de API
graseeel Aug 28, 2026
29721d8
fix(modelos): reconcilia modelo salvo com o catálogo atual da conta
graseeel Aug 28, 2026
4498071
fix(chat): chave de API acompanha o login no ambiente do CLI
graseeel Aug 28, 2026
1056750
fix(chrome): reparo adota integração órfã e diagnóstico honesto
graseeel Aug 28, 2026
2adbcd8
fix(provedores): login do Codex conclui pela confirmação do próprio CLI
graseeel Aug 28, 2026
cd4f31c
Merge branch 'agents/issue-106-codex-login' into dev
graseeel Aug 28, 2026
c0af523
fix(provedores): janelas de uso dinâmicas por conta a partir do payload
graseeel Aug 29, 2026
2df60ab
feat(diagnostico): logs locais sanitizados para suporte
graseeel Aug 29, 2026
328e491
feat(diagnostico): eventos de estado, versoes honestas e diagnostico …
graseeel Aug 29, 2026
e6482b0
fix(ci): stub do sidecar do emulador Android nos tres sistemas
graseeel Aug 29, 2026
16f98f6
fix(ci): resolve o ffmpeg do Linux dinamicamente
graseeel Aug 29, 2026
71fe746
fix(windows): gate de spawn, paridade CRLF e prazo no probe do git
graseeel Aug 29, 2026
b63eb25
fix(test): pin de CRLF independente do fim de linha do checkout
graseeel Aug 29, 2026
3cafcda
fix(windows): reaper com prazo no probe e pin sem processo externo
graseeel Aug 29, 2026
2634e2d
fix(android): prazo e acordar no gate do preview para o teste nao pen…
graseeel Aug 30, 2026
799348c
chore(docs): remove planejamento e relatorios datados
graseeel Aug 30, 2026
79a68d9
Merge remote-tracking branch 'origin/main' into dev
graseeel Aug 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
211 changes: 166 additions & 45 deletions .github/workflows/ci-verify.yml

Large diffs are not rendered by default.

104 changes: 103 additions & 1 deletion .github/workflows/tauri-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,9 @@ jobs:
libtool \
nasm \
zlib1g-dev \
xvfb
xvfb \
squashfs-tools \
desktop-file-utils

- name: Install npm dependencies
run: npm ci
Expand Down Expand Up @@ -597,6 +599,106 @@ jobs:
done
fi

# Issue #80: linuxdeploy packs ubuntu-22.04 libdbus-1.so.3 (1.14.x) into
# the AppImage. AppRun's LD_LIBRARY_PATH then makes system dbus-launch
# (e.g. Debian 13, dbus 1.16.2) fail with missing LIBDBUS_PRIVATE_1.16.2,
# which takes Secret Service down. Strip only that SONAME + its symlinks
# so the app uses the system's libdbus. Re-sign: updater sig is on the file.
- name: Strip bundled libdbus from AppImage and re-sign
if: matrix.target == 'x86_64-unknown-linux-gnu'
env:
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
# Pinned appimagetool 1.9.0 (not "continuous") so the packer does
# not float under the release job. SHA-256 of the official
# x86_64 asset (12632352 bytes), confirmed by independent download
# + shasum -a 256 + openssl dgst -sha256.
APPIMAGETOOL_URL: https://github.com/AppImage/appimagetool/releases/download/1.9.0/appimagetool-x86_64.AppImage
APPIMAGETOOL_SHA256: 46fdd785094c7f6e545b61afcfb0f3d98d8eab243f644b4b17698c01d06083d1
shell: bash
run: |
set -euo pipefail
test -n "${TAURI_SIGNING_PRIVATE_KEY:-}" || { echo "::error::TAURI_SIGNING_PRIVATE_KEY is missing"; exit 1; }
test -n "${TAURI_SIGNING_PRIVATE_KEY_PASSWORD:-}" || { echo "::error::TAURI_SIGNING_PRIVATE_KEY_PASSWORD is missing"; exit 1; }

BUNDLE_ROOT="src-tauri/target/${{ matrix.target }}/release/bundle"
APPIMAGE_DIR="$BUNDLE_ROOT/appimage"
APPIMAGES=$(find "$APPIMAGE_DIR" -maxdepth 1 -type f -name '*.AppImage' | sort -u)
APPIMAGE_COUNT=$(printf '%s\n' "$APPIMAGES" | sed '/^$/d' | wc -l | tr -d ' ')
if [ "$APPIMAGE_COUNT" != "1" ]; then
echo "::error::Expected one AppImage to strip, found $APPIMAGE_COUNT"
printf '%s\n' "$APPIMAGES"
exit 1
fi
APPIMAGE=$(printf '%s\n' "$APPIMAGES" | sed '/^$/d' | head -1)
echo "Stripping libdbus from: $APPIMAGE"

WORK=$(mktemp -d)
trap 'rm -rf "$WORK"' EXIT
cp -f "$APPIMAGE" "$WORK/payload.AppImage"
chmod +x "$WORK/payload.AppImage"

# AppImage extract without FUSE (GitHub-hosted runners).
export APPIMAGE_EXTRACT_AND_RUN=1
(
cd "$WORK"
if ! ./payload.AppImage --appimage-extract; then
echo " --appimage-extract failed; falling back to unsquashfs"
OFFSET=$(LC_ALL=C grep -abo --max-count=1 'hsqs' payload.AppImage | head -1 | cut -d: -f1)
test -n "${OFFSET:-}" || { echo "::error::Could not locate squashfs offset in AppImage"; exit 1; }
unsquashfs -o "$OFFSET" -d squashfs-root payload.AppImage
fi
)
test -d "$WORK/squashfs-root" || { echo "::error::AppImage extract produced no squashfs-root"; exit 1; }

SONAME_HITS=$(find "$WORK/squashfs-root" -name 'libdbus-1.so.3' -print)
if [ -z "$SONAME_HITS" ]; then
echo "::error::libdbus-1.so.3 not found inside AppImage (bundler may have stopped packing it). Refusing to ship an unstripped AppImage."
echo "dbus-related files present:"
find "$WORK/squashfs-root" -iname '*dbus*' -print || true
exit 1
fi

echo "Removing bundled libdbus-1 (SONAME + associated symlinks only):"
REMOVED_ANY=0
while IFS= read -r -d '' lib; do
echo " $lib"
ls -l "$lib"
rm -f "$lib"
REMOVED_ANY=1
done < <(find "$WORK/squashfs-root" \( -name 'libdbus-1.so' -o -name 'libdbus-1.so.3' -o -name 'libdbus-1.so.3.*' \) -print0)

if [ "$REMOVED_ANY" != "1" ]; then
echo "::error::libdbus-1.so.3 was found but nothing was removed"
exit 1
fi

STILL_THERE=$(find "$WORK/squashfs-root" -name 'libdbus-1.so.3' -print)
if [ -n "$STILL_THERE" ]; then
echo "::error::libdbus-1.so.3 still present after strip:"
printf '%s\n' "$STILL_THERE"
exit 1
fi

echo "Downloading appimagetool from $APPIMAGETOOL_URL"
test -n "${APPIMAGETOOL_SHA256:-}" || { echo "::error::APPIMAGETOOL_SHA256 is missing"; exit 1; }
curl -fsSL -o "$WORK/appimagetool.AppImage" "$APPIMAGETOOL_URL"
if ! echo "${APPIMAGETOOL_SHA256} $WORK/appimagetool.AppImage" | sha256sum -c -; then
echo "::error::appimagetool SHA-256 mismatch; refusing to execute an unverified packer (signing secrets are in env)"
exit 1
fi
chmod +x "$WORK/appimagetool.AppImage"

ARCH=x86_64 "$WORK/appimagetool.AppImage" --no-appstream "$WORK/squashfs-root" "$WORK/stripped.AppImage"
test -s "$WORK/stripped.AppImage" || { echo "::error::appimagetool produced an empty AppImage"; exit 1; }

cp -f "$WORK/stripped.AppImage" "$APPIMAGE"
chmod +x "$APPIMAGE"
rm -f "${APPIMAGE}.sig"
cargo +1.89.0 tauri signer sign "$APPIMAGE"
test -s "${APPIMAGE}.sig" || { echo "::error::Re-sign produced a missing or empty updater signature"; exit 1; }
echo "Stripped and re-signed AppImage: $APPIMAGE"

- name: Create signed macOS DMG with bounded retry
if: runner.os == 'macOS'
env:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ src-tauri/.cargo/
# Local agent/tool state
.superpowers/
.verboo/
.elyra/
extensions/verboo-chrome/dist/
extensions/verboo-chrome/store-assets/*.zip

Expand Down
Loading
Loading