GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — docs: README overhaul on the Divio model + ecosystems doc split + auth/config alignment by mikolalysenko · Pull Request #127 · SocketDev/socket-patch

Conversation

@mikolalysenko

@mikolalysenko Mikola Lysenko (mikolalysenko) commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

What

Full documentation pass on the CLI docs, restructured on the Divio documentation model:

  • README.md rewritten for a first-time user: short value-prop pitch → installation → five-minute tutorial → "How Socket Patch works" explanation → task-oriented how-to recipes → exhaustive per-command reference (flags, env vars, defaults) → OpenVEX / Scripting / Manifest reference.
  • docs/ecosystems.md (new): the mode × ecosystem support matrix (rows keyed by the exact --ecosystems slugs), npm hosted-mode + Rush notes, Maven & NuGet caveats, Cargo shared-registry-cache and Go go.sum sections, and the platform table — moved out of the README so the README stays focused on using the tool.
  • Auth/config alignment with feat(config): socket login now configures socket-patch — socket-cli config.json fallback + SOCKET_CLI_* aliases #125: a "Configuration sources" subsection documents the per-key precedence (flag > SOCKET_* env > SOCKET_CLI_* alias > socket-cli config.json > default), socket login pickup, and the SOCKET_NO_API_TOKEN / SOCKET_NO_CONFIG toggles. The anonymous public-proxy path (auth optional for testing certified patches) stays front and center in the tutorial and token docs.
  • CLI_CONTRACT.md: one stale passage synced — maven is in SERVICE_ECOSYSTEMS (per service_mode_gate_admits_maven), so the "not covered by fail-closed service" sentence was outdated.

How it was validated

Six rounds of a multi-agent adversarial review (7–8 independent lenses: fresh-user walkthrough, factual accuracy vs the built binary's --help + CLI_CONTRACT, Divio structure, completeness vs the old README, link/anchor integrity, prose, runnable examples, and a dedicated authentication lens), each finding adversarially verified before being fixed. 93+ confirmed defects fixed; raw findings converged 60 → 50 → 27 → 15 → 0 across rounds, with round 5 fully clean before the main merge.

Notable factual fixes along the way: an inverted --strict default description, .socket/blob/ → blobs/, unimplemented --one-off flags now labeled as stubs, Deno restored to the supported set, the Python hook's PATH-fallback described honestly, a bot jq recipe that hard-failed on empty crawls, and the tutorial demo ([email protected]) smoke-tested live against the public proxy — every sample output in the docs is genuine binary output.

A post-merge review round (including the auth lens) is in flight; any confirmed findings will be pushed to this branch.

🤖 Generated with Claude Code

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Mikola Lysenko (mikolalysenko) and others added 6 commits July 21, 2026 12:28
@mikolalysenko @claude
feat!: remove unlock + --break-lock, fold lock cleanup into repair, r…
0c7b59e
…eorder --help

v4 breaking CLI cleanup, part 1:

- Remove the `unlock` subcommand. A leftover apply.lock from a crashed
  run never blocks acquisition (the kernel releases a dead holder's
  advisory lock), so unlock's inspect path had no recovery scenario and
  its --release file deletion is now automatic in repair. The
  patch_unlocked/patch_unlock_failed telemetry events, Command::Unlock
  envelope variant, and SOCKET_UNLOCK_RELEASE are retired with it.

- Remove the global --break-lock flag and SOCKET_BREAK_LOCK. It never
  stole a live holder's lock (deliberately), and stale files never
  contend, so all it did was emit a lock_broken audit event for a
  reclaim plain acquisition performs anyway. acquire_or_emit now
  returns the LockGuard directly; the lock_held hint advises waiting /
  --lock-timeout. rollback's warnings[] stays present, now always
  empty. The never-unlink-while-live invariant survives, pinned by
  acquire_or_emit_preserves_mutual_exclusion.

- repair deletes the leftover apply.lock as its final housekeeping step
  on every completion path (after releasing its own guard; skipped on
  --dry-run; live holders still refused with lock_held exit 1).

- Reorder --help to workflow-first: scan, apply, vex, vendor, setup,
  rollback, get, list, remove, repair.

CHANGELOG carries migration notes under [Unreleased]; the 4.0.0
version-sync is deferred to batch with the remaining breaking changes.

Co-Authored-By: Claude Fable 5 <[email protected]>
@mikolalysenko @claude
docs: README overhaul on the Divio model + docs/ecosystems.md split
d8b0a80
README rewritten as pitch → install → five-minute tutorial → explanation →
how-to recipes → full command reference. Ecosystem/mode support matrix,
Maven/NuGet/Rush/Go/Cargo caveats, and platform table move to the new
docs/ecosystems.md. 83 defects fixed across a 5-round adversarial review
(stale claims, inverted --strict default, .socket/blobs/ path, unimplemented
--one-off stubs labeled, live-tested [email protected] tutorial). CLI_CONTRACT.md
maven service-coverage passage synced to SERVICE_ECOSYSTEMS.

Co-Authored-By: Claude Fable 5 <[email protected]>
@mikolalysenko
Merge remote-tracking branch 'origin/main' into feat/cli-lock-fold
325163d
# Conflicts:
#	README.md
#	crates/socket-patch-cli/tests/cli_parse_apply.rs
@mikolalysenko @claude
docs: port PR #125 auth/config model into the rewritten README
635c957
Configuration sources subsection under Global options (per-key precedence:
flag > SOCKET_* env > SOCKET_CLI_* alias > socket-cli config.json > default,
config-file locations, SOCKET_NO_API_TOKEN / SOCKET_NO_CONFIG toggles,
read-only + no-.env pledge), socket-login-first --api-token row, anonymous
public-proxy path kept prominent in the tutorial intro, configuration.md
linked from Further reading.

Co-Authored-By: Claude Fable 5 <[email protected]>
@mikolalysenko @claude
docs: round-6 review fixes — auth section structure + CI auth guidance
8af1f2d
Re-nest Configuration sources as an H4 inside Global options after the flags
table (the insert had stranded the table inside the wrong section); fold the
SOCKET_CLI_* aliases into the env-var rung so the ladder matches the
contract's one-extra-layer model; XDG-first config paths on Linux+macOS;
labeled url default; CI authentication paragraph (SOCKET_API_TOKEN secret,
paidRequired fallback behavior, SOCKET_NO_API_TOKEN pin); slimmer --api-token
row; Maven/NuGet experimental-discovery breadcrumb in the tutorial;
socket-patch vs Socket CLI disambiguation and wrap fixes.

Co-Authored-By: Claude Fable 5 <[email protected]>
@mikolalysenko @claude
docs: fix repair --offline example comment — warn-and-skip, not per-e…
5f8b30f
…ntry failure

Verified against repair.rs: offline mode prints a summary warning for
missing artifacts, records no download events, and exits success.

Co-Authored-By: Claude Fable 5 <[email protected]>
Wenxin-Jiang
Wenxin Jiang (Wenxin-Jiang) approved these changes Jul 22, 2026
View reviewed changes
@mikolalysenko
Mikola Lysenko (mikolalysenko) merged commit f05783a into main Jul 22, 2026
54 checks passed

Uh oh!

There was an error while loading. Please reload this page.

@mikolalysenko
Mikola Lysenko (mikolalysenko) deleted the docs/readme-divio-overhaul branch July 22, 2026 18:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@Wenxin-Jiang Wenxin Jiang (Wenxin-Jiang) Wenxin-Jiang approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@mikolalysenko @Wenxin-Jiang
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.