Skip to content

Sopify next release: portable plan and evidence contract - #76

Merged
Li-Sanze merged 15 commits into
mainfrom
feat/sopify-narrow-focus
Oct 21, 2026
Merged

Li-Sanze merged 15 commits into
mainfrom
feat/sopify-narrow-focus

Conversation

@Li-Sanze

Copy link
Copy Markdown
Collaborator

Draft for the next Sopify release. Plan: .sopify/plan/20261020_sopify_narrow_focus/ (plan.md, tasks.md, receipts, audits).

Sopify narrows to one job: plans, decisions and verification evidence live in the repo, so work can continue across tools, people and agents. Questions and small fixes stay direct.

Changes so far

  • Full test gate: CI and release preflight run every test under tests/ (previously 7 of 16 files). Preflight now fails on golden drift instead of regenerating and staging snapshots.
  • Installer and writer fixes: reinstall repairs corrupted or missing owned files instead of skipping them. Claude, Codex and Qoder home instruction files use the same managed block as Copilot, so user content is preserved, and whole-file headers from every release since 2026-06-10 migrate automatically. The writer rejects non-object JSON state. Absorbs the four regression test files from [DO NOT MERGE] test: audit coverage for cursor installer and writer #75.
  • Slimmer entry: the shared host header drops from about 10.6KB to 5.4KB (zh); the flattened Copilot file drops from about 42KB to 28KB.
  • New docs: an optional guide for running a plan with Orca (docs/orca.md) and a host onboarding recipe (docs/host-onboarding.md).
  • New hosts: Antigravity CLI and Trae CLI baselines share one flat Skill layout. Antigravity was installed and exercised in real sessions. Trae has no real-session evidence yet, and its Doctor behavior check reports BLACK_BOX_NOT_VERIFIED.
  • Cleanup: retired helpers and duplicated docs removed (net -2292 lines). The sync-skills.sh replacement is noted in CHANGELOG.

Still to do before release

  • Acceptance of the cross-host cold-start sample: a fresh Qoder session given only ~go continued task T6b from .sopify/ files.
  • README and Pages rewrite, plus a fresh-session newbie test.
  • Release notes, version bump, release assets and post-release install smoke.

Do not merge yet.

🤖 Generated with Claude Code

Li-Sanze and others added 15 commits October 20, 2026 15:02
Finalize 20260819_cursor_support through sopify_writer after PR #71 merged and
shipped in 2026-08-22.134737; the stale August handoff is superseded by the
verified Git facts recorded in final.json.

Add the standard plan package 20261020_sopify_narrow_focus for the next
release: full test gate, installer and writer fixes, medium redundancy cut,
optional Orca execution guide, Antigravity and Trae baselines, a cold-start
cross-host continuation sample, and a README rewrite.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… files

CI and release preflight now collect every test under tests/, and preflight
fails on golden drift instead of regenerating and staging snapshots.

Installers compare the complete Sopify-owned skill tree, so corrupted,
missing or stale files are repaired on reinstall instead of skipped.
Claude, Codex and Qoder home instruction files now use the same managed
block as Copilot: user content outside the block is preserved, whole-file
headers from every release since 2026-06-10 migrate by their stable
first/last lines, and malformed markers are rejected without writes.

Also: the writer rejects non-object JSON state with InvariantViolationError,
the install summary says when the runtime smoke check was not run and names
Cursor correctly, the uninstall guide keeps .sopify/, and the four PR #75
regression files are absorbed without xfail.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The shared host header shrinks from about 10.6KB to 5.4KB (zh) and 11.6KB to
6.3KB (en); the flattened Copilot file drops to about 27.7KB and 31.0KB.
Stage details now live once in their own Skills, while intent-first routing,
the four-step entry, writer ownership and the three commands stay on the
first screen. The header keeps the first and last lines that legacy
migration relies on.

docs/orca.md describes the optional owner, executor and reviewer split for
running a plan with Orca, using a task brief distilled from real dispatches.
docs/host-onboarding.md is the recipe for adding a host at the baseline tier.
Develop gains a short reproduce-first bug branch; Analyze and Design gain
optional EARS and Added/Changed/Removed examples.

Key audit reports for this plan are archived under its audits/ directory.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tance)

Delete the private resume helper, the simulated Qoder proof, the advisory
enhancement check and the local sync-skills cache helper (CHANGELOG names
the render-host-skills replacement). render-host-skills reuses the shared
YAML subset parser.

Blueprint protocol, design and tasks keep their normative content and point
retired history to the archived plans; the stale standards refactor note is
removed. Development guidelines fold into CONTRIBUTING, release-process is
the single source for release steps, how-sopify-works links instead of
repeating install and host tables, and the external quickstart drops its
runtime-era sample.

The plan also records Antigravity as the main dogfood host, Trae proceeding
per the user, and Qoder as the T9 cold-start executor and README tester.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Both hosts discover only direct-child Skills, so one shared flat layout
installs the stages as sopify-<stage> with rewritten references to a single
shared references directory. Antigravity gets a managed block in
~/.gemini/config/AGENTS.md; Trae, which loads no global rule file, gets a
top-level sopify entry Skill. Reinstall repair, language switching and
preservation of user content reuse the existing managed-block and owned-tree
checks.

Both register as BASELINE_SUPPORTED with Doctor behavior checks reported as
BLACK_BOX_NOT_VERIFIED until real-session evidence exists. No hooks, MCP or
host settings are touched.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…acceptance)

T6b of plan 20261020_sopify_narrow_focus. Both additions come from the
reviewer's T7 probe dogfood feedback: the recipe assumed an IDE chat window
for marker quoting, and never asked contributors to seed same-directory rule
candidates together to learn load order.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Host rules never told the host to run the installed bootstrap helper, so a
first ~go wrote plans and state but no .sopify/sopify.json or managed
.gitignore block, and Doctor reported the workspace bundle missing. This
gap predates this release.

The shared header and the Cursor rule now name the installed helper and
how to import the installed sopify_writer, using the existing config_dir
variable. The flattened Copilot file, which has no global payload, drops
those two lines. A path test checks that every host with a payload gets a
helper and writer path that exist after install. The install summary says
in plain words that the first ~go sets up project files, and the
Antigravity host doc records the dogfood evidence with its limits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ng acceptance)

The README now opens with what Sopify is, a two-step start (install, then
~go plan in your project) and when not to use it, followed by the value
scenarios, a command cheat sheet and host status in plain words. Product
form and architecture details move to how-sopify-works. The pages carry the
same tagline, host list and statuses.

The cross-host scene is redrawn from the real cold-start sample: a plan
written in Claude Code continued by a fresh Qoder session given only ~go.
The architecture and product-form diagrams add Antigravity and Trae
(preview) in their original style. The README link checker resolves
temporary paths before comparing them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s (pending acceptance)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A fresh Qoder session read only the README, installed and ran its first
~go plan. It understood what Sopify is, but hit four rough edges, now fixed:

- Running the Python installer or init script on Python older than 3.11
  prints a one-line requirement instead of an ImportError traceback.
- The install summary suggests `~go plan <what you want to do>`, matching
  the README, instead of a bare `~go`.
- The README explains that Sopify asks first when a request is unclear and
  writes plan.md after you answer, lists what appears in the repository and
  what stays local, and lists Qoder's language targets.
- A teammate who clones a repo that already has .sopify/sopify.json now gets
  the local ignore rule for .sopify/state/ on the first ~go: the entry rule
  also calls the idempotent helper when state is not ignored.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The tagline now names the mechanism: AI coding plans and evidence are
versioned in Git and resume across tools, teammates and agents. Host badges
fit on one line, Trae is listed as baseline like Cursor and Copilot, and
negation-style lines and colloquial phrasing are removed after a
sentence-by-sentence language audit. The diagrams carry the same tagline,
and CHANGELOG lists the release notes under Unreleased.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Li-Sanze
Li-Sanze marked this pull request as ready for review October 21, 2026 07:17
@Li-Sanze
Li-Sanze merged commit 3ae8bd7 into main Oct 21, 2026
4 checks passed
Li-Sanze added a commit that referenced this pull request Oct 21, 2026
Sopify now versions AI coding plans and verification evidence in Git so work
resumes across tools, teammates and agents. Archive plan
20261020_sopify_narrow_focus after PR #76, sync the release version, record
the new positioning and host conventions in the blueprint, and move the
Unreleased notes into this version.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Li-Sanze
Li-Sanze deleted the feat/sopify-narrow-focus branch October 21, 2026 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant