Skip to content

B-CATY-purge-reverse-engineering-derived-research-audit-the-tree

S-0014-research-third-party-products-by-observation settles the rule going forward. This entry is the cleanup of what predates it. Commercial intent is confirmed, so the non-commercial plugin carve-out in Obsidian’s terms no longer shelters the existing research, and B-5ISD-obsidian-research-provenance-and-commercial-use carries the unresolved legal question this cleanup runs alongside.

The audit and the rewrite are separate jobs with different blockers, and the audit goes first. Cleaning the working tree needs no quiet window — it is an ordinary PR. Only the history rewrite needs every branch merged. Running them the other way round wastes the window: any violation still in the tree when history is rewritten lands right back in the new history, and buys a second rewrite.

Wider than the six documents #1312 and #1317 fixed. Nine files under solutions/agent-pants/docs/vault/research/ mention the bundle, minified source, or unpacking: agent-skills-conformance.md, bundling-executables.md, obsidian-distribution.md, obsidian-filesystem-access.md, obsidian-frontmatter-fidelity.md, obsidian-plugin-licensing.md, open-in-agent.md, plugin-installed-skills.md, vault-skills-landscape.md. Each needs the same question asked: is this finding stated from observation, or from having read the shipped source?

A finding learned from the bundle is not laundered by deleting the quotation. Re-ground it by observation or drop it. T-MI2A-re-ground-the-obsidian-resolution-behaviour-table-by already covers the resolution behaviour table; this entry covers everything else.

Also in scope: open-in-agent.md reproduced three fragments from the Claude Code binary, which is a second vendor and a separate set of terms.

What a history rewrite does and does not achieve

Section titled “What a history rewrite does and does not achieve”

Decide knowingly, because “gone” is weaker than it sounds.

  • It does not reach existing clones or forks. Anyone who pulled keeps the blobs.
  • It does not reach GitHub’s own retained refs. Pull-request refs and cached diff views can hold unreachable objects after a force-push; dropping those takes a support request, not a rewrite.
  • It invalidates every commit sha cited in the planning docs. Completion and relevance notes cite bare shas today — T-2CXH, T-OBF9, T-7270, T-B98V, T-XM0B and T-W6NY among them — and all of them break.

None of that is an argument against doing it. It is an argument for writing down what the goal is first, so the result can be judged against it.

  • Audit the nine research files against S-0014-research-third-party-products-by-observation; re-ground by observation or drop. One ordinary PR, no quiet window needed.
  • Handle the Claude Code fragments in open-in-agent.md as their own vendor and terms.
  • Write down what the rewrite is meant to achieve, given it reaches neither forks nor GitHub’s retained refs.
  • Once every branch and open PR is merged, rewrite history in one pass. Coordinate: every worktree and every outstanding clone needs a fresh clone afterwards.
  • Repair or remove the commit-sha citations the rewrite invalidates.

← Back to Backlog