modernize(runtime): align BBPD with current StarIntel identity and wire contracts #1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "modernize/starintel-runtime-adapter"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
BBPD stays BBPD. This PR modernizes the runtime/integration layer around the existing Pykka tool actors without rewriting any domain logic and without porting anything to StarLang.
Architecture before / after
Migration matrix (derived and cross-checked in Prolog; 10 components)
Auto-research used
star://authority/resource-kind/pathidentity; legacy tuple is compat-input-only; RabbitMQ owns durable dataflow.star://bbpd.starintel.actor/actor/nmap); manifest identity vs transport endpoints.program-id+run-id+tool+target,star.bbp.*terminal codes), runtime journal/reconnect.target-dispatch.lisp:69-98(canonical dispatch key + compat),event-actor.lisp:24-131(actorevent contract, lenient defaults),rabbit.lisp(ingest keys); starintel-doc980f7a2== master tip (pin is current).starintel-auto-research, branchresearch/star-bbpd-runtime-modernization, pushed to forgejo+github) records the reconciliation and this matrix.Compatibility decisions
target_key(legacy) stays bound;target_dispatch_key(canonical) is optional TOML — old configs keep working unchanged.dtype/generationthe server previously defaulted — no schema change, no behavior change server-side.star://domain:address:actor-nameparse exists only behind an explicitparse_legacy_star_uriAPI and is never emitted.Tests performed
rabbitmq:3-alpine)ruff check bbp testsclean;python -m compileallcleanservice-readywithdtype: actoreventand manifestsubfinder@star://bbpd.smoke.actor/actor/subfinderon the wiree3d5646Remaining legacy components
starintel-docgit pin (currently the upstream tip; bump with the next schema release)StarLang migration points
Marked
TODO(starlang-migration)inbbp/star_uri.py,bbp/tool_actor.py,bbp/document_boundary.py,bbp/dns_resolver.py,bbp/publisher_pool.py,bbp/main.py; the README "Future StarLang migration" section lists each seam, its replacement, and the research artifact that must stabilize first. BBPD is not ported to StarLang.