Skip to content

Intake v0.2.0

Choose a tag to compare

@robertdevore robertdevore released this 13 Oct 12:41
· 16 commits to main since this release

Intake 0.2.0

Intake 0.2.0 is the first tagged GitHub release of the local intake app. It collects email, webhooks, Slack events, issue events, files, and manual input; applies rules and policy; and lets an operator review and approve actions.

Install

Use Node.js 20.19.0 or newer:

git clone --branch v0.2.0 https://github.com/kujolang/intake.git
cd intake
npm ci
npm link
intake init
intake dashboard

The GitHub release includes a tracked-file package archive and SHA-256 checksum. The repository remains private: true for npm publication. No npm registry or Kennel installation is advertised; this JavaScript app does not need the Kujo runtime.

Changes

  • Persistent receiver receipts preserve classification and operator changes on retries.
  • Store locks and recovery journals protect interrupted restore and configuration imports.
  • Metadata and record validation preserve malformed evidence instead of silently replacing it.
  • Approval, automatic-action limits, secret handling, exports, backups, and retention have stronger failure checks.
  • Bounded readers and streaming log checks limit memory use; process-interruption and concurrency tests cover the recovery paths.
  • Dashboard queues, ownership, snooze, quick commands, source health, and token controls support daily review.

Upgrade and recovery

Back up the store and stop writers before changing versions. Storage schema 1 remains supported; no schema migration is required. Keep your environment or Keychain secrets outside the checkout.

Config imports now require a complete version-1 snapshot. Remove redacted credential placeholders and use secret references or reviewed credentials. Automatic actions require literal boolean true; malformed limits or active counters block execution.

After an interrupted writer exits, use intake store recover --dir STORE. Repair filesystem errors first. Corrupt metadata or conflicting journals require inspection; --force does not bypass their validation. Use force for unreadable lock ownership only after stopping every writer. Reconcile uncertain outbound actions before approving a retry; recovery never replays them.

Verification and scope

The release gate runs syntax checks, documentation checks, 180 regression tests, smoke tests, evals, benchmarks, a retention heap check, dependency audit, doctor, shipcheck, and tracked-file package validation. CI covers Node 20.19, 22, 24 and Chromium. Check the tag's CI result when consuming the release.

This is a source release for local operation, not enterprise certification. Live-provider setup, shared deployment security, and machine-power-loss recovery require environment-specific proof. Direct sending remains blocked by default. See the packaging decision and latest persistence audit.

Verified release CI: https://github.com/kujolang/intake/actions/runs/38398765864