chore(skills): update Cargo.lock and README for skills version 0.2.0#81
chore(skills): update Cargo.lock and README for skills version 0.2.0#81sergiofilhowz merged 2 commits intomainfrom
Conversation
- Updated the skills package version in Cargo.lock from 0.1.0 to 0.2.0. - Enhanced README with detailed validation rules for skill IDs and skills, including new URI structures and examples for nested skills. - Added new functionality for fetching skills with the `skills::fetch_skill` and `skill::fetch` methods, allowing for batched reads of skill resources. - Improved error handling and validation for URI parsing and registration scenarios.
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📝 WalkthroughWalkthroughThis PR introduces a multi-segment URI scheme for skills, replacing single-segment IDs with slash-delimited paths. It adds a new ChangesCore URI and Fetch System Redesign
Sequence Diagram(s)sequenceDiagram
actor User
participant Client as Client/iii Engine
participant Fetch as skill::fetch Handler
participant Validate as Validator
participant Read as Resource Reader
participant Trigger as Function Trigger
User->>Client: Call skill::fetch with uri/uris
Client->>Fetch: TriggerRequest(skill::fetch, payload)
Fetch->>Validate: validate_fetch_input({uri, uris})
Validate-->>Fetch: Vec<String> URIs (normalized)
Fetch->>Fetch: Initialize output sections
loop For each URI
Fetch->>Read: parse_uri(uri)
alt Skill URI (iii://{a}/{b}/...)
Read-->>Fetch: ParsedUri::Skill(id)
Fetch->>Read: read(Skill(id))
Read-->>Fetch: Skill body
else Section URI (iii://fn/{a}/{b}/...)
Read-->>Fetch: ParsedUri::Section{function_id}
Fetch->>Trigger: iii.trigger(function_id)
Trigger-->>Fetch: Content (markdown/json)
end
Fetch->>Fetch: Append content to output sections
end
Fetch-->>Client: Composed output (sections joined by ---)
Client-->>User: Fetch result
sequenceDiagram
actor User
participant Client as Client/iii Engine
participant Resources as skills::resources-read Handler
participant Reader as Resource Reader
participant Trigger as Function Trigger
User->>Client: Read iii://fn/{a}/{b}
Client->>Resources: skills::resources-read(uri)
Resources->>Reader: parse_uri(iii://fn/a/b)
Reader-->>Resources: ParsedUri::Section{function_id: "a::b"}
Resources->>Reader: validate_id("a::b")
Reader-->>Resources: Valid ID
Resources->>Trigger: iii.trigger(a::b)
Trigger-->>Resources: Content{content: "...", mime: "..."}
Resources-->>Client: Rendered content
Client-->>User: Resource display
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
skills::fetch_skillandskill::fetchmethods, allowing for batched reads of skill resources.Summary by CodeRabbit
Release Notes
New Features
Documentation
Tests