docs(skills): update skills and references for v0.11 workers rename#1448
docs(skills): update skills and references for v0.11 workers rename#1448
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughStandardized documentation/config naming from "modules" to "workers" (e.g., Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 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 |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
There was a problem hiding this comment.
Actionable comments posted: 4
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (3)
docs/examples/cron.mdx (3)
92-94:⚠️ Potential issue | 🟡 MinorSyntax error: mismatched parentheses in Logger instantiation.
Line 93 has
let logger = Logger());which has an extra closing parenthesis. This should belet logger = Logger::new();to match the Rust SDK API.🐛 Proposed fix
iii.register_function((RegisterFunctionMessage::with_id("cron.periodic_job".into()), |_input| async move { - let logger = Logger()); + let logger = Logger::new(); logger.info("Periodic job fired", None);🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/examples/cron.mdx` around lines 92 - 94, Replace the malformed Logger instantiation inside the closure passed to iii.register_function: change the line that declares the logger (currently `let logger = Logger());`) to call the SDK constructor `Logger::new()` and remove the extra parenthesis so the closure compiles; locate this in the closure created for RegisterFunctionMessage::with_id("cron.periodic_job".into()) where the variable `logger` is declared.
282-284:⚠️ Potential issue | 🟡 MinorSyntax error: mismatched parentheses in Logger instantiation.
Same issue —
let logger = Logger());should belet logger = Logger::new();.🐛 Proposed fix
iii.register_function((RegisterFunctionMessage::with_id("cron.orders_sweep".into()), |_input| async move { - let logger = Logger()); + let logger = Logger::new(); let orders_val = iii.trigger(TriggerRequest::new("state::list", json!({ "scope": "orders" }))).await?;🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/examples/cron.mdx` around lines 282 - 284, The Logger instantiation has mismatched parentheses and uses the wrong constructor; inside the closure passed to iii.register_function (the RegisterFunctionMessage::with_id("cron.orders_sweep") handler) replace the erroneous line let logger = Logger()); with a proper constructor call such as let logger = Logger::new(); and ensure closing parentheses/braces for the closure and register_function invocation remain balanced.
163-165:⚠️ Potential issue | 🟡 MinorSyntax error: mismatched parentheses in Logger instantiation.
Same issue as the previous Rust example —
let logger = Logger());should belet logger = Logger::new();.🐛 Proposed fix
iii.register_function((RegisterFunctionMessage::with_id("job.handle_tick".into()), |input| async move { - let logger = Logger()); + let logger = Logger::new(); logger.info("Periodic job processed", Some(input));🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/examples/cron.mdx` around lines 163 - 165, The closure passed to iii.register_function (the RegisterFunctionMessage::with_id("job.handle_tick") handler) contains a syntax error: the Logger is instantiated as "let logger = Logger());" with mismatched parentheses; replace that instantiation with a proper call to the constructor (use Logger::new()) and remove the extra parenthesis so the closure compiles (update the logger variable in the closure accordingly).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/how-to/expose-http-endpoint.mdx`:
- Line 20: The doc sets the bind host to 127.0.0.1 but the curl verification
example still targets localhost, which can cause IPv4/IPv6 mismatches; update
the curl example (the verification command referenced around the "curl" example)
to use 127.0.0.1 instead of localhost so the host in the command matches the
configured host.
In `@docs/how-to/stream-realtime-data.mdx`:
- Line 19: Update the client connection URL in the example so it matches the
server bind of "host: 127.0.0.1" by replacing the client snippet's
"ws://localhost:3112" with the IP-based URL "ws://127.0.0.1:3112" (this keeps
the documented server/client host consistent and avoids IPv6 localhost
resolution issues).
In `@docs/how-to/use-topic-queues.mdx`:
- Line 10: The page uses mixed "module" terminology instead of the v0.11
"worker" naming; update all labels and headings to use the v0.11 worker terms
(e.g., change any "module" wording and ensure headings like "Queue worker
reference" and the existing heading "Enable the Queue worker" are consistent),
specifically replace occurrences of the phrase "Queue worker reference" and any
"module" labels on this page with the v0.11 "worker" terminology, then scan
related references mentioned in the comment (sdk/, engine/, frameworks/,
website/) for the same inconsistency and harmonize their labels to match the
docs/ canonical primitive names.
In `@skills/iii-state-management/SKILL.md`:
- Line 77: Update the sentence in SKILL.md that currently implies Redis is a
KvStore variant: rephrase it to state that iii-state must be enabled in
iii-config.yaml with either the 'kv' adapter (e.g., file-based) or the separate
'redis' adapter, and keep the link to the annotated config reference; ensure the
wording clearly distinguishes 'kv' and 'redis' as separate adapter names.
---
Outside diff comments:
In `@docs/examples/cron.mdx`:
- Around line 92-94: Replace the malformed Logger instantiation inside the
closure passed to iii.register_function: change the line that declares the
logger (currently `let logger = Logger());`) to call the SDK constructor
`Logger::new()` and remove the extra parenthesis so the closure compiles; locate
this in the closure created for
RegisterFunctionMessage::with_id("cron.periodic_job".into()) where the variable
`logger` is declared.
- Around line 282-284: The Logger instantiation has mismatched parentheses and
uses the wrong constructor; inside the closure passed to iii.register_function
(the RegisterFunctionMessage::with_id("cron.orders_sweep") handler) replace the
erroneous line let logger = Logger()); with a proper constructor call such as
let logger = Logger::new(); and ensure closing parentheses/braces for the
closure and register_function invocation remain balanced.
- Around line 163-165: The closure passed to iii.register_function (the
RegisterFunctionMessage::with_id("job.handle_tick") handler) contains a syntax
error: the Logger is instantiated as "let logger = Logger());" with mismatched
parentheses; replace that instantiation with a proper call to the constructor
(use Logger::new()) and remove the extra parenthesis so the closure compiles
(update the logger variable in the closure accordingly).
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: b35352e7-601c-403e-92f5-1e7b45ce07b5
📒 Files selected for processing (26)
docs/advanced/architecture.mdxdocs/advanced/protocol.mdxdocs/examples/cron.mdxdocs/examples/multi-trigger.mdxdocs/examples/state-management.mdxdocs/examples/todo-app.mdxdocs/how-to/expose-http-endpoint.mdxdocs/how-to/schedule-cron-task.mdxdocs/how-to/stream-realtime-data.mdxdocs/how-to/trigger-actions.mdxdocs/how-to/use-topic-queues.mdxdocs/workers/iii-stream.mdxskills/iii-cron-scheduling/SKILL.mdskills/iii-engine-config/SKILL.mdskills/iii-getting-started/SKILL.mdskills/iii-http-endpoints/SKILL.mdskills/iii-http-middleware/SKILL.mdskills/iii-observability/SKILL.mdskills/iii-realtime-streams/SKILL.mdskills/iii-state-management/SKILL.mdskills/iii-state-reactions/SKILL.mdskills/iii-workflow-orchestration/SKILL.mdskills/references/cron-scheduling.jsskills/references/cron-scheduling.pyskills/references/cron-scheduling.rsskills/references/iii-config.yaml
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/workers/iii-cron.mdx (1)
76-89:⚠️ Potential issue | 🟡 MinorClarify that 6-field cron expressions are also valid.
The documentation currently shows a 7-field format. Please add a note that the year field is optional, so developers can use either 6-field expressions (second minute hour day month weekday) or 7-field expressions with the year field.
Applies to lines 76-89 and 166-175.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/workers/iii-cron.mdx` around lines 76 - 89, Update the ResponseField named "expression" documentation to clarify that the year field is optional and that both 6-field and 7-field cron expressions are supported: state explicitly that valid formats are either "second minute hour day month weekday" (6-field) or "second minute hour day month weekday year" (7-field), and add a brief note near the existing cron diagram and the second occurrence of the cron example to show the 6-field form and mention the optional year field. Ensure the text references the ResponseField "expression" examples so developers know they can omit the year.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/examples/cron.mdx`:
- Around line 326-337: Update the wording that currently says "iii uses a
seven-field cron format" to clarify that both six- and seven-field cron
expressions are supported (the year field is optional), for example: "iii
supports six- or seven-field cron expressions: `second minute hour day month
weekday [year]` (year optional)." Modify the cron table/header to indicate the
year is optional (e.g., label the final column "year (optional)"), and add at
least one 6-field example row such as `0 0 * * * *` with the description "every
hour".
---
Outside diff comments:
In `@docs/workers/iii-cron.mdx`:
- Around line 76-89: Update the ResponseField named "expression" documentation
to clarify that the year field is optional and that both 6-field and 7-field
cron expressions are supported: state explicitly that valid formats are either
"second minute hour day month weekday" (6-field) or "second minute hour day
month weekday year" (7-field), and add a brief note near the existing cron
diagram and the second occurrence of the cron example to show the 6-field form
and mention the optional year field. Ensure the text references the
ResponseField "expression" examples so developers know they can omit the year.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: dfd9ec8b-413c-45e5-ac6a-3437aba9deb3
📒 Files selected for processing (16)
docs/advanced/protocol.mdxdocs/examples/cron.mdxdocs/examples/multi-trigger.mdxdocs/examples/state-management.mdxdocs/how-to/schedule-cron-task.mdxdocs/how-to/trigger-actions.mdxdocs/how-to/use-functions-and-triggers.mdxdocs/how-to/use-iii-in-the-browser.mdxdocs/workers/iii-cron.mdxskills/iii-cron-scheduling/SKILL.mdskills/iii-getting-started/SKILL.mdskills/iii-workflow-orchestration/SKILL.mdskills/references/dead-letter-queues.pyskills/references/functions-and-triggers.pyskills/references/functions-and-triggers.rsskills/references/trigger-conditions.py
✅ Files skipped from review due to trivial changes (7)
- docs/advanced/protocol.mdx
- skills/iii-workflow-orchestration/SKILL.md
- docs/how-to/trigger-actions.mdx
- docs/examples/state-management.mdx
- skills/iii-cron-scheduling/SKILL.md
- skills/iii-getting-started/SKILL.md
- docs/examples/multi-trigger.mdx
🚧 Files skipped from review as they are similar to previous changes (2)
- docs/how-to/use-functions-and-triggers.mdx
- docs/how-to/schedule-cron-task.mdx
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/workers/iii-cron.mdx`:
- Line 83: The weekday range note "Day of week (0–6, Sun=0)" in
docs/workers/iii-cron.mdx conflicts with the "0-7" notation used in
docs/examples/cron.mdx; pick one canonical mapping (e.g., 0-7 with both 0 and 7
as Sunday or 0-6 with 0 as Sunday) and update the text in iii-cron.mdx to match
docs/examples/cron.mdx (search for the string "Day of week" or the exact
fragment "0–6" and replace with the chosen canonical notation), and also update
docs/examples/cron.mdx if you decide the opposite direction so both files show
the same weekday range and mapping.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 2734e185-3b87-4455-a2bb-13e7d0386c5f
📒 Files selected for processing (2)
docs/examples/cron.mdxdocs/workers/iii-cron.mdx
- Replace *Module names with iii-* worker names across 8 SKILL.md files - Rewrite iii-engine-config SKILL.md with v0.11 workers:/name: config format - Fix iii-getting-started port 3000 → 3111 (REST API) and add 3113 (console) - Update references/iii-config.yaml: modules→workers, class→name for all adapters - Add IPv4/IPv6 guidance (use 127.0.0.1 instead of localhost on macOS)
… v0.11 - Standardize cron expressions to 6-field (sec min hour day month weekday) across docs and skills; note 5-field and 7-field also accepted - Fix *Module names in Mermaid diagrams (architecture, iii-stream, todo-app) - Fix host: localhost → 127.0.0.1 in HTTP and stream docs - Fix "Queue module" → "Queue worker" in topic queues doc - Fix ExecModule/StreamModule refs in todo-app example - Fix cron references in skills (cron-scheduling, getting-started, workflow-orchestration) and all reference files (.js, .py, .rs)
… naming - Fix curl example to use 127.0.0.1 matching configured host (expose-http-endpoint) - Fix WebSocket client URL to use 127.0.0.1 (stream-realtime-data) - Fix Rust Logger()) syntax errors to Logger::new() in 3 cron examples - Replace "Queue module" with "Queue worker" across v0.11 docs - Fix state-management skill adapter wording (kv vs redis are separate adapters)
Standardize all cron expressions across docs and skills to 7-field format (sec min hour day month weekday year) matching the Rust cron crate v0.15. The trailing year field uses * for any year. - Update cron format descriptions and ASCII diagrams to show 7 fields - Fix all 5-field and 6-field expressions to 7-field in examples, how-to guides, worker references, and skill reference files - Update common expressions tables in cron docs and skills
- Update cron format description to show year as optional - Add 6-field examples alongside 7-field in expression table - Clarify in iii-cron worker reference that both formats are valid
…kills Replace all occurrences of `npx skills add iii-hq/iii` and `npx skillkit install iii-hq/iii` with the new canonical command `npx skillkit add iii-hq/iii/skills` across skills README, SKILL.md, docs index, and quickstart.
ee286b4 to
b6886ef
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/workers/iii-cron.mdx (1)
132-143:⚠️ Potential issue | 🟡 MinorShow at least one 6-field schedule on this page.
The prose now says 6-field and 7-field expressions are both valid, but every sample trigger and every “Common Cron Expressions” row still uses the 7-field form. Add at least one visible 6-field example here so this worker reference demonstrates both supported arities instead of only describing them.
Based on learnings: In iii-hq/iii, the Rust SDK
CronTriggerConfig::new(...)uses thecroncrate v0.15, which requires a minimum of 6 fields (second minute hour day month weekday) and treats the year field as optional. A 7-field format (second minute hour day month weekday year) is also accepted. Do not require the 7-field format; 6-field expressions are fully valid.Also applies to: 156-160, 170-176
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/workers/iii-cron.mdx` around lines 132 - 143, The page only shows 7-field cron examples even though 6-field (second minute hour day month weekday) is valid; update one or more visible examples to use a 6-field expression (e.g. "0 0 2 * * *") so readers see both arities. Locate usages of iii.register_trigger and any config: { expression: '...' } (and the JS/TS Tab examples that currently use '0 0 2 * * * *') and replace at least one with the 6-field form "0 0 2 * * *"; mirror the same change in the other mentioned blocks (around the referenced ranges 156-160 and 170-176) so documentation shows both 6- and 7-field examples.
♻️ Duplicate comments (1)
docs/workers/iii-cron.mdx (1)
80-83:⚠️ Potential issue | 🟡 MinorStandardize the weekday range with the cron examples page.
This diagram says
0–6, Sun=0, butdocs/examples/cron.mdxnow documents0-7and explicitly treats the final field mapping differently. Please pick one canonical notation across both pages so readers do not infer different parser behavior.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/workers/iii-cron.mdx` around lines 80 - 83, The two cron docs disagree on weekday numbering; update both places so they use the same canonical notation (prefer 0–7 with 0 and 7 both mapping to Sunday). Replace the diagram text "Day of week (0–6, Sun=0)" with "Day of week (0–7, Sun=0 or 7)" in the diagram/label and edit the examples page wording that currently documents "0-7" to explicitly state the same mapping (0 and 7 = Sunday) so both the diagram and the examples page present identical behavior and a short note clarifies the dual-Sunday mapping.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@skills/references/trigger-conditions.py`:
- Line 173: The cron expression under the "expression" key is wrong (currently
"0 8 * * * * *" fires every hour at HH:08); update it to a 6-field expression
that fires once at 08:00 (e.g. "0 0 8 * * *" or the 7-field equivalent "0 0 8 *
* * *"). Locate the "expression" entry in trigger-conditions.py and replace the
string accordingly; ensure this matches the CronTriggerConfig::new(...)
expectations (cron crate v0.15 accepts 6-field expressions: second minute hour
day month weekday).
---
Outside diff comments:
In `@docs/workers/iii-cron.mdx`:
- Around line 132-143: The page only shows 7-field cron examples even though
6-field (second minute hour day month weekday) is valid; update one or more
visible examples to use a 6-field expression (e.g. "0 0 2 * * *") so readers see
both arities. Locate usages of iii.register_trigger and any config: {
expression: '...' } (and the JS/TS Tab examples that currently use '0 0 2 * * *
*') and replace at least one with the 6-field form "0 0 2 * * *"; mirror the
same change in the other mentioned blocks (around the referenced ranges 156-160
and 170-176) so documentation shows both 6- and 7-field examples.
---
Duplicate comments:
In `@docs/workers/iii-cron.mdx`:
- Around line 80-83: The two cron docs disagree on weekday numbering; update
both places so they use the same canonical notation (prefer 0–7 with 0 and 7
both mapping to Sunday). Replace the diagram text "Day of week (0–6, Sun=0)"
with "Day of week (0–7, Sun=0 or 7)" in the diagram/label and edit the examples
page wording that currently documents "0-7" to explicitly state the same mapping
(0 and 7 = Sunday) so both the diagram and the examples page present identical
behavior and a short note clarifies the dual-Sunday mapping.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 4e0a2cce-689d-4a58-afeb-fac22b6aaa48
📒 Files selected for processing (36)
docs/advanced/adapters.mdxdocs/advanced/architecture.mdxdocs/advanced/protocol.mdxdocs/examples/cron.mdxdocs/examples/multi-trigger.mdxdocs/examples/state-management.mdxdocs/examples/todo-app.mdxdocs/how-to/expose-http-endpoint.mdxdocs/how-to/schedule-cron-task.mdxdocs/how-to/stream-realtime-data.mdxdocs/how-to/trigger-actions.mdxdocs/how-to/use-functions-and-triggers.mdxdocs/how-to/use-iii-in-the-browser.mdxdocs/how-to/use-named-queues.mdxdocs/how-to/use-topic-queues.mdxdocs/index.mdxdocs/quickstart.mdxdocs/workers/iii-cron.mdxdocs/workers/iii-queue.mdxdocs/workers/iii-stream.mdxskills/README.mdskills/iii-cron-scheduling/SKILL.mdskills/iii-engine-config/SKILL.mdskills/iii-getting-started/SKILL.mdskills/iii-http-endpoints/SKILL.mdskills/iii-http-middleware/SKILL.mdskills/iii-observability/SKILL.mdskills/iii-realtime-streams/SKILL.mdskills/iii-state-management/SKILL.mdskills/iii-state-reactions/SKILL.mdskills/iii-workflow-orchestration/SKILL.mdskills/references/dead-letter-queues.pyskills/references/functions-and-triggers.pyskills/references/functions-and-triggers.rsskills/references/iii-config.yamlskills/references/trigger-conditions.py
✅ Files skipped from review due to trivial changes (23)
- skills/iii-http-middleware/SKILL.md
- docs/how-to/use-iii-in-the-browser.mdx
- docs/advanced/architecture.mdx
- docs/advanced/protocol.mdx
- skills/references/functions-and-triggers.rs
- skills/iii-workflow-orchestration/SKILL.md
- skills/iii-state-reactions/SKILL.md
- docs/workers/iii-stream.mdx
- docs/how-to/stream-realtime-data.mdx
- docs/advanced/adapters.mdx
- docs/how-to/expose-http-endpoint.mdx
- skills/iii-http-endpoints/SKILL.md
- docs/examples/todo-app.mdx
- skills/iii-realtime-streams/SKILL.md
- skills/iii-observability/SKILL.md
- docs/examples/multi-trigger.mdx
- docs/how-to/use-topic-queues.mdx
- skills/iii-cron-scheduling/SKILL.md
- docs/how-to/trigger-actions.mdx
- docs/how-to/use-named-queues.mdx
- skills/iii-state-management/SKILL.md
- skills/iii-getting-started/SKILL.md
- docs/how-to/schedule-cron-task.mdx
🚧 Files skipped from review as they are similar to previous changes (7)
- docs/workers/iii-queue.mdx
- skills/references/functions-and-triggers.py
- docs/examples/state-management.mdx
- skills/references/dead-letter-queues.py
- docs/how-to/use-functions-and-triggers.mdx
- skills/references/iii-config.yaml
- skills/iii-engine-config/SKILL.md
- Fix trigger-conditions.py: "0 8 * * * * *" (hourly at :08) → "0 0 8 * * * *" (daily at 08:00) - Add 6-field examples to iii-cron.mdx common expressions table - Use 6-field expression in Python cron example tab - Align weekday numbering to "0-7, Sun=0 or 7" in both cron docs
70458c7 to
089a715
Compare
Summary by CodeRabbit