Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
4069e76
chore(vendor): bump tinybus submodule
senamakel Oct 17, 2026
2051f7b
chore(vendor): bump tinybus submodule
senamakel Oct 17, 2026
ad1e708
chore(workspace): add tinydocs-client to workspace members
senamakel Oct 17, 2026
791ee8f
feat(tinydocs-client): add client crate with recording broker test
senamakel Oct 17, 2026
c311129
test(tinydocs-client): cover malformed replies and digest rejection
senamakel Oct 17, 2026
29e1db7
test(tinydocs-client): cover text-only pptx generation without an upl…
senamakel Oct 17, 2026
2db2188
test(client): cover invalid input on read output
senamakel Oct 17, 2026
e5d0a66
test(client): cover render failure releasing held output
senamakel Oct 17, 2026
43ff26b
docs(tinydocs-client): document detailed streaming and object client …
senamakel Oct 17, 2026
8e6d275
docs(tinydocs-client): clarify client ownership in module docs
senamakel Oct 17, 2026
8b332bc
chore(vendor): bump tinybus submodule
senamakel Oct 17, 2026
d7154cd
chore(tinydocs-client): bump tinybus to 0.2.2
senamakel Oct 17, 2026
3fc02f2
test(tinydocs-client): cover streamed calls that fail before reading …
senamakel Oct 17, 2026
2f9a74a
chore(deps): bump tinybus to 0.2.2
senamakel Oct 17, 2026
1eec570
test(tinydocs-client): rename fixture helper to test_fixture
senamakel Oct 17, 2026
2674417
test: rename fixture helper call in recording broker test
senamakel Oct 17, 2026
921bca0
feat(tinydocs-client): add TinyDocsClient and DocumentCallError
senamakel Oct 17, 2026
c2cc4df
test(client): cover disabled modules, invalid text output, and releas…
senamakel Oct 17, 2026
8642259
test(client): cover release deadline and error redaction
senamakel Oct 17, 2026
b4199a0
fix(client): remove release timeout around output release calls
senamakel Oct 17, 2026
d8aefbf
fix(tinydocs-client): redact module messages from Display output
senamakel Oct 17, 2026
05b147b
docs(tinydocs-client): document DocumentCallError redaction behaviour
senamakel Oct 17, 2026
67ea197
docs(tinydocs-client): clarify best-effort output release on cancella…
senamakel Oct 17, 2026
5ce71f2
chore(tinydocs-client): fix clippy lints and doc wording
senamakel Oct 17, 2026
240aebd
test(tinydocs-client): split recording broker fixture and module wire…
senamakel Oct 17, 2026
afe1410
test(client): scope fixture state locks to avoid holding them across …
senamakel Oct 17, 2026
edebe99
test(tinydocs-client): scope fixture state lock in release error test
senamakel Oct 17, 2026
8c0c760
test(client): split held output release tests into focused cases
senamakel Oct 17, 2026
787e738
test(client): cover peer handover during held output
senamakel Oct 18, 2026
a049f59
test(tinydocs-client): remove unused handover access fixture
senamakel Oct 18, 2026
0f2d0e5
test(client): cover alias handover after generation retains output
senamakel Oct 18, 2026
1b24b14
test(recording_broker): consolidate peer-hop assertions into single c…
senamakel Oct 18, 2026
2b4e263
test(recording_broker): cover per-member pptx output overrides
senamakel Oct 18, 2026
dc45b7e
test(recording_broker): correct expected bytes in peer handover tests
senamakel Oct 18, 2026
6524c89
chore(vendor): bump tinybus submodule
senamakel Oct 18, 2026
638408f
refactor(client): pin module binding for the duration of each call
senamakel Oct 18, 2026
fce0500
chore(deps): bump tinydocs to 0.2.5 and tinybus to 0.3.2
senamakel Oct 18, 2026
ce05a68
test(recording-broker): cover alias handover for text and markdown me…
senamakel Oct 18, 2026
87001d1
test(tinydocs-client): cover held outputs across peer handover
senamakel Oct 18, 2026
d50506d
docs(tinydocs-client): clarify per-peer binding for held outputs
senamakel Oct 18, 2026
2338658
ci(release): bump reusable release workflow pin
senamakel Oct 18, 2026
5f5e7f5
feat(ci): add reviewed-epic release mode to release workflow
senamakel Oct 18, 2026
e49eeb8
chore(deps): bump tinybus to 0.3.2 and tinydocs to 0.2.5
senamakel Oct 18, 2026
7cc8fad
refactor(tinydocs-client): make output_client an associated function
senamakel Oct 18, 2026
84b3890
test(client): add timeout to peer handover fixture client
senamakel Oct 18, 2026
55b388d
test(tinydocs-client): assert recorded call count is zero
senamakel Oct 18, 2026
9af9733
test(client): cover incompatible contract classification
senamakel Oct 18, 2026
87bec2d
test(tinydocs-client): split incompatible contract test into per-path…
senamakel Oct 18, 2026
ce2d617
fix(client): treat incompatible contract as unavailable
senamakel Oct 18, 2026
26c5330
test(tinydocs-client): expect unavailable for malformed typed stream …
senamakel Oct 18, 2026
0f93c5b
Merge pull request #47 from senamakel/epic-8056-tinydocs-client-source
senamakel Oct 18, 2026
17db85b
chore(vendor): update tinybus subproject commit
senamakel Oct 20, 2026
f4239c7
Merge remote-tracking branch 'origin/main' into epic-8056-tinydocs-cl…
senamakel Oct 20, 2026
491ddd5
chore(vendor): update tinybus subproject commit
senamakel Oct 20, 2026
d7c2a77
chore(deps): update dependencies versions
senamakel Oct 20, 2026
67e8e33
chore(deps): update dependency versions and notes
senamakel Oct 20, 2026
37a2ebc
chore(config): update deny.toml rules
senamakel Oct 20, 2026
357682a
chore(deps): format dependency entries
senamakel Oct 20, 2026
12a1c6a
chore(deps): update lockfile dependencies
senamakel Oct 20, 2026
ed9d7c5
refactor(intake): improve zip part name handling
senamakel Oct 20, 2026
80af99d
test(markdown): add test for invalid utf8 member names in pptx
senamakel Oct 20, 2026
4f11291
fix(markdown/ooxml): ensure slide number is parsed as u32
senamakel Oct 20, 2026
4a65f8e
test(tests): update zip entry name handling in tests
senamakel Oct 20, 2026
db6e178
test(markdown): update invalid utf8 member name test
senamakel Oct 20, 2026
94b309b
chore(licenses): add more permissive licenses to deny list
senamakel Oct 20, 2026
3222ee8
refactor(intake): simplify duplicate check logic
senamakel Oct 20, 2026
4cf7ce3
build(deps): simplify dependency declarations
senamakel Oct 20, 2026
7010f1e
chore(vendor): update tinybus subproject commit
senamakel Oct 20, 2026
74a8007
chore(deps): update tinybus and tinybus-module versions
senamakel Oct 20, 2026
4fc3c30
test(tests): update docx and pptx test cases for cp437 fallback handling
senamakel Oct 20, 2026
abb76cc
chore(deps): update tinybus dependencies
senamakel Oct 20, 2026
d6cbc39
Merge pull request #6 from senamakel/epic-8056-tinydocs-client-refresh
senamakel Oct 20, 2026
449e852
chore(vendor): update tinybus subproject commit
senamakel Oct 20, 2026
6fc1dae
chore(deps): update tinybus dependencies
senamakel Oct 20, 2026
14f8240
Merge pull request #7 from senamakel/epic-8056-tinydocs-sdk0311
senamakel Oct 20, 2026
9d8fa9b
Merge tinyhumansai/tinydocs main into epic/8369-security-migration
M3gA-Mind Nov 3, 2026
79bb777
ci(release): release only from main
M3gA-Mind Nov 3, 2026
f6917dc
chore(deps): lock tinydocs-client and TinyBus 0.3.11 after the main m…
M3gA-Mind Nov 3, 2026
59d9d75
fix(deps): move calamine to 0.38 for RUSTSEC-2026-0436
M3gA-Mind Nov 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
222 changes: 214 additions & 8 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ exclude = [
]

[workspace]
members = ["crates/tinydocs-bus", "crates/tinydocs-module"]
default-members = [".", "crates/tinydocs-bus", "crates/tinydocs-module"]
members = ["crates/tinydocs-bus", "crates/tinydocs-client", "crates/tinydocs-module"]
default-members = [".", "crates/tinydocs-bus", "crates/tinydocs-client", "crates/tinydocs-module"]
exclude = ["vendor/tinybus"]
resolver = "3"

Expand All @@ -34,7 +34,7 @@ version = "0.2.7"
[dependencies]
# The dependency-light TinyBus contract owns payload types and errors. Re-export
# it so library and bus callers use the exact same values.
tinydocs-bus = { version = "0.2.4", path = "crates/tinydocs-bus" }
tinydocs-bus = { version = "0.2.5", path = "crates/tinydocs-bus" }
# OOXML `.docx` synthesis. Optional: exclusive to the `docx` feature so a host
# that only needs extraction does not pull the writer stack.
docx-rs = { git = "https://github.com/bokuweb/docx-rs", rev = "71df69c82ea14d777ab0c0e7236b08ffbacef31d", version = "0.4.23", optional = true }
Expand All @@ -52,7 +52,7 @@ zip = { version = "9", default-features = false, features = ["deflate"], optiona
# Streaming XML events avoid building attacker-controlled DOM trees.
quick-xml = { version = "0.41", optional = true }
# Workbook row conversion for document-memory Markdown; implementation only.
calamine = { version = "0.37", optional = true }
calamine = { version = "0.38", optional = true }
# Pure Rust PDF rasterization, isolated from the default extraction build.
hayro = { version = "0.5", optional = true }

Expand Down
32 changes: 32 additions & 0 deletions crates/tinydocs-client/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
[package]
name = "tinydocs-client"
version.workspace = true
edition = "2024"
rust-version = "1.88"
license = "GPL-3.0-only"
description = "Typed TinyBus client for the TinyDocs module."
repository = "https://github.com/tinyhumansai/tinydocs"
documentation = "https://docs.rs/tinydocs-client"
keywords = ["tinybus", "document", "agent"]
categories = ["api-bindings"]

[dependencies]
# Module loading and typed failure reporting stay host-owned; this is the
# published host-facing SDK without its native loader.
tinybus = { version = "0.3.11", default-features = false }
# Shared wire names and payload DTOs.
tinydocs-bus = { version = "0.2.5", path = "../tinydocs-bus" }
# The held-output protocol uses base64 chunks and verifies their SHA-256 digest.
base64 = "0.22"
sha2 = "0.10"
serde_json = "1"
# Cancellation-safe output release schedules cleanup on the caller's runtime.
tokio = { version = "1", features = ["rt", "time"] }
tracing = "0.1"

[dev-dependencies]
async-trait = "0.1"
tokio = { version = "1", features = ["macros", "rt", "sync", "time", "test-util"] }

[lints]
workspace = true
Loading
Loading