Commit graph

61 commits

Author SHA1 Message Date
ace-pm
9d739dfa5d Rename GSD→SF: complete rebrand from fork origin
- All gsdDir/gsdRoot/gsdHome → sfDir/sfRootDir/sfHome
- GSDWorkspace* → SFWorkspace* interfaces
- bootstrapGsdProject → bootstrapProject
- runGSDDoctor → runSFDoctor
- GsdClient → SfClient, gsd-client.ts → sf-client.ts
- .gsd/ → .sf/ in all tests, docs, docker, native, vscode
- Auto-migration: headless detects .gsd/ → renames to .sf/
- Deleted gsd-phase-state.ts backward-compat re-export
- Renamed bin/gsd-from-source → bin/sf-from-source
- Updated mintlify docs, github workflows, docker configs
2026-04-15 18:33:47 +02:00
ace-pm
282b34b58b chore: add .gsd/ to .gitignore and remove runtime state files
.gsd/ is generated at runtime by sf-run during execution and contains
audit logs, notifications, and metadata. These should never be committed
to the repository. Removing tracked state files and ignoring the directory
going forward.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 15:01:17 +02:00
ace-pm
b29c12d5e5 refactor(native): rename gsd_parser.rs to forge_parser.rs
Final rebrand: rename remaining Rust source file to complete the gsd → forge
transition. All parser references already use forge_parser after earlier commits.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 14:58:21 +02:00
Lex Christopherson
f28feaed36 fix: remove .gsd/ from tracking, ignore entire directory
.gsd/ contains per-worktree project state (milestones, db, decisions)
that should never be committed. Auto-commits were leaking these files
into the repo, causing the no-gsd-dir CI check to fail.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 00:33:35 -06:00
Lex Christopherson
2d974dfb59 chore: update state — S01 planned, ready for execution 2026-03-18 00:25:26 -06:00
Lex Christopherson
26451ffc2f docs(S01): add slice plan 2026-03-18 00:24:33 -06:00
Lex Christopherson
1e3d70f06c chore(M001-1ya5a3/S01): auto-commit after state-rebuild 2026-03-18 00:19:32 -06:00
Lex Christopherson
c6f4cd826b chore(M001-1ya5a3/S01): auto-commit after research-slice 2026-03-18 00:19:30 -06:00
Lex Christopherson
79052b418e docs(M001-1ya5a3): context, requirements, and roadmap 2026-03-18 00:15:19 -06:00
Lex Christopherson
c92b937305 docs: clear old files 2026-03-16 12:50:27 -06:00
Tom Boucher
cb9191fa4f chore: remove .gsd/ planning artifacts from tracking (#648)
Development planning artifacts (.gsd/) are project-specific state that
lives in worktree branches during active development. Tracking them on
main causes merge conflicts with worktree-isolated auto-mode and leaves
stale snapshots that mislead.

- Remove 157 .gsd/ files from git tracking (kept on disk)
- Replace granular .gsd/ gitignore rules with single .gsd/ entry
- Files remain available locally for reference

Closes #647
2026-03-16 10:33:34 -06:00
TÂCHES
49e5e18da4 feat: SQLite context store — surgical prompt injection (#619)
* docs(M004): context, requirements, and roadmap

* chore(M004): record integration branch

* chore(M004/S01): auto-commit after research-slice

* docs(S01): add slice plan

* chore(M004/S01/T01): auto-commit after execute-task

* chore(M004/S01/T02): auto-commit after execute-task

* chore(M004/S01): auto-commit after complete-slice

* chore(M004/S01): auto-commit after reassess-roadmap

* chore(M004/S02): auto-commit after research-slice

* docs(S02): add slice plan

* chore(M004/S02/T01): auto-commit after execute-task

* chore(M004/S02/T02): auto-commit after execute-task

* chore(M004/S02): auto-commit after complete-slice

* docs(M004): reassess roadmap after S02

* chore(M004/S03): auto-commit after research-slice

* docs(S03): add slice plan

* chore(M004/S03/T01): auto-commit after execute-task

* chore(M004/S03/T02): auto-commit after execute-task

* chore(M004/S03/T03): auto-commit after execute-task

* chore(M004/S03): auto-commit after complete-slice

* chore(M004): record integration branch

* chore(M004/S04): auto-commit after research-slice

* docs(S04): add slice plan

* chore: update state to executing S04

* chore(M004/S04/T01): auto-commit after execute-task

* chore(M004/S04/T02): auto-commit after execute-task

* chore(M004/S04): auto-commit after complete-slice

* docs(M004): reassess roadmap after S04

* chore(M004/S05): auto-commit after research-slice

* docs(S05): add slice plan

* chore(M004/S05/T01): auto-commit after execute-task

* chore(M004/S05/T02): auto-commit after execute-task

* chore(M004/S05): auto-commit after complete-slice

* chore(M004/S05): auto-commit after reassess-roadmap

* chore(M004/S06): auto-commit after research-slice

* docs(S06): add slice plan

* chore: update STATE.md for S06 execution

* chore(M004/S06/T01): auto-commit after execute-task

* chore(M004/S06/T02): auto-commit after execute-task

* chore(M004/S06): auto-commit after complete-slice

* chore(M004/S06): auto-commit after reassess-roadmap

* chore(M004/S07): auto-commit after research-slice

* docs(S07): add slice plan

* chore(M004/S07/T01): auto-commit after execute-task

* chore(M004/S07): auto-commit after complete-slice

* chore(M004): auto-commit after complete-milestone

* docs(M004): milestone summary and state update

* fix: path traversal guard, ATTACH allowlist, restore deleted export-html

- db-writer.ts: validate saveArtifactToDb path stays within .gsd/ using
  resolve() to prevent directory traversal via LLM tool input
- gsd-db.ts: replace single-quote-only ATTACH guard with strict character
  allowlist regex for worktree DB path validation
- Restore accidentally deleted pkg/dist/core/export-html/ templates
  (removed in b30baeb7 during S04/T01 auto-execution)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* chore: remove .gsd/ from tracking — private project work docs

.gsd/ contains personal planning artifacts, not public source code.
Replace granular runtime gitignore rules with blanket .gsd/ ignore.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: resolve 4 strict typecheck errors for tsconfig.extensions.json

- gsd-db.ts: cast origEmit.apply return to boolean
- md-importer.ts: double-cast Requirement to Record<string, unknown>
- gsd-inspect.test.ts: remove extraneous arg from report()
- md-importer.test.ts: nullish coalesce on optional chain to boolean

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: update compression test to accept DB-aware helper pattern

The context-compression test checks auto-prompts.ts source for
inlineGsdRootFile calls, but M004 replaces these with DB-aware
helpers (inlineRequirementsFromDb etc). Accept either pattern.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: use single-quote blocklist instead of path allowlist for ATTACH guard

Allowlist regex broke on Windows temp paths containing tildes (RUNNER~1),
parens, and other valid OS path chars. The only actual injection vector
for ATTACH DATABASE '...' is a single quote breaking the SQL literal.
Block that one char instead of trying to enumerate all valid path chars.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* revert: restore .gsd/ tracking and original gitignore rules

The blanket .gsd/ ignore was incorrect — GSD users need planning
files tracked. Restore main's granular runtime-only gitignore and
re-add all .gsd/ planning files from main.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: use double quotes in git commit message for Windows compatibility

Single quotes in shell commands don't work on Windows PowerShell.
The commit message 'add gsd dir' was split into separate pathspecs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 09:33:05 -06:00
Colin Johnson
5fec6ea81e enhance: bring Slack remote questions to parity (#628)
* enhance: bring Slack remote questions to parity

* chore(M004): record integration branch

* fix: restore remote questions adapter import
2026-03-16 09:01:41 -06:00
Lex Christopherson
f0c1a89146 chore(M004): record integration branch 2026-03-15 20:28:32 -06:00
Lex Christopherson
3a90165f38 docs(M004): context, requirements, and roadmap 2026-03-15 20:28:32 -06:00
Lex Christopherson
f2fc9df922 chore(M003): auto-commit after complete-milestone 2026-03-15 08:33:13 -06:00
Lex Christopherson
599c0b7648 test(M003/S07): Test suite for worktree-isolated flow
Tasks:
- chore(M003/S07): auto-commit after complete-slice
- chore(M003/S07/T01): auto-commit after execute-task
- chore(M003/S07): auto-commit after plan-slice
- docs(S07): add slice plan

Branch: gsd/M003/S07
2026-03-15 08:33:13 -06:00
Lex Christopherson
8100a1b5a0 docs(M003): reassess roadmap after S06 2026-03-15 08:33:13 -06:00
Lex Christopherson
f9b9f6bf32 chore(M003/S06): Doctor + cleanup + code simplification
Tasks:
- chore(M003/S06): auto-commit after complete-slice
- chore(M003/S06/T02): auto-commit after execute-task
- chore(M003/S06/T01): auto-commit after execute-task
- chore(M003/S06): auto-commit after plan-slice
- docs(S06): add slice plan

Branch: gsd/M003/S06
2026-03-15 08:33:13 -06:00
Lex Christopherson
34cd1056ea feat(M003/S05): Self-healing git repair
Tasks:
- chore(M003/S05): auto-commit after complete-slice
- docs: tighten GSD system prompt tool-routing — prescriptive rules + anti-patterns
- chore(M003/S05/T02): auto-commit after execute-task
- chore(M003/S05/T01): auto-commit after execute-task
- chore(M003/S05): auto-commit after plan-slice
- docs(S05): add slice plan

Branch: gsd/M003/S05
2026-03-15 08:33:13 -06:00
Lex Christopherson
01f5d2bf7f docs(M003): reassess roadmap after S04 2026-03-15 08:33:13 -06:00
Lex Christopherson
4d60b49f25 feat(M003/S04): worktree-aware merge + isolation preferences 2026-03-15 08:33:13 -06:00
Lex Christopherson
84b6f80399 docs(M003): reassess roadmap after S03 2026-03-15 08:33:13 -06:00
Lex Christopherson
b001005869 feat(M003/S03): Milestone-to-main squash merge + worktree teardown
Tasks:
- chore(M003/S03): auto-commit after complete-slice
- chore(M003/S03/T02): auto-commit after execute-task
- chore(M003/S03/T01): auto-commit after execute-task
- chore(M003/S03): auto-commit after plan-slice
- docs(S03): add slice plan

Branch: gsd/M003/S03
2026-03-15 08:33:13 -06:00
Lex Christopherson
dbc89e5b23 feat(M003/S02): --no-ff slice merges + conflict elimination
Tasks:
- chore(M003/S02): auto-commit after complete-slice
- chore(M003/S02/T02): auto-commit after execute-task
- chore(M003/S02/T01): auto-commit after execute-task
- chore(M003/S02): auto-commit after plan-slice
- docs(S02): add slice plan

Branch: gsd/M003/S02
2026-03-15 08:33:13 -06:00
Lex Christopherson
a9d97a8d4b docs(M003): reassess roadmap after S01 2026-03-15 08:33:13 -06:00
Lex Christopherson
d67c3ff5e8 feat(M003/S01): Auto-worktree lifecycle in auto-mode
Tasks:
- chore(M003/S01): auto-commit after complete-slice
- chore(M003/S01/T03): auto-commit after execute-task
- chore(M003/S01/T02): auto-commit after execute-task
- chore(M003/S01/T01): auto-commit after execute-task
- chore(M003/S01): auto-commit after plan-slice
- chore: untrack .gsd/ runtime files from git index
- docs(S01): add slice plan

Branch: gsd/M003/S01
2026-03-15 08:33:13 -06:00
Lex Christopherson
948e8983b5 chore(M003): record integration branch 2026-03-15 08:33:13 -06:00
Lex Christopherson
24597873a0 docs(M003): context, requirements, and roadmap 2026-03-15 08:33:13 -06:00
Lex Christopherson
69d8baf17b chore: untrack .claude/ and .gsd/ directories, gitignore *.tgz
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 10:08:17 -06:00
Lex Christopherson
e55e9ac1db chore(M002): auto-commit after complete-milestone 2026-03-13 08:04:27 -06:00
Lex Christopherson
a00ccf68ec chore(M002): auto-commit after complete-milestone 2026-03-13 08:04:27 -06:00
Lex Christopherson
5155d69d55 test(M002/S06): Test coverage
Tasks:
- chore(M002/S06): auto-commit after complete-slice
- chore(M002/S06): auto-commit after complete-slice
- chore(M002/S06/T02): auto-commit after execute-task
- chore(M002/S06/T02): auto-commit after execute-task
- chore(M002/S06/T01): auto-commit after execute-task
- chore(M002/S06/T01): auto-commit after execute-task
- chore(M002/S06): auto-commit after plan-slice
- chore: update state for S06 execution
- docs(S06): add slice plan

Branch: gsd/M002/S06
2026-03-13 08:04:27 -06:00
Lex Christopherson
8c549bd9c7 feat(M002/S05): Intent-ranked retrieval and semantic actions
Tasks:
- chore(M002/S05): auto-commit after complete-slice
- chore(M002/S05): auto-commit after complete-slice
- chore(M002/S05/T01): auto-commit after execute-task
- chore(M002/S05/T01): auto-commit after execute-task
- chore(M002/S05): auto-commit after plan-slice
- docs(S05): add slice plan

Branch: gsd/M002/S05
2026-03-13 08:04:27 -06:00
Lex Christopherson
57f6b0fd90 feat(M002/S04): Form intelligence
Tasks:
- chore(M002/S04): auto-commit after complete-slice
- chore(M002/S04): auto-commit after complete-slice
- chore(M002/S04/T02): auto-commit after execute-task
- chore(M002/S04/T02): auto-commit after execute-task
- chore(M002/S04/T01): auto-commit after execute-task
- chore(M002/S04): auto-commit after plan-slice
- docs(S04): add slice plan

Branch: gsd/M002/S04
2026-03-13 08:04:27 -06:00
Lex Christopherson
68cf10eed5 feat(M002/S03): Screenshot pipeline
Tasks:
- chore(M002/S03): auto-commit after complete-slice
- chore(M002/S03): auto-commit after complete-slice
- chore(M002/S03/T01): auto-commit after execute-task
- chore(M002/S03/T01): auto-commit after execute-task
- chore(M002/S03): auto-commit after plan-slice
- docs(S03): add slice plan

Branch: gsd/M002/S03
2026-03-13 08:04:27 -06:00
Lex Christopherson
3590b32252 feat(M002/S02): Action pipeline performance
Tasks:
- chore(M002/S02): auto-commit after complete-slice
- chore(M002/S02): auto-commit after complete-slice
- chore(M002/S02/T02): auto-commit after execute-task
- chore(M002/S02/T02): auto-commit after execute-task
- chore(M002/S02/T01): auto-commit after execute-task
- fix: expand tool outputs by default and pull main before slice merge
- chore(M002/S02): auto-commit after plan-slice
- docs(S02): add slice plan

Branch: gsd/M002/S02
2026-03-13 08:04:27 -06:00
Lex Christopherson
ee6dce643b chore(M002/S01): auto-commit after reassess-roadmap 2026-03-13 08:04:27 -06:00
Lex Christopherson
9bf6e911f3 docs(M002): context, requirements, and roadmap 2026-03-13 08:04:27 -06:00
Lex Christopherson
6139a22c44 chore: delete old .gsd 2026-03-12 15:32:39 -06:00
Lex Christopherson
63f9a84e8a feat(M002/S02): enhanced secure_env_collect UX — checkExistingEnvKeys, detectDestination, guidance field, auto-detection 2026-03-12 15:32:39 -06:00
Lex Christopherson
1b87bd046f docs(M002): reassess roadmap after S01 — no changes needed 2026-03-12 15:32:39 -06:00
Lex Christopherson
86aba6ec59 fix: resolve merge conflicts from S01 branch merge into main 2026-03-12 15:32:39 -06:00
Lex Christopherson
a64508e7a8 chore: auto-commit before switching to gsd/M002/S01 2026-03-12 15:32:39 -06:00
Lex Christopherson
1c68dc2906 chore: auto-commit before switching to gsd/M002/S01 2026-03-12 15:32:39 -06:00
Lex Christopherson
4e92a49d45 docs(M002): context, requirements, and roadmap 2026-03-12 14:01:07 -06:00
Lex Christopherson
b17ab25aaa chore: remove .gsd/ from tracking (already in .gitignore) 2026-03-12 13:21:18 -06:00
Lex Christopherson
cd01a47461 feat(M001/S06): Cleanup and archive 2026-03-12 13:21:18 -06:00
Lex Christopherson
d43322c45d feat(M001/S05): Enhanced features — merge guards, snapshots, auto-push, rich commits 2026-03-12 13:21:18 -06:00
Lex Christopherson
d9d773e44e feat(M001/S04): Remove git commands from prompts 2026-03-12 13:21:05 -06:00