Skip to content

refactor: migrate to data-studio-agent v0.1.1 shared library#460

Open
Blankll wants to merge 4 commits into
masterfrom
chore/use-release-version
Open

refactor: migrate to data-studio-agent v0.1.1 shared library#460
Blankll wants to merge 4 commits into
masterfrom
chore/use-release-version

Conversation

@Blankll

@Blankll Blankll commented Jun 19, 2026

Copy link
Copy Markdown
Member

What

Complete the migration of dockit from a self-contained agent implementation to the shared data-studio-agent library (v0.1.1).

Before vs After

flowchart LR
  subgraph Before["Before (self-contained)"]
    direction TB
    D1["dockit/src-tauri/src/agent/"]
    D1a["chat_formatter/"] --- D1b["compact.rs"]
    D1b --- D1c["loop_runner.rs"]
    D1c --- D1d["harness.rs"]
    D1d --- D1e["model_registry.rs"]
    D1e --- D1f["provider_adapter.rs"]
    D1f --- D1g["token_counter.rs"]
    D1g --- D1h["tool_executor.rs"]
    D1h --- D1i["tools.rs"]
    D1i --- D1j["conversation.rs"]
    D1j --- D1k["loop_runner_support.rs"]
    D1k --- D1l["config.rs"]
    
    D2["capabilities/"] --- D3["capability handlers"]
    D1 --- D2
  end

  subgraph After["After (shared lib)"]
    direction TB
    L1["data-studio-agent (v0.1.1)\n─ 15 modules, 6500+ lines ─"]
    L1a["chat_formatter/"] --- L1b["compact.rs"]
    L1b --- L1c["loop_runner.rs"]
    L1c --- L1d["harness.rs"]
    L1d --- L1e["model_registry.rs"]
    L1e --- L1f["provider_adapter.rs"]
    L1f --- L1g["token_counter.rs"]
    L1g --- L1h["traits.rs"]
    L1h --- L1i["storage/"]

    A1["dockit/src-tauri/src/\n(thin adapters only)"]
    A1a["agent_adapters.rs\n← Tauri wrappers → lib"] --- A1b["agent/executor.rs\n← ToolExecutor impl"]
    A1b --- A1c["agent/session_store.rs\n← app-specific CRUD"]
    A1c --- A1d["capabilities/\n← tool handlers"]
    A1d --- A1e["agent/query_history.rs\n← app-specific"]
    
    L1 -.->|"git tag v0.1.1"| A1
  end

  Before --> After

  style Before fill:#fff3e0,stroke:#e65100
  style After fill:#e8f5e9,stroke:#2e7d32
  style D1 fill:#ffcc80,stroke:#e65100
  style L1 fill:#a5d6a7,stroke:#2e7d32
  style A1 fill:#c8e6c9,stroke:#2e7d32
Loading

Changes

Deleted (14 files, -4094 lines)

All agent modules extracted to the shared library:
chat_formatter/, compact.rs, conversation.rs, harness.rs, loop_runner.rs, loop_runner_support.rs, model_registry.rs, provider_adapter.rs, token_counter.rs, tool_executor.rs, tools.rs, config.rs

Added

  • agent_adapters.rs — Tauri command wrappers that create SqliteSessionStore + TauriEmitter and delegate to shared lib

Modified

  • agent/executor.rs — implements ToolExecutor trait from lib
  • agent/session_store.rs — app-specific session CRUD (no duplication with lib)
  • capabilities/* — add parallel_ok field, fix test constructors
  • lib.rs — wire up Tauri commands via agent_adapters
  • Cargo.tomldata-studio-agent = { git, tag = "v0.1.1" }

Verification

  • cargo build — green
  • cargo test — green
  • ✅ No dead code or duplication remaining in agent/ directory

Blankll added 2 commits June 19, 2026 18:45
…nstructors

- Switch from path dependency to git tag v0.1.1
- Add missing parallel_ok: false to Capability test constructors
…nt v0.1.1

Delete 14 agent submodules that now live in the shared library:
  chat_formatter, compact, conversation, harness, loop_runner,
  loop_runner_support, model_registry, provider_adapter,
  token_counter, tool_executor, tools, config

Add agent_adapters.rs — thin Tauri command wrappers that create
SqliteSessionStore + TauriEmitter and delegate to shared lib.

Update remaining modules:
  - executor.rs: implement ToolExecutor trait from lib
  - session_store.rs: app-specific session CRUD (no duplication)
  - capabilities/*: add parallel_ok field per lib's Capability schema
  - lib.rs: wire up Tauri commands via agent_adapters
  - Cargo.toml: data-studio-agent = { git, tag = v0.1.1 }
@Blankll Blankll changed the title chore: use data-studio-agent v0.1.1 release + fix parallel_ok tests refactor: migrate to data-studio-agent v0.1.1 shared library Jun 19, 2026
@codecov

codecov Bot commented Jun 19, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 6.80628% with 178 lines in your changes missing coverage. Please review.
✅ Project coverage is 46.74%. Comparing base (e3f2bab) to head (bc32281).

Files with missing lines Patch % Lines
src-tauri/src/agent_adapters.rs 0.00% 170 Missing ⚠️
src-tauri/src/lib.rs 0.00% 6 Missing ⚠️
src-tauri/src/agent/session_store.rs 0.00% 2 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #460      +/-   ##
==========================================
+ Coverage   42.69%   46.74%   +4.04%     
==========================================
  Files         117      106      -11     
  Lines       16050    13158    -2892     
  Branches      768      768              
==========================================
- Hits         6853     6151     -702     
+ Misses       8958     6768    -2190     
  Partials      239      239              
Files with missing lines Coverage Δ
src-tauri/src/agent/executor.rs 0.00% <ø> (ø)
src-tauri/src/agent/query_history.rs 0.00% <ø> (ø)
src-tauri/src/capabilities/commands.rs 89.65% <100.00%> (+0.14%) ⬆️
src-tauri/src/capabilities/dockit.rs 90.38% <100.00%> (+0.09%) ⬆️
src-tauri/src/capabilities/dynamo.rs 94.14% <100.00%> (ø)
src-tauri/src/capabilities/es.rs 97.48% <100.00%> (ø)
src-tauri/src/capabilities/mongo.rs 83.77% <100.00%> (ø)
src-tauri/src/capabilities/registry.rs 92.35% <100.00%> (+0.04%) ⬆️
src-tauri/src/capabilities/types.rs 80.00% <ø> (ø)
src-tauri/src/agent/session_store.rs 0.00% <0.00%> (ø)
... and 2 more

... and 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

- data-studio-agent: v0.1.1 -> v0.1.2 (self-healing, tool timeout, message ordering)
- session_store: ORDER BY rowid ASC fixes UUID race in display queries
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