Skip to content

refactor(kernel-utils): rename describe() to __getDescription__() d…#869

Merged
grypez merged 3 commits intomainfrom
grypez/schema-dunder
Mar 10, 2026
Merged

refactor(kernel-utils): rename describe() to __getDescription__() d…#869
grypez merged 3 commits intomainfrom
grypez/schema-dunder

Conversation

@grypez
Copy link
Contributor

@grypez grypez commented Mar 4, 2026

Aligns discoverable exo introspection with the existing dunder convention (__getInterfaceGuard__, __getMethodNames__) established by @endo/exo. Changes the conventional invocation for (alleged) object semantics to the GET_DESCRIPTION symbol, with E(obj)[GET_DESCRIPTION]() defaulting to E(obj).__getDescription__() in alignment with existing exo and captp conventions.


Note

Medium Risk
This is an API-breaking rename of the discoverable introspection method, which can break any callers still using describe() and affects capability discovery at runtime. Scope is small and localized, but touches cross-package exo discovery behavior.

Overview
Updates discoverable exo introspection to use a dunder method: makeDiscoverableExo now exposes schema via exo[GET_DESCRIPTION]() (where GET_DESCRIPTION is __getDescription__) instead of exo.describe().

Kernel agents’ capability discovery is updated to call E(exo)[GET_DESCRIPTION]() and kernel-utils tests/exports are adjusted accordingly, including the reserved-name collision check and error message to match the new method name.

Written by Cursor Bugbot for commit 7fe44c5. This will update automatically on new commits. Configure here.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 4, 2026

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 76.1%
⬆️ +0.01%
6633 / 8716
🔵 Statements 75.99%
⬆️ +0.01%
6739 / 8868
🔵 Functions 73.95%
🟰 ±0%
1653 / 2235
🔵 Branches 75.35%
🟰 ±0%
2468 / 3275
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
packages/kernel-agents/src/capabilities/discover.ts 10%
🟰 ±0%
100%
🟰 ±0%
0%
🟰 ±0%
11.11%
🟰 ±0%
18-52
packages/kernel-utils/src/discoverable.ts 100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
packages/kernel-utils/src/index.ts 100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
Generated in workflow #3903 for commit 7fe44c5 by the Vitest Coverage Report Action

…()\` dunder

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@grypez grypez force-pushed the grypez/schema-dunder branch from 4184513 to 03f6113 Compare March 9, 2026 19:07
@grypez grypez changed the base branch from grypez/exo-genesis to main March 9, 2026 19:15
@grypez grypez marked this pull request as ready for review March 9, 2026 19:16
@grypez grypez requested a review from a team as a code owner March 9, 2026 19:16
@grypez grypez enabled auto-merge March 9, 2026 20:21
rekmarks
rekmarks previously approved these changes Mar 9, 2026
Copy link
Member

@rekmarks rekmarks left a comment

Choose a reason for hiding this comment

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

__approved__

@grypez grypez changed the title refactor(kernel-exo): rename describe() to __getDescription__() d… refactor(kernel-utils): rename describe() to __getDescription__() d… Mar 10, 2026
@grypez grypez added this pull request to the merge queue Mar 10, 2026
Merged via the queue into main with commit d415734 Mar 10, 2026
29 checks passed
@grypez grypez deleted the grypez/schema-dunder branch March 10, 2026 16:59
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.

3 participants