5 Commits

Author SHA1 Message Date
Tomu Hirata cc87a41300 deps(policies): migrate CEL evaluation from cel-expr-python to cel-python (#2970)
* fix(telemetry): track sdk harness name in SessionCreatedEvent

SDK sessions (claude-sdk, openai-agents, codex, etc.) previously emitted
`harness: null` on the SessionCreatedEvent because only native agents have
a `native_agent.harness` attribute. Fall back to `_resolve_harness(conv)`,
which already handles harness_override and spec lookup, so every harness
kind is now represented in telemetry.

Signed-off-by: Tomu Hirata <tomu.hirata@gmail.com>

* deps(policies): migrate CEL evaluation from cel-expr-python to cel-python

cel-expr-python had no wheels for Linux aarch64 or macOS x86_64, requiring
a platform conditional in pyproject.toml and graceful degradation. cel-python
(cloud-custodian/cel-python) is pure Python and ships on all platforms.

- Replace cel-expr-python with cel-python>=0.5 (unconditional dependency)
- Rewrite omnigent/policies/builtins/cel.py to use the celpy API:
  - celpy.Environment() + env.compile() + env.program() for compile phase
  - prog.evaluate({"event": celpy.json_to_cel(event)}) for eval phase
  - CELParseError / CELEvalError for specific exception handling
  - Direct MapType key lookup (key in result / result[key]) rather than
    converting the whole map to strings
- Remove platform restriction notes from deploy READMEs
- Update NOTICE attribution URL

Signed-off-by: Tomu Hirata <tomu.hirata@gmail.com>

* chore: update uv.lock and apply pre-commit fixes for cel-python migration

Signed-off-by: Tomu Hirata <tomu.hirata@gmail.com>

---------

Signed-off-by: Tomu Hirata <tomu.hirata@gmail.com>
2026-07-21 06:25:34 +00:00
Pat Sukprasert de4692d89d chore: expand NOTICE with additional distributed deps
Adds the dependencies missing from the first NOTICE: cel-expr-python
(Apache-2.0), modal (Apache-2.0), daytona (Apache-2.0), opentelemetry-distro
(Apache-2.0), tomlkit (MIT), and psutil (BSD-3) — the three core deps plus
the optional extras now covered.

Co-authored-by: Isaac
2026-06-14 22:21:56 +08:00
Pat Sukprasert 43947270c4 chore: add third-party attribution NOTICE (#44)
Add the NOTICE file attributing the third-party Python dependencies
distributed with the project, grouped by license (Apache-2.0 / MIT /
BSD-3 / ISC / LGPL-3.0). COPY LICENSE + NOTICE into the Docker builder
stage so the published host/runtime images carry the attribution (the
image redistributes the dependency bytes baked in at install time); the
PyPI wheel picks NOTICE up via setuptools' default license-files glob.

Co-authored-by: Isaac
2026-06-14 07:24:06 +00:00
Pat Sukprasert a003b8f169 Remove placeholder CITATION.cff and NOTICE (#13)
CITATION.cff never advanced past unfilled placeholders; NOTICE was a
stale placeholder (Apache-2.0 requires none for first-party code). The
third-party attribution file is tracked separately. Scoped to just these
two removals for launch; other upstream changes sync later.
2026-06-13 13:05:01 +00:00
Dhruv Gupta b3fb64710c Welcome to omnigent
Publish images (public) / build-and-push (push) Has been cancelled
Release omnigent (PyPI) / build-and-publish (push) Has been cancelled
2026-06-13 00:37:34 +00:00