Skip to content

fix: correct statusline context calculation and track hooks in manifest (#769)#876

Open
0xLeathery wants to merge 10 commits intogsd-build:mainfrom
0xLeathery:fix/statusline-only
Open

fix: correct statusline context calculation and track hooks in manifest (#769)#876
0xLeathery wants to merge 10 commits intogsd-build:mainfrom
0xLeathery:fix/statusline-only

Conversation

@0xLeathery
Copy link
Contributor

Summary

  • Corrected context bar calculation to use Claude Code's actual 16.5% autocompact buffer instead of hardcoded 80% ceiling
  • Updated color thresholds: green < 50%, yellow < 65%, orange < 80%, red >= 80%
  • Display now shows two decimal places (e.g. 42.37%)
  • Added gsd-statusline.js, gsd-check-update.js, and gsd-context-monitor.js to gsd-file-manifest.json

Replaces #845 with a clean, focused diff (3 files, 31 insertions).

Test plan

  • Statusline shows correct context percentage
  • Color thresholds match documented levels
  • /gsd:update detects local modifications to hook files

Ethan Hurst added 10 commits March 3, 2026 12:54
Command shipped in a92512a but was missing from all documentation.
Added to help.md (full reference + common workflows), README.md
command table, and USER-GUIDE.md command reference.
Add centralized path resolution layer (paths.cjs) that enables
milestone-scoped directories for parallel milestone work. All 11 lib
files refactored to use resolvePlanningPaths() instead of hardcoded
.planning/ paths.

Key changes:
- New paths.cjs: resolvePlanningPaths(cwd, milestoneOverride) resolves
  abs/rel paths based on ACTIVE_MILESTONE file or --milestone CLI flag
- --milestone <name> CLI flag parsed in gsd-tools.cjs
- New commands: milestone create/switch/list/status
- All init commands output milestone, is_multi_milestone, planning_base
- Legacy mode (no ACTIVE_MILESTONE) returns identical paths to before
- Auto-migration: first milestone create copies existing global state
- 25 new tests for paths and milestone commands (457 total, 0 failures)
Replace hardcoded .planning/ paths in bash commands and commit
file lists with init JSON variables ({state_path}, {roadmap_path},
{planning_base}/...). Workflows without init calls gain appropriate
init calls. Global paths (PROJECT.md, codebase/) left unchanged.
…tusline, and docs (gsd-build#291)

Phase 5: polish for concurrent milestone execution.
- Milestone-scoped commit prefixes in execute-plan.md (v2.0/08-02)
- cmdMilestoneSwitch warns about in-progress work before switching
- /gsd:switch-milestone workflow and command
- Statusline shows active milestone in cyan [v2.0]
- new-milestone.md calls milestone create for multi-milestone mode
- Help and README updated with switch-milestone and concurrent docs
…itch-warning tests (gsd-build#291)

- USER-GUIDE: add /gsd:switch-milestone, concurrent milestones section,
  multi-milestone directory layout
- CHANGELOG: add [Unreleased] entry for concurrent milestone execution
- planner-subagent-prompt.md: replace hardcoded .planning/ paths with
  milestone-aware template variables
- 4 new tests: switch in-progress warning, idle switch, same-milestone
  switch, and auto-migration on first milestone create (461 total)
…ration (gsd-build#99)

Add structured bug reporting lifecycle: report → triage → investigate → fix → resolve.

- Skill file, workflow, and bug-report template
- CLI commands: bug list/update/resolve, init bugs, scaffold bugs
- Severity inference from keywords (critical/high/medium/low)
- Diagnostic log capture (git state, error output, log files)
- Optional GitHub issue creation via gh CLI
- 13 new tests across 4 test suites
- Registered in help, README, USER-GUIDE, CHANGELOG
- STATE.md and progress workflow track active bugs
…ion (gsd-build#210)

Add fourth model profile (adaptive) that auto-selects models per-plan
based on complexity scoring. Includes medium tier alignment with balanced
profile, keyword regex precision fixes, enriched plan context (type,
depends_on), usage logging, verifier adaptive resolution, and additional
scoring signals (TDD, dependencies, test files). 528 tests passing.
)

resolveModelInternal was converting every 'opus' result to 'inherit'
before returning it. 'inherit' tells Claude Code's Task tool to use
the parent session's model — which defaults to Sonnet 4.6, silently
running quality/balanced-profile agents on the wrong model.

Pass 'opus' directly; Claude Code's Task tool resolves it to the
current Opus version. Orgs that block Opus will now get a clear error
instead of a silent Sonnet downgrade.

- Remove opus → 'inherit' conversion from all 3 return sites in
  resolveModelInternal (core.cjs)
- Update 7 test assertions and fix validValues set (core.test.cjs)
- Update model-profiles.md, model-profile-resolution.md, and
  adaptive-model-selection.md to reflect the change
Installs GSD commands as Kimi skills to the XDG path
~/.config/agents/skills/gsd-<name>/SKILL.md (invoked via /skill:gsd-<name>)
and agents as dual-file YAML + system prompt under ~/.kimi/agents/.

- Full Claude→Kimi tool name mapping (kimi_cli.tools.file:ReadFile, etc.)
- MCP tools excluded from agent tool lists
- ${VAR} escaping in agent system prompts
- --kimi --local guard with clear error message
- KIMI_CONFIG_DIR / KIMI_SKILLS_DIR env overrides
- 25 new tests in tests/kimi-config.test.cjs (553 total, 0 failures)
…st (gsd-build#769)

- Replace 80% scaling with 16.5% autocompact buffer subtraction so
  displayed percentage reflects when compaction is actually imminent
- Update color thresholds to 50/65/80 (green/yellow/orange/red)
- Switch display to toFixed(2) so small context changes are visible
- Add gsd-statusline.js, gsd-check-update.js, gsd-context-monitor.js
  to writeManifest() so local edits are backed up before /gsd:update
@0xLeathery 0xLeathery force-pushed the fix/statusline-only branch from e3af3fd to c91eb08 Compare March 3, 2026 03:12
@0xLeathery
Copy link
Contributor Author

Depends on #875 — this branch is based on feat/consolidated-features. Merge #875 first, then this PR shows only the statusline fix (3 files).

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