feat(registry): new registry protocol and 1.0.1 release - #72
Merged
Conversation
Point the agentic-mesh-protocol submodule at the merged registry rework and bring the repository back in line with the protocol it now generates. Protocol: - submodule moves to the registry rework merged upstream, replacing module_registry/task_manager/pagination with registry/v1 Generation pipeline: - the removed services had left orphaned Python packages behind: buf only ever writes files and never deletes output for protos that disappear, so the stale packages survived in gen/python and were copied back into src/ on every run. proto:generate now wipes gen/python first - proto:copy gains preconditions, since rsync --delete would otherwise wipe src/ if a generation produced nothing - proto:clean stops hardcoding a service list that had already gone stale Configuration: - .gitignore drops the src/digitalkin_proto/* paths left over from the package rename; the *_pb2* globs already cover the generated tree - pyproject points pytest and ruff at test/ instead of the nonexistent tests/, which made pytest fall back to a recursive scan - .bumpversion.toml settings move into [tool.bumpversion], where they were always meant to be read from - CLAUDE.md is rewritten to describe agentic_mesh_protocol as it is today Dependencies: - every dev dependency had been locked at its declared floor, and the pre-commit hooks had drifted far behind the dev group: pre-commit linted with ruff 0.9.9 while task lint used 0.15.22 - runtime: grpcio/grpcio-tools 1.83.1, protobuf 7.36.0, googleapis-common-protos 1.75.2, bump-my-version 1.5.1 - dev: build 1.6.0, mypy 2.3.1, pre-commit 4.6.2, ruff 0.16.5 - hooks: pre-commit-hooks v6.0.0, ruff-check v0.16.5, mirrors-mypy v2.3.1 - protovalidate is held at 1.2.0 and twine at 6.2.0; both have a new major available, and protovalidate is a published runtime dependency, so moving it forces every consumer to follow Release 1.0.1.
thibaud-perrin
approved these changes
Aug 28, 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.
Points the
agentic-mesh-protocolsubmodule at the merged registry rework and brings the repository back in line with the protocol it now generates.Protocol
The submodule moves to the registry rework merged upstream, which replaces
module_registry,task_managerandpaginationwithregistry/v1.Generation pipeline
Those removed services had left orphaned Python packages behind. buf only ever writes files — it never deletes output for protos that disappear upstream — so the stale packages survived in
agentic-mesh-protocol/gen/python/and were copied back intosrc/on every generation. They had been there since May.proto:generatenow wipesgen/pythonbefore running buf, so a service deleted upstream can no longer leave an orphaned package behindproto:copygains preconditions:rsync --deletewould otherwise wipesrc/if a generation produced nothingproto:cleanstops hardcoding a service list that had already gone stale (it listedmodule_registry, and missedgateway,registryandpagination)Configuration
.gitignoredrops thesrc/digitalkin_proto/*paths left over from the package rename; the*_pb2*globs already cover the generated treepyproject.tomlpoints pytesttestpathsand ruffsrcattest/instead of the nonexistenttests/, which made pytest warn and fall back to a recursive scan.bumpversion.tomlsettings move into[tool.bumpversion]; they had been indented inside a[[tool.bumpversion.files]]table, so bump-my-version never read them as global optionsCLAUDE.mdis rewritten to describeagentic_mesh_protocolas it is todayDependencies
Every dev dependency was locked exactly at its declared floor, so the lockfile had never been refreshed. The pre-commit hooks had drifted far behind the dev group — pre-commit linted with ruff 0.9.9 while
task lintused 0.15.22, six minor versions apart, so code could pass one and fail the other.protovalidateis held at 1.2.0 andtwineat 6.2.0. Both are the last release in their current major line, so the only way forward is the major bump — andprotovalidateis a published runtime dependency, so moving it forces every consumer to follow. Worth deciding separately.Release
Version 1.0.1 across
pyproject.toml,.bumpversion.toml,__version__.pyanduv.lock.Verification
task genruns clean end to end; the generated packages now match the proto tree exactly, with no orphanspytestpasses against protobuf 7.36.0 and grpcio 1.83.1 — the existing gencode is compatibleNote for reviewers
Do not run
task --force gen.--forceoverrides thestatus:guard oninit, which then runsgit submodule update --init --recursive, silently resetting the submodule to the committed pointer and regenerating from the wrong protos. Plaintask genis safe.Related
Closes #64 (dependabot lockfile bump, entirely superseded) and #65 (validation-proto, already in the project) — both closed with reasons during this work.