On this page
Terms and grants are versioned Changes to paying users take 30 days' notice What you bought stays yours What we do not promise The mechanism
Draft — under review, not yet in force.

Legal

Fair-change Policy

Last updated June 11, 2026 · Version 1 · Questions? contact us.

We want to earn long-term trust by being clear about what we promise and what we do not. This page states our change commitments in plain language. It is the public face of the versioned terms system described in the Terms of Service; when there is a conflict, the Terms govern.

Terms and grants are versioned

Every document in our legal set is versioned and carries a public changelog (legal/CHANGELOG.md is the record for the legal documents; billing/CHANGELOG.md records changes to plan grants and limits). When a document changes, the version number goes up and an entry appears in the changelog stating what changed, why, and who is affected. We do not make silent edits.

Changes to paying users take 30 days' notice

If we make a material change — something that alters what you are promised or what you agree to — we will tell paying users at least 30 days before it takes effect. We will do this by email to the address on your account.

Changes are never retroactive. An already-paid subscription period is never shortened or altered. A one-time pack purchase is never reduced. If you choose to cancel before a change takes effect, your paid period still runs to its natural end.

Adding value to a subscription (a new feature, an increased limit, better support) is not a material change and needs no advance notice — we can do that without asking.

What you bought stays yours

Purchased pack versions are version-pinned. When you buy a pack, your receipt records the exact version that existed at the time of purchase. That version remains yours to install and re-download in perpetuity, even if the author later updates it, delists it from the store, or leaves the platform. We retain the hosted artefact specifically to honour this promise (the licence we take from authors is designed for this — see the Store Author Agreement).

The only exception is a legal or malware takedown, where we may be compelled to withdraw a version to comply with law or to protect users from harm. This is a narrow carve-out, not a routine operation.

Retired plans are grandfathered forever. If a plan you hold is discontinued, you keep your entitlements indefinitely at the terms that were in force when you bought. We have already exercised this promise once: the `fix_code_lifetime` plan was retired in June 2026 (terms v2, recorded in `billing/CHANGELOG.md`). Every holder of a lifetime grant keeps `tier = plus` with no period end; the reconcile job is coded to never touch those rows; the Paddle product is archived, not deleted. This is what "grandfathered forever" means in practice — not a hedge, a code commitment.

What we do not promise

Being honest about limits is part of the same commitment:

We do not promise future versions of a pack. Your purchase covers the versions that existed while the pack was published. If an author releases a major new version and prices it separately (as a new pack), that is not a breach — you keep what you bought, and you choose whether to buy the new version.

We do not promise a fixed feature set for subscriptions. Plus is a subscription to our network services as they exist and evolve. We may add features, adjust limits, or deprecate a service with proper notice. What we promise is that changes follow this policy — notice, never retroactive, your local capability never gated — not that the product stands still.

We do not promise to run forever. If [fix]net shuts down, we will give as much notice as we can. Because the app is local-first, a final release will keep every local capability working indefinitely with no account or server needed. Your graphs, exports, and locally-installed packs remain yours.

The mechanism

The promises above are not just words — they are wired into the system:

  • Plan grants are machine-readable in `billing/plan-terms.json`. Any change bumps `terms_version` and adds a changelog entry. The server enforces against the registry; clients pre-gate for UX only.
  • Pack entitlements are version-pinned rows in the store database. A Paddle refund or chargeback event removes the entitlement; a moderator action unlists the pack without touching existing entitlement rows (unless the takedown is legal or malware).
  • Local capability is marked `never_gated` in the registry, auditable by anyone reading the file.

See also: the Refund Policy for how refunds work in practice.