mirror of
https://github.com/garrytan/gstack.git
synced 2026-09-14 00:49:00 +02:00
docs: sync project documentation with the v1.67.0.0 fix wave
Port range 10000-49151 + busy-vs-dead daemon semantics + XProtect launch heal + browse-daemon.log in BROWSER.md/ARCHITECTURE.md; #2557 dead security surface (shield, L4b Haiku, DeBERTa ensemble, canary injector) marked removed in README/ARCHITECTURE per CLAUDE.md's do-not-redocument note; runtime-asset installs + alias copies in CONTRIBUTING/CLAUDE.md; manual uninstall fixed for asset-bearing dirs, alias copies, cursor/opencode roots, and the timeline Stop hook; gbrain-refresh out-dir render path; npm-valid package.json version translation documented in CLAUDE.md; patches/ in the project tree; two CHANGELOG accuracy fixes (-272 net lines, upgrade-time quarantine-clear) + release-summary em-dash polish. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
730327e45f
commit
8cc379b872
@@ -166,11 +166,12 @@ gstack/
|
||||
│ ├── test/ # Integration tests
|
||||
│ └── dist/ # Compiled binary
|
||||
├── extension/ # Chrome extension (side panel + activity feed + CSS inspector)
|
||||
├── lib/ # Shared libraries (worktree.ts, egress-receipt.ts, context-bill.ts, redact-engine.ts, tracker-guard.ts, code-intelligence/)
|
||||
├── lib/ # Shared libraries (worktree.ts, egress-receipt.ts, context-bill.ts, redact-engine.ts, tracker-guard.ts, version-source.ts, code-intelligence/)
|
||||
├── patches/ # bun `patchedDependencies` patches (playwright-core windowsHide)
|
||||
├── docs/designs/ # Design documents
|
||||
├── setup-deploy/ # /setup-deploy skill (one-time deploy config)
|
||||
├── .github/ # CI workflows + Docker image
|
||||
│ ├── workflows/ # evals.yml (E2E on Ubicloud), quality-gate.yml (secret scan), dependency-review.yml, osv-scanner.yml, skill-docs.yml, actionlint.yml, and 7 more (windows, periodic evals, release gates, ci-image)
|
||||
│ ├── workflows/ # evals.yml (E2E on Ubicloud), quality-gate.yml (secret scan), dependency-review.yml, osv-scanner.yml, skill-docs.yml, actionlint.yml, and 8 more (windows, periodic evals, release gates, ci-image)
|
||||
│ └── docker/ # Dockerfile.ci (pre-baked toolchain + Playwright/Chromium)
|
||||
├── contrib/ # Contributor-only tools (never installed for users)
|
||||
│ └── add-host/ # /gstack-contrib-add-host skill
|
||||
@@ -455,8 +456,11 @@ symlink or a real copy. If it's a symlink to your working directory, be aware th
|
||||
global install at `~/.claude/skills/gstack/` is used instead
|
||||
|
||||
**Prefix setting:** Setup creates real directories (not symlinks) at the top level
|
||||
with a SKILL.md symlink inside (e.g., `qa/SKILL.md -> gstack/qa/SKILL.md`). This
|
||||
ensures Claude discovers them as top-level skills, not nested under `gstack/`.
|
||||
with a SKILL.md symlink inside (e.g., `qa/SKILL.md -> gstack/qa/SKILL.md`), plus
|
||||
links to each skill's runtime assets (sections/, templates, checklists — everything
|
||||
except SKILL.md, tests, build output, and `.tmpl` sources). Alias skills
|
||||
(`_gstack-command`, `connect-chrome`) install as rewritten copies, never symlinks.
|
||||
This ensures Claude discovers them as top-level skills, not nested under `gstack/`.
|
||||
Names are either short (`qa`) or namespaced (`gstack-qa`), controlled by
|
||||
`skill_prefix` in `~/.gstack/config.yaml`. Pass `--no-prefix` or `--prefix` to
|
||||
skip the interactive prompt.
|
||||
@@ -660,6 +664,17 @@ claims v1.7.0.0 as a MINOR and branch B is also a MINOR, B lands at v1.8.0.0
|
||||
`bin/gstack-next-version` advances within the chosen bump level rather than
|
||||
repicking the level when collisions happen.
|
||||
|
||||
**package.json carries the npm-valid translation, not VERSION verbatim.**
|
||||
VERSION stays the 4-digit source of truth (e.g. `1.67.0.0`); package.json and
|
||||
any subdirectory manifests with a `version` field get the 3-digit npm-valid
|
||||
translation (`1.67.0`), and lockfile `version` fields sync only when the
|
||||
lockfile already exists. `bin/gstack-version-bump` (via `lib/version-source.ts`)
|
||||
owns the translation and judges drift on translated forms — do NOT "fix" the
|
||||
apparent mismatch by hand, and do not write a 4-digit version into
|
||||
package.json (npm rejects it). Rationale and translation rules live in the
|
||||
`lib/version-source.ts` header; `test/gstack-version-bump.test.ts` pins the
|
||||
contract.
|
||||
|
||||
**Scale-aware bumps — use common sense.** When the diff is big, bump MINOR (or
|
||||
MAJOR), not PATCH. PATCH is for bug fixes and small additions; MINOR is for
|
||||
substantial new capability or substantial reduction; MAJOR is for breaking
|
||||
|
||||
Reference in New Issue
Block a user