Repository navigation
Releases: kieransimkin/potbot
Release list
v0.5.0.dev12: Prepare Potbot 0.5.0.dev12 source preview (#45)
Source preview 0.5.0.dev12 includes the verified default-branch changes after dev11.
The exact release candidate passed the full source, roadmap, native, PostgreSQL, browser and sandbox CI checks. The package and runtime version identities agree. Published package evidence and native acceptance remain scoped to the tested hosts and integrations.
Potbot 0.5.0.dev9
What's Changed
- Start U00 source reconciliation and repair baseline validation contracts by @kieransimkin in #14
- Harden Windows temp and line-ending reproducibility by @kieransimkin in #15
- Preserve Potbot Unix socket path budget by @kieransimkin in #16
Full Changelog: v0.5.0.dev8...v0.5.0.dev9
Potbot 0.5.0.dev11: native Syn Cog admission and heartbeats
Potbot 0.5.0.dev11 adds the SYN-R05 native identity and Cog admission integration.
- Sandboxed Cog dispatch requires a genuine released Syn node and a short-lived, one-use grant bound to the current task, input, installed operation and live node session.
- Typed heartbeats use canonical Syn encrypted pub-sub. The upstream runtime owns custody, encryption, signatures and replay checks; Potbot handles verified installation and supervised public interfaces.
- Existing PostgreSQL execution telemetry retains the exact Syn release and selected-node pins. Missing, changed or lost native state fences work. Legacy in-process actors require an explicit development fixture.
Official Syn 0.4.0 installation/native-adapter acceptance passed Python 3.12 and 3.13 in run 41526414147. Both jobs used real installed signed packages and the full deployment registry, verified signed native heartbeat reception, rejected invalid grants and fenced nodes/monitors on relay loss. The fixtures explicitly dispatched no positive Cog process: qualified images, cgroup/syscall/TASKSTATS accounting, task/budget/lease admission and U16 host acceptance remain mandatory. This is a source preview, not general production rollout.
Source: 8df3e9a15ee1a7413379ff8868f38ae78e22f853, merged by PR 23. All required checks passed on that exact source. Its tree matches the reviewed consumer 2d30849f3f13fee295e7a065b4be83c9965d07a3 used by official upstream acceptance.
Paired runtime: signed immutable Syn 0.4.0, source 6205baf95b87193133d45c749a0fe5d5b577581f, manifest SHA-256 a406356fba844a28c04870e45299ccd83e406b5dbe8b7a55741db6d5a6cd1088. Select the independent upstream release pins.
The established publication workflow builds and verifies the wheel/source archive, then attaches those bytes, a source manifest and checksums without replacing existing assets. Registry publication follows existing configured-publisher settings. See the maintained Cog admission guide for current qualification and limits. SYN-R06 owns upgrades/recovery; existing installation identities remain under their selected policy.
Potbot 0.5.0.dev10 — native Syn Agent deployment
Potbot 0.5.0.dev10 completes the SYN-R04 consumer milestone: one genuine upstream Syn process per Agent, a separate native OS account and encrypted keystore, retained selected identity, and independently verified readiness. Potbot owns installation, sandbox resources and process lifetime; canonical Syn owns identity, adoption, group custody and signing.
Use the official signed Syn 0.3.1 release or a later qualified release with independent source, manifest and authority pins. The complete installer/controller path passed official deployment qualification on Python 3.12 and 3.13: one operator plus two simultaneous Agents, distinct host UIDs and account keys, matching current-group commitment, node and full-keystore-session restarts, outside-process isolation, and locked-store fencing.
A root-owned read-only execution view admits only inventory-verified public runtime bytes while the original installer store stays sealed. Changed or partial views refuse launch. Private temporary storage preserves the permissions required for native credential IPC. Source-preview packaging explicitly excludes private/generated storage, rejects duplicate wheel entries and verifies every shipped Agent-home template file against its source. No rejected local candidate archive was published.
This is the Linux x86-64/WSL Agent profile and remains a development source preview. SYN-R05 still owns Cog admission and the supported Syn messaging integration; group rotation, recovery, upgrades and removal of transitional code retain their later milestones. Provisioning never authorizes Cog execution or replaces an existing identity. Persistent user-host admission and private keystore unlock remain separate from disposable qualification.
Agent deployment guide · Upstream architecture, release pins and measured qualification
Syn source: bb5f458fab11de6de408d19f53cc21524a1f7735
Syn manifest SHA-256: 10da08e7b0af7d32c48a3087e873c2e448e846e2e3aac6ad56df81330267b4f1
Syn authority SHA-256: a47f15e010613c0a839a48f2035b8f71d6f9e46ee3df07ed58487079d56ae216
Potbot source: 2570d4fa2c736f8fd87576138a9ec4cb21ca8c35. The merged tree exactly matches fully tested head d67a0e740b62df5c557ab5ccd569573e1a4e0e3a; all 34 checks passed with one completed conditional skip and no pending/failing jobs. Final full verification and reviewed merge. The configured release workflow builds and clean-installs the exact tagged source before uploading its four declared assets without replacement. Registry publication follows the repository's existing configuration.
Potbot 0.5.0.dev8 - resumable artifact upload Cogs
This preview continues T01.3/G10 with five installed SYN Cogs: open an upload, retain a checked chunk, inspect bounded missing-slot pages, commit the complete verified source, and abort unfinished upload access. The optional 31-Cog profile preserves all prior identities and uses the existing inherited Embers, independent host admission, artifact store and work ledger.
Uploads pin workspace, owner, policy, length, whole SHA-256 and original expiry. Fixed chunks are at most 8 KiB; status pages contain at most 128 offsets. Migration 23 adds append-only sessions, slots and terminal receipts. Transaction advisory locks preserve SELECT/INSERT-only table permissions and serialize competing terminal decisions. Streaming assembly verifies whole bytes and checks expiry, monotonic deadlines and host admission before publication. Existing content-addressed bytes can deduplicate; only the terminal receipt declares this upload committed.
All eight exact-head push/PR checks passed before merge. The genuine PostgreSQL fixture resumes after controller/service recreation in one process, handles reversed/duplicate delivery, verifies identical concurrent commits, reconstructs the complete artifact through independent range Cogs, and tests 22 negative cases plus empty files and paged status. Actual start/progress/completed/failed/indeterminate observations are read through REST/WebSocket. Source-bound acceptance and clean-wheel profile smoke are required in CI.
The existing conservative write fence remains: a post-dispatch write failure is indeterminate until an admitted replacement controller inspects durable state. Abort retains staged bytes and cannot delete committed content. Source size is capped at 64 MiB or the backend's smaller configured limit; logical bounds do not measure physical disk traffic or peak process memory.
Qualification is local POSIX resumable upload/range reads and controller-instance recreation. Actual network failures, OS-process crashes/power loss, physical retention/GC, tenant-wide quotas, other backends, universal producer adoption and real devices remain separately tracked. T01.3/G10 stays in progress. PyPI publishing remains disabled; no installed runtime or native custody is changed.
The workflow builds exact-tag wheel/source distributions, checks a clean installation and publishes immutable assets, SHA256SUMS and the source manifest. See the upload Cog guide for contracts, demonstration and limits.
Potbot 0.5.0.dev7 - bounded artifact read Cogs
This source preview continues T01.3/G10 with three installed SYN Cogs: open an expiring artifact read lease, read an integrity-checked byte range, and close the lease while retaining the artifact. The optional 26-Cog profile preserves all prior profile identities and uses the existing inherited Embers, independent admission checks, artifact store and execution ledger.
Each admitted call records start, actual progress and completion/failure statistics. Reads return at most 8 KiB of raw data within the unchanged 16 KiB encoded-work limit. The local POSIX backend verifies the whole source using requests of at most 64 KiB; the controller checks lease expiry/revocation and host admission again after I/O. Migration 22 adds scoped, append-only leases/revocations without changing historical migrations.
All eight push/PR checks passed on the released feature tree. The real PostgreSQL fixture reconstructs the exact binary source after controller/service instance recreation within one test process, with reverse-order and duplicate delivery, eleven rejection cases, and REST/WebSocket monitoring. Retained source-bound evidence and a browser reconstruction viewer accompany the implementation.
Qualification is bounded reads on the existing local POSIX backend. Request sizes and logical verification counts do not measure physical disk traffic or peak process memory. Other backends, network transports, process crash recovery, resumable uploads and physical retention/GC remain separately unqualified. T01.3 remains in progress.
The release workflow builds an exact-tag wheel and source archive, checks a clean installation, and publishes checksums plus the source manifest. PyPI publishing remains disabled until its configured publisher is enabled; this preview does not change native custody or an installed runtime.
Implementation and limits: artifact-range Cog guide.
0.5.0.dev6 — signed work provenance and reliable Windows temp storage
Potbot 0.5.0.dev6 adds the T01.3 core provenance profile: seventeen registered SYN work Cogs plus seal/replay Cogs, seven canonical wire schemas and immutable policy/input/causal bindings on the existing work ledger. Every admitted operation retains start, actual progress and completion statistics. Historical signed receipt inspection never dispatches the original handlers.
Windows scratch storage now inherits the selected parent ACL, preflights actual file access, routes subprocess temp variables, uses compact unpredictable names and performs bounded cleanup. Atomic destination-local writes retry only real name collisions; denied private recovery storage fails before disposable database creation. Pytest, build/check scripts, workers, benchmarks, public broker-policy staging and native launchers use the maintained policy. Native vault ACLs remain private.
Validation includes mandatory native Windows/Linux checks, real PostgreSQL roles/artifacts/REST/WebSocket readback, actual Python CLI/MCP subprocesses, synthetic-key Ed25519 sealing and replay, plus native launcher and cross-file-type Windows regressions. Local Windows validation: 161 applicable cases plus a separate 20-case restricted-token temp run; 197-module type check passes. CI and release manifests retain exact-source evidence.
This is a source preview. T01.3 remains in progress for universal producer adoption, general artifact range streaming, exporter-failure/overhead qualification and independent remote hardware validation. Other work-kind handlers in the fixture are scripted. A single cProfile comparison is not a stable overhead benchmark. Unmeasured target resources and costs remain unavailable. Existing installed runtime, vault, model cache and live device state are untouched. PyPI is not configured for this repository.
0.5.0.dev5 — canonical semantic tool contracts
Canonical semantic tool contracts for T01.2
- Six versioned canonical records distinguish discovery, capability, implementation, workspace installation, invocation and reported evidence.
- Three installed controller-admitted SYN Cogs demonstrate search, canonical contract round-trips and source-preserving decimal ms/s conversion.
- Inherited required/default/optional properties use the existing SYN Ember resolver and durable owner/public storage.
- Schema changes are conservatively checked; active pins, source spans, declared rounding losses, exact handler bindings and explicit unsupported/unqualified target states remain visible.
- Every operation records actual start, progress and completion statistics through the existing artifact/execution services, with unavailable resource/cost measurements explicit.
- Includes real PostgreSQL/SYN/Ember/REST/WebSocket acceptance, source-commit gates and an actual labelled fixture recording.
This is a development source preview. Signed provenance, live discovery and additional phone/device/profiler/language qualification retain their independent stage gates. PyPI remains disabled/unpublished; the release workflow verifies and attaches the wheel, source distribution, manifest and checksums.
Potbot 0.5.0.dev4 — monitored SYN source inventory
Potbot 0.5.0.dev4 implements T01.1, the source-inventory stage of the tool implementation plan, as a monitored SYN Cog.
The installed syn://cog/potbot-tool-inventory-v1 reads an authenticated immutable repository state, maps captured Python modules to 16 existing integration owners and roadmap stages, and retains commit/tree/content/lock identities and file hashes. Inspected source is parsed as data and never imported or executed.
Existing MCP, CLI and API adapter source remains distinct from installation, agent callability and host qualification. Named specialist routes remain unqualified. Core inventory works without optional Apple/hardware hosts; missing mandatory source, unsupported enabled profiles, unowned modules, drift, version disagreement and unauthorized/direct dispatch fail closed.
Start, actual component progress and completion records use the existing execution ledger, artifacts, Cog receipts and REST/WebSocket replay. Wall/controller CPU intervals are measured; unobserved target/resource/cost values remain unavailable. Existing debugger catalog identities are preserved.
Includes the real Git/PostgreSQL/SYN/API acceptance, mandatory exact-source T01.1 gate, source guide, actual baseline output replay and clean-wheel smoke for both installed Cog profiles. T01.2 is the next foundation stage; other tool-plan statuses and dependencies are preserved. This is a source preview, with no new transport/device deployment or PyPI publication claimed.
Potbot 0.5.0.dev3 — Python-first SYN debugger Cogs
Potbot 0.5.0.dev3 adds 21 installed language-neutral SYN debugger Cogs, tested first with Python 3.12 and pinned debugpy 1.8.22.
- Verified breakpoints, step over/into/out, stack/scopes/local inspection, stale-frame rejection, normal exit and exception inspection through typed Cogs. A separate owned-process test verifies attach/detach preserves the target.
- Start, progress and completion statistics persist through the existing SYN execution ledger and artifact service, including hashed typed inputs/results and Cog receipts. Migration 20 adds bounded telemetry to existing REST/WebSocket history. Unmeasured target/resource/cost values are explicitly unavailable.
- Controller admission, immutable bindings/source inventories, stop-scoped references and failure reconciliation guard effects. Python adapter IPC uses an explicit private-loopback namespace profile; default socket denial and host/network/filesystem boundaries remain enforced.
- Guide, actual stack/statistics captures, recorded output replay, authored-fixture acceptance tests and exact-tag distribution checks are included.
Validation: 1,843 general tests, 261 PostgreSQL tests and 76 sandbox tests pass, alongside native Linux/Windows identity and Windows launcher checks. The durable confined Python walkthrough and exception case retain 94 successful Cog results and their work histories; deliberate expired-frame rejection remains an expected failed run in each case.
This is a source preview. Python is the first backend; other languages, remote/hardware protocols, phone control, profiling and full tool-programme qualification remain separate work. Local attach tests use owned trusted fixtures. Production untrusted execution requires the qualified Linux supervisor; there is no unrestricted fallback.
The automated release builds and checks a clean wheel install, then attaches wheel, source distribution, release manifest and SHA-256 sums without replacing existing assets. No PyPI destination is enabled and no PyPI publication is claimed.