Skip to content

Add example notes_on provider#15

Merged
levonkorganyan merged 1 commit into
mainfrom
codex/notes-provider
Jun 15, 2026
Merged

Add example notes_on provider#15
levonkorganyan merged 1 commit into
mainfrom
codex/notes-provider

Conversation

@fivetran-davefowler

@fivetran-davefowler fivetran-davefowler commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds notes_on, an optional Agents Schema provider under examples/providers/notes_on for teams that want a durable note layer on warehouse schemas, tables, and columns. It is useful as-is for agents, catalogs, review workflows, or analytics tooling that need object-scoped notes.

This is not a built-in/core provider and does not require everyone adopting Agents Schema to adopt this note shape. It does not change the core agents-schema CLI, core ROOT_ENTRIES, reusable workflows, package metadata, or the official SPEC.md.

The provider publishes durable object-scoped notes using provider-prefixed tables:

  • AGENTS.NOTES_ON_SCHEMATA
  • AGENTS.NOTES_ON_TABLES
  • AGENTS.NOTES_ON_COLUMNS

It also upserts provider-authored AGENTS.ROOT rows at runtime. Those rows are deployment/provider metadata, not new core registry entries.

Implementation

The package includes:

  • a standalone agents-schema-notes-on CLI
  • YAML source parsing and validation
  • Snowflake publishing for the three NOTES_ON_* tables
  • provider-owned AGENTS.ROOT upsert behavior
  • sample YAML input
  • standalone SQL snippets for tables, root rows, and context aggregations
  • unit tests for parsing, validation, SQL binding, credentials, CLI errors, and publish flow

Positioning

This reframes the old memory idea as an optional provider rather than a core Agents Schema feature. The shape is intentionally narrow: physical schema/table/column notes, no agent memory state, no write-back semantics, no polymorphic anchors, and no requirement that other providers or consumers adopt these opinions.

The useful distinction from database comments is still preserved: multiple authors, provenance, tags, confidence, importance, and history without overwriting a single canonical object comment.

Context view compatibility

The provider id is notes_on, so the table names line up with the context-view naming scheme from #12. Since the source tables are one row per note, any AGENTS.SCHEMATA/TABLES/COLUMNS enrichment should aggregate to object grain before joining. The example uses a notes_on_notes VARIANT array rather than concatenated text so note boundaries and provenance are preserved.

Verification

uv run python -m unittest discover -s tests
Ran 7 tests
OK

PYTHONPATH=examples/providers/notes_on/src uv run python -m unittest discover -s examples/providers/notes_on/tests
Ran 8 tests
OK

uv run python -m compileall -q src examples/providers/notes_on/src
git diff --check
clean

@fivetran-davefowler fivetran-davefowler force-pushed the codex/notes-provider branch 3 times, most recently from ea68c05 to 5c5600f Compare June 5, 2026 17:04
@fivetran-davefowler fivetran-davefowler changed the title Add object notes provider Add suggested notes_on provider proposal Jun 5, 2026
@fivetran-davefowler fivetran-davefowler changed the title Add suggested notes_on provider proposal Add example notes_on provider Jun 5, 2026
@fivetran-davefowler fivetran-davefowler force-pushed the codex/notes-provider branch 2 times, most recently from 6722c08 to cece88a Compare June 5, 2026 17:56
@levonkorganyan levonkorganyan merged commit 10899fa into main Jun 15, 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