Skip to content

Releases: robworks-code/sharding

v0.0.9

Choose a tag to compare

@ringo380 ringo380 released this 05 Aug 03:23
v0.0.9
a622a68

Relicenses sharding under the MIT License.

  • Previously source-available under the Business Source License 1.1, with production use granted to individuals and organizational adoption requiring a commercial license. That distinction is gone: MIT permits any use, personal or commercial, individual or organizational, with no headcount limit and nothing to ask permission for.
  • The 2030-07-19 change date and the commercial licensing contact are removed.
  • The bundled yaml (ISC) attribution in NOTICE is unchanged.

No functional changes - the engine, plugin commands, and surface adapters are identical to v0.0.8.

v0.0.8

Choose a tag to compare

@ringo380 ringo380 released this 31 Jul 03:44
56de5b1

Ships the orchestrator's Claude Code session preset and the sandbox that now travels with it.

  • orchestrate --session-preset claude drives a real headless session per shard. The prompt is generated from each shard's charter, manifest entry and adapter surface paths, and delivered on stdin.
  • session-preview prints the exact invocation and its enforcement status without spawning anything.
  • --halt-on-wave-failure stops after a wave that left a shard unclean and names the shards it skipped.
  • Dispatched sessions carry their own sandbox via --plugin-dir, so shard isolation no longer depends on the plugin being installed where the engine runs. The orchestrator refuses to dispatch when it cannot load one.

v0.0.7

Choose a tag to compare

@ringo380 ringo380 released this 21 Jul 23:11
df81f81

Improves /sharding:feedback.

  • Optional email and context, offered up front. The command now states plainly what it attaches automatically - plugin version, OS, and a UTC timestamp, nothing else - then offers to add your email (for a reply and a tracking link) and a one-line note. Both optional; anonymous is the default.
  • Cleaner anonymous path. An anonymous ticket gets a simple thank-you, with no link and no false promise that it can be tracked. When you add an email, the success message links to the support-portal ticket you can sign in to view.

Pairs with a server-side fix so the returned link is the branded support portal (reachable by the submitter) rather than the admin dashboard.

87 tests.

v0.0.6

Choose a tag to compare

@ringo380 ringo380 released this 21 Jul 22:53
b7bd38c

Adds a /sharding:feedback command.

Turn a note about the plugin - a bug, an idea, or a drift-check that behaved wrong - into a real ticket in the maintainer's support queue (support.robworks.info) without leaving the session. It gathers only lightweight context (plugin version, OS, timestamp, an optional one-line session summary), prints the exact JSON payload, and asks for confirmation before anything leaves the machine. Anonymous by default; an email is included only if you ask to be reachable for a reply.

The intake is a public, unauthenticated endpoint gated server-side by rate-limiting, a honeypot, and a source allow-list - so no secret ships in the command.

87 tests.

v0.0.5

Choose a tag to compare

@ringo380 ringo380 released this 20 Jul 00:36
cb21787

Read-only commands are now position-independent.

check, status and phase-check resolved conductor state relative to the working directory, so they only worked from the conductor root - from inside a shard they threw no manifest at shards/<name>/.sharding/manifest.yaml instead of returning the CLI's JSON contract. They now find the workspace from wherever the session is.

  • Inside a shard, the shard boundary takes precedence over the ancestor search, so a shard holding its own .sharding/ cannot redefine which graph it is measured against.
  • check with no argument checks the shard the session is inside; an explicit name still wins over it.
  • Outside a shard with no name, check reports checked: false with a reason rather than throwing.
  • /shard-ack no longer has to warn shard sessions away from /shard-check - a shard can confirm it is structurally clean before acknowledging.

This changes where a command may run, not what a shard may do: these paths are read-only, and writes remain governed by the isolation hook.

87 tests (was 75).

v0.0.4

Choose a tag to compare

@ringo380 ringo380 released this 20 Jul 00:14
e093851

Documentation and shipped-instruction corrections. No engine changes.

Fixes that affect an installed plugin

  • /shard-ack no longer crashes. It instructed the shard to run check <name>, which resolves the conductor manifest from the working directory and throws no manifest at ... from inside a shard. It now uses what is already in the sandbox: contract/VERSION compared against the shard's own surface/ACKNOWLEDGED.
  • /shard-status now renders staleShards, which the skill already told the conductor it would see.
  • versionStale: false no longer reported as "already acknowledged" - verifiedAgainst falls back to the manifest baseline, so a never-acknowledged shard reads as not-stale until a bump happens.

Documentation

  • LICENSE: commercial licensing enquiries read please contact licensing@robworks.info. (matching the construction Terraform and Vault use). Terms are unchanged.
  • README: npm run cli -- ack cannot work in any form - npm run resets the working directory to the package root - so ack is documented as a direct invocation from inside the shard.
  • Project site: three JSON blocks had been hand-trimmed and no longer matched real output. All replaced with captured runs, restoring the page's claim that every output on it is real.
  • docs/design.md: corrected the convention-linter filename, a manifest field that does not exist, a hook that was never registered, the missing /shard-ack row, and the gate's condition count.

License unchanged from v0.0.2: BUSL 1.1, free for individual use, converting to MIT on 2030-07-19.

v0.0.3

Choose a tag to compare

@ringo380 ringo380 released this 19 Jul 23:46
2b8ed99

Commercial licensing enquiries now go to licensing@robworks.info.

License terms are unchanged from v0.0.2: BUSL 1.1, free for production use by any individual acting on their own initiative (including paid work for an employer of any size), organizational adoption requires a commercial license, converts to MIT on 2030-07-19.

v0.0.2

Choose a tag to compare

@ringo380 ringo380 released this 19 Jul 23:27
8365bd2

Licensing

Now source-available under the Business Source License 1.1. Prior to this release the plugin manifest declared MIT with no LICENSE file present.

Free for individual use. The Additional Use Grant covers production use by any individual acting on their own initiative, including work for an employer or client of any size, and paid work. Organizational adoption - standardizing across a team, shared infrastructure, automated systems on the org's behalf - requires a commercial license, with a five-individual safe harbor so a team can pilot it first. Each version converts to MIT on its Change Date (2030-07-19).

v0.0.1 remains as published under its original declaration; this is a new version rather than a retagging.

Changes

  • Contract acknowledgment is now recorded in the shard's own surface/ACKNOWLEDGED rather than the conductor's manifest, so acknowledging never writes outside a shard's sandbox (#4, closes #3). ack takes no argument and derives the shard from the working directory.
  • docs/design.md corrected: PreToolUse never gated Bash. The limit is now documented along with why the design does not depend on it.
  • LICENSE and NOTICE added; package.json, .claude-plugin/plugin.json, and .claude-plugin/marketplace.json now agree on BUSL-1.1.

v0.0.1

Choose a tag to compare

@ringo380 ringo380 released this 18 Jul 17:20

Initial release: the sharding proof-of-concept Claude Code plugin plus its deterministic engine. Self-contained bundled CLI; SessionStart/PreToolUse/Stop hooks; /shard-* commands; two-shard demo.