From 2e244255e04b6b251b848f992ef43cfe0192658e Mon Sep 17 00:00:00 2001 From: Tristan Simas Date: Fri, 30 Oct 2026 07:50:54 -0400 Subject: [PATCH] Declare formbridge as a stack source on main The stack owns source selection for Toad's transitive requirements, but formbridge, a Toad dependency from our own repository, was left to a lock pin from 2026-10-16 (ebe2fa91). Toad main now imports formbridge.forms.declared_fields (added 10-28, 0e04650b), so any resolver that keeps lock pins (the checker stack's non-upgrading lock in the #3566 carrier) installs a Toad newer than its formbridge and debt-tools dies on ModuleNotFoundError through tools/cutover/carry_toad_key_mode.py:15. Declaring it beside ui-theme makes it a local main-branch package, so IntegrationInput.source_urls materializes formbridge main with Toad main. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01XbFMSoWgC3ZwKzjT4SwMDu --- stack/pyproject.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stack/pyproject.toml b/stack/pyproject.toml index e9e240bd86..4c026b5814 100644 --- a/stack/pyproject.toml +++ b/stack/pyproject.toml @@ -14,6 +14,7 @@ package = false # This stack owns source selection, including Toad's transitive requirements. override-dependencies = [ "agent-comms", + "formbridge", "metaclass-registry", "textual[syntax]", "ui-theme", @@ -21,6 +22,7 @@ override-dependencies = [ [tool.uv.sources] agent-comms = { path = "..", editable = true } +formbridge = { git = "https://github.com/OpenHCSDev/formbridge.git", branch = "main" } metaclass-registry = { git = "https://github.com/OpenHCSDev/metaclass-registry", branch = "main" } batrachian-toad = { git = "https://github.com/OpenHCSDev/toad.git", branch = "main" } textual = { git = "https://github.com/OpenHCSDev/textual.git", branch = "main" }