Skip to content

Support Kida 0.12 - #128

Merged
lbliii merged 1 commit into
mainfrom
agent/kida-012-compat
Jul 13, 2026
Merged

lbliii merged 1 commit into
mainfrom
agent/kida-012-compat

Conversation

@lbliii

@lbliii lbliii commented Jul 13, 2026

Copy link
Copy Markdown
Owner

What changed

  • widen Milo's sole runtime dependency from kida-templates>=0.11.0,<0.12.0 to >=0.11.0,<0.13.0
  • resolve the development lock to released Kida 0.12.0
  • record the downstream Chirp compatibility boundary and user-facing changelog entry

Why

Chirp's approved enhancement-metadata compiler requires Kida 0.12, but released Milo 0.4.2 capped Kida below 0.12. That made every Chirp CI dependency solve unsatisfiable even though Milo's public/runtime behavior remains compatible.

Impact

This changes dependency compatibility only. Milo's Python API, CLI, schemas, MCP protocol, rendering contract, runtime code, and sole-dependency posture are unchanged. Kida 0.11 remains supported.

Validation

Python 3.14t with PYTHON_GIL=0, independently against both Kida 0.11.0 and 0.12.0:

  • 1,724 tests passed, 1 skipped
  • branch coverage: 86.39% on 0.11 and 86.37% on 0.12
  • 45 Waypoint tests passed
  • all bundled/example templates compiled
  • 69 tagged docs snippets passed
  • milo verify showcase/waypoint/app.py: 10 passed

Additionally on the locked Kida 0.12 environment: Ruff, format check, and ty completed successfully. Kida 0.12 reports migration advisories for existing Jinja-style template scope assumptions; rendered tests and strict compilation pass, and template migration is intentionally deferred from this compatibility-only change.

Steward Notes

  • Consulted: AGENTS.md, tests/AGENTS.md, docs/AGENTS.md, site/AGENTS.md, and src/milo/templates/AGENTS.md.
  • Accepted: preserve Kida 0.11 support, cap before the next minor Kida line, update the lock/docs/changelog, and prove both range endpoints under free-threading.
  • Deferred: migration-advisory cleanup in existing Milo/example templates; no failing behavior or render drift is present.
  • Risk: dependency resolution only. No concurrency, protocol, schema, startup, or benchmark impact.
  • Collateral: package metadata, lockfile, Chirp adoption contract, and changelog updated. No public docs/tutorial/scaffold/API changes because usage is unchanged.
  • Dissent: none.

Unblocks lbliii/chirp#715.

@github-actions

Copy link
Copy Markdown

Coverage Report

✅ 88.8% overall coverage

File Coverage
src/milo/\_\_init\_\_.py 100.0%
src/milo/\_cells.py 87.2%
src/milo/\_child.py 91.3%
src/milo/\_cli\_help.py 90.1%
src/milo/\_command\_defs.py 98.0%
src/milo/\_compat.py 63.3%
src/milo/\_errors.py 95.4%
src/milo/\_jsonrpc.py 82.6%
src/milo/\_mcp\_router.py 98.0%
src/milo/\_protocols.py 100.0%
src/milo/\_scaffold/\_\_init\_\_.py 100.0%
src/milo/\_types.py 100.0%
src/milo/app.py 58.9%
src/milo/cli.py 87.3%
src/milo/commands.py 90.8%
src/milo/completions.py 96.0%
src/milo/components\_cli.py 88.1%
src/milo/config.py 87.3%
src/milo/context.py 88.3%
src/milo/dev.py 91.9%
src/milo/doctor.py 89.9%
src/milo/flow.py 96.5%
src/milo/form.py 91.7%
src/milo/gateway.py 78.0%
src/milo/groups.py 93.5%
src/milo/help.py 100.0%
src/milo/input/\_\_init\_\_.py 100.0%
src/milo/input/\_platform.py 77.8%
src/milo/input/\_reader.py 96.2%
src/milo/input/\_sequences.py 100.0%
src/milo/live.py 0.0%
src/milo/llms.py 84.4%
src/milo/mcp.py 89.6%
src/milo/mcp\_apps.py 100.0%
src/milo/middleware.py 100.0%
src/milo/observability.py 100.0%
src/milo/output.py 90.5%
src/milo/pipeline.py 90.1%
src/milo/plugins.py 100.0%
src/milo/reducers.py 100.0%
src/milo/registry.py 89.1%
src/milo/schema.py 90.9%
src/milo/state.py 92.5%
src/milo/streaming.py 100.0%
src/milo/templates/\_\_init\_\_.py 100.0%
src/milo/testing/\_\_init\_\_.py 100.0%
src/milo/testing/\_mcp.py 100.0%
src/milo/testing/\_record.py 86.7%
src/milo/testing/\_replay.py 87.1%
src/milo/testing/\_snapshot.py 90.4%
src/milo/theme.py 100.0%
src/milo/verify.py 85.3%
src/milo/version\_check.py 60.6%

@lbliii
lbliii marked this pull request as ready for review July 13, 2026 17:36
Copilot AI review requested due to automatic review settings July 13, 2026 17:36
@lbliii
lbliii merged commit e0da4b5 into main Jul 13, 2026
8 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@lbliii
lbliii deleted the agent/kida-012-compat branch July 13, 2026 17:36
@lbliii lbliii mentioned this pull request Jul 13, 2026
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.

2 participants