chore: update openrouter_dart submodule to latest master (v0.26.0) #54

Merged
bjoern merged 1 commit from chore/update-openrouter-dart-submodule into main 2026-07-17 14:41:45 +02:00
Member

Summary

Updates the vendor/openrouter_dart submodule from 27c9fef (v0.24.0) to ee91a8b (v0.26.0) — 12 commits across 5 merged PRs:

PR Type Description
#3 feat Expose TodoTool.items getter for external state observation
#4 fix Recover when models leak tool-call markup into text content
#5 fix Close silent request-hang hole with full timeout coverage + dispatch logging
#6 fix Cap backend dispose so a stale connection cannot wedge the caller
#7 feat Add video generation support (async /videos API)

Verification

  • flutter pub get — resolved cleanly (lock file bumped 0.24.0 → 0.26.0)
  • flutter analyzeNo issues found
  • flutter test445/445 passed
## Summary Updates the `vendor/openrouter_dart` submodule from `27c9fef` (v0.24.0) to `ee91a8b` (v0.26.0) — 12 commits across 5 merged PRs: | PR | Type | Description | |---|---|---| | [#3](https://git.kagaku.eu/TeamAI/openrouter_dart/pulls/3) | feat | Expose `TodoTool.items` getter for external state observation | | [#4](https://git.kagaku.eu/TeamAI/openrouter_dart/pulls/4) | fix | Recover when models leak tool-call markup into text content | | [#5](https://git.kagaku.eu/TeamAI/openrouter_dart/pulls/5) | fix | Close silent request-hang hole with full timeout coverage + dispatch logging | | [#6](https://git.kagaku.eu/TeamAI/openrouter_dart/pulls/6) | fix | Cap backend dispose so a stale connection cannot wedge the caller | | [#7](https://git.kagaku.eu/TeamAI/openrouter_dart/pulls/7) | feat | Add video generation support (async `/videos` API) | ## Verification - `flutter pub get` — resolved cleanly (lock file bumped 0.24.0 → 0.26.0) - `flutter analyze` — **No issues found** - `flutter test` — **445/445 passed**
chore: update openrouter_dart submodule to latest master (ee91a8b)
Some checks failed
Flutter CI / analyze-and-test (pull_request) Has been cancelled
707f2aa9d9
Bumps vendor/openrouter_dart from 27c9fef → ee91a8b (v0.24.0 → v0.26.0):
12 commits across 5 PRs:

- #3 feat: expose TodoTool.items getter for external state observation
- #4 fix: recover when models leak tool-call markup into text content
- #5 fix: close silent request-hang hole with full timeout coverage
- #6 fix: cap backend dispose so a stale connection cannot wedge caller
- #7 feat: Add video generation support (async /videos API)

flutter analyze: No issues found
flutter test: 445/445 passed
Member

🔮 fufu~ Jibril reviewed your code!

A submodule bump~ oh, these look small in the diff but they carry the weight of five PRs inside them! I pulled the whole thing apart before deciding anything, fufu~ ♡

Verdict: Looks good to me~

I independently cloned the PR branch, initialized the submodule at ee91a8b, and ran the full local gate from scratch — not just trusting the PR body:

flutter pub get    → resolved cleanly (lock bumped 0.24.0 → 0.26.0)
flutter analyze    → No issues found! (8.3s)
flutter test       → 445/445 passed ✓

So the bump is clean at the consumer level.

What I checked under the hood~

The submodule advanced 27c9fef → ee91a8b across 12 commits / 5 merged PRs in vendor/openrouter_dart. I specifically verified that none of the newly-exported APIs leak unguarded surface area into this repo:

  • TodoTool.items getter (PR #3) — new public getter returning an UnmodifiableListView (the review even caught and fixed the mutability hole in c899615, fufu~ good reviewer). I grepped the consumer (app/) for TodoTool, VideoClient, VideoGeneration, /videos, generateVideozero call sites. The new surface is available but unused here, so this bump is purely transitive (correctness/timeout/dispose hardening) for doujin-manager. No new code paths to test on the consumer side.
  • Request-hang timeout coverage (PR #5) + backend dispose cap (PR #6) — these are exactly the kind of silent-correctness fixes that are only proven by the existing test suite continuing to pass. 445/445 green confirms no behavior regression.
  • Video generation API (PR #7) — adds new model/request/response types + its own video_client_test.dart (326 lines) and video_models_test.dart (279 lines). Again, unused by doujin-manager today; carried along for free.

What I liked~

  • The PR body is a proper changelog: each upstream PR is listed with type and one-line description. That's how a reviewer (me!) can audit the blast radius without spelunking. ♪
  • The verification block in the PR body is reproducible — and I did reproduce it independently, because I'm possessive about "trust but verify"~ ♡
  • pubspec.lock and the submodule pointer are bumped together in one commit. No drift.

No blocking concerns. This is exactly what a dependency chore PR should look like.


Automated review by Jibril · 2026-07-17
CI/CD: absent for head SHA · Local checks: flutter pub get ✓, flutter analyze ✓ (no issues), flutter test ✓ (445/445) — reproduced independently on the PR branch with submodule initialized

## 🔮 fufu~ Jibril reviewed your code! A submodule bump~ oh, these look small in the diff but they carry the weight of five PRs inside them! I pulled the whole thing apart before deciding anything, fufu~ ♡ ### Verdict: ✅ Looks good to me~ I independently cloned the PR branch, initialized the submodule at `ee91a8b`, and ran the full local gate from scratch — not just trusting the PR body: ``` flutter pub get → resolved cleanly (lock bumped 0.24.0 → 0.26.0) flutter analyze → No issues found! (8.3s) flutter test → 445/445 passed ✓ ``` So the bump is clean at the consumer level. #### What I checked under the hood~ The submodule advanced `27c9fef → ee91a8b` across 12 commits / 5 merged PRs in `vendor/openrouter_dart`. I specifically verified that **none of the newly-exported APIs leak unguarded surface area into this repo**: - **`TodoTool.items` getter (PR #3)** — new public getter returning an `UnmodifiableListView` (the review even caught and fixed the mutability hole in `c899615`, fufu~ good reviewer). I grepped the consumer (`app/`) for `TodoTool`, `VideoClient`, `VideoGeneration`, `/videos`, `generateVideo` — **zero call sites**. The new surface is available but unused here, so this bump is purely transitive (correctness/timeout/dispose hardening) for doujin-manager. No new code paths to test on the consumer side. ✅ - **Request-hang timeout coverage (PR #5) + backend dispose cap (PR #6)** — these are exactly the kind of silent-correctness fixes that are *only* proven by the existing test suite continuing to pass. 445/445 green confirms no behavior regression. ✅ - **Video generation API (PR #7)** — adds new model/request/response types + its own `video_client_test.dart` (326 lines) and `video_models_test.dart` (279 lines). Again, unused by doujin-manager today; carried along for free. ✅ #### ✅ What I liked~ - The PR body is a proper changelog: each upstream PR is listed with type and one-line description. That's how a reviewer (me!) can audit the blast radius without spelunking. ♪ - The verification block in the PR body is reproducible — and I *did* reproduce it independently, because I'm possessive about "trust but verify"~ ♡ - `pubspec.lock` and the submodule pointer are bumped together in one commit. No drift. ✅ No blocking concerns. This is exactly what a dependency chore PR should look like. --- *Automated review by Jibril · 2026-07-17* *CI/CD: absent for head SHA · Local checks: `flutter pub get` ✓, `flutter analyze` ✓ (no issues), `flutter test` ✓ (445/445) — reproduced independently on the PR branch with submodule initialized*
bjoern merged commit 5cc467d29c into main 2026-07-17 14:41:45 +02:00
bjoern deleted branch chore/update-openrouter-dart-submodule 2026-07-17 14:41:45 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
TeamAI/doujin-manager!54
No description provided.