Repository navigation
#57 docs: a dispatch-essence change is notice, not coordination - #60
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e to it is notice Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #57 (the Watcher notice below is still to post, with approval).
Plan: docs/plans/2026-10-21-57-dispatch-essence-notice.md.
What changes
resolve_dispatch_essenceat all four rule sites:AGENTS.md(the contract list only),docs/DEPLOYMENT.md"Bumping co-core" step 4, spec D5, and spec §5's bump list. The contract is now thecontent.process/content.derivedmodels andcanonical_textsemantics.processor_versionmove;EXTRACTOR_BY_ESSENCE.The guard test (
tests/test_pin.py)test_processor_never_resolves_a_dispatch_essencewalks everysrc/processor/**/*.pyAST. It fails on an import of, or aName/Attributeuse of,resolve_dispatch_essenceorextension_media_type, and its message points back to §5. It checks code, not text, so a docstring may quote them.test_the_guard_catches_code_not_textholds the walker to that: it catches four code forms and passes a docstring, a comment andextractor_for_essence.Red, on a scratch copy of
src/+tests/withfrom co_core.pure.extract import resolve_dispatch_essenceplanted inprocessors/extract.py:Green here:
tests/test_pin.py19 passed; the full suite 696 passed, 14 skipped (environmental: no.envin the worktree,/etc/processorunreadable as exedev); ruff clean.Premise checked on co-core 0.38.0:
extractor_for_essenceandextraction_overrides_for_essence, which Processor does call, don't call either resolver.Known limit: a string-keyed lookup (
getattr(m, "resolve_dispatch_essence")) isn't caught. That would be deliberate evasion, not drift.No deploy: nothing under
src/,deploy/,scripts/deploy.sh,pyproject.tomloruv.lockchanges.Draft: the Watcher notice (CannObserv/watcher#368, after the merge, needs approval)
🤖 Generated with Claude Code