Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .context/DANGER-ZONES.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Enriched 2026-06-09 via GitNexus (index @ 60d8e823, 27,927 symbols,
entire codebase (up from 69 in the 2026-04 enrichment):
entry.Write, index.Reindex, journal state.Save, crypto.SaveKey,
tidy.WriteArchive, memory (Sync, Publish, Archive, SaveState),
initialize/* (templates, vscode, plugin, kb, backup, merge),
initialize/* (templates, plugin, kb, backup, merge),
system/* (persistence, counter, heartbeat, load gate), all
setup/* deployers (now including opencode and copilotcli), pad
store/history, trace hooks, task archive/complete/snapshot,
Expand Down
6 changes: 3 additions & 3 deletions .context/audit/eh-silent-errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,9 @@ These are not style nits — they silently lose or corrupt data:
| B-data | `internal/hub/replicate.go:121` | `_, _ = store.Append([]Entry{entry})` | store.Append error dropped; replicated entry silently lost — stderr/return |
| FALSE-POS | `internal/memory/publish.go:170` | `merged, _ := MergePublished(string(existing), formatted)` | 2nd return is a "markers missing" bool, not an error; merged is always valid (verified) |
| besteffort | `internal/cli/memory/cmd/status/run.go:54` | `state, _ := mem.LoadState(contextDir)` | LoadState returns a State value (no nil-deref); display-only "never synced" on error — annotate |
| B-marshal | `internal/cli/initialize/core/vscode/extension.go:59` | `data, _ := json.MarshalIndent(content, "", token.Indent2)` | surface: empty/partial data written on failure |
| B-marshal | `internal/cli/initialize/core/vscode/mcp.go:50` | `data, _ := json.MarshalIndent(file, "", token.Indent2)` | surface: empty/partial data written on failure |
| B-marshal | `internal/cli/initialize/core/vscode/tasks.go:59` | `data, _ := json.MarshalIndent(file, "", token.Indent2)` | surface: empty/partial data written on failure |
| B-marshal | `internal/cli/initialize/core/vscode/extension.go:59` | `data, _ := json.MarshalIndent(content, "", token.Indent2)` | surface: empty/partial data written on failure (package since removed as dead code) |
| B-marshal | `internal/cli/initialize/core/vscode/mcp.go:50` | `data, _ := json.MarshalIndent(file, "", token.Indent2)` | surface: empty/partial data written on failure (package since removed as dead code) |
| B-marshal | `internal/cli/initialize/core/vscode/tasks.go:59` | `data, _ := json.MarshalIndent(file, "", token.Indent2)` | surface: empty/partial data written on failure (package since removed as dead code) |
| B-marshal | `internal/cli/setup/core/copilot/vscode.go:57` | `data, _ := json.MarshalIndent(mcpCfg, "", token.Indent2)` | surface: empty/partial data written on failure |
| B-marshal | `internal/cli/system/cmd/blocknonpathctx/run.go:82` | `data, _ := json.Marshal(resp)` | surface: empty/partial data written on failure |
| B-marshal | `internal/cli/system/core/session/session.go:91` | `_ = json.Unmarshal(res.data, &input)` | json.Unmarshal of hook stdin; best-effort w/ timeout — annotate, or stderr |
Expand Down
2 changes: 1 addition & 1 deletion .ctxrc.dev
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ profile: dev
# context_dir: .context
# token_budget: 8000
# auto_archive: true
# archive_after_days: 7
# archive_after_days: 7 (inert; kept for backward compatibility)
# scratchpad_encrypt: true
# entry_count_learnings: 30
# entry_count_decisions: 20
Expand Down
4 changes: 2 additions & 2 deletions docs/cli/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ priority_order: # File loading priority
- DECISIONS.md
- CONVENTIONS.md
auto_archive: true # Auto-archive old items
archive_after_days: 7 # Days before archiving tasks
archive_after_days: 7 # Inert; kept for backward compatibility
scratchpad_encrypt: true # Encrypt scratchpad (default: true)
event_log: false # Enable local hook event logging
companion_check: true # Check companion tools at session start
Expand Down Expand Up @@ -211,7 +211,7 @@ dream: # ctx-dream config (opt-in; off by default)
| `token_budget` | `int` | `8000` | Default token budget for `ctx agent` |
| `priority_order` | `[]string` | *(all files)* | File loading priority for context packets |
| `auto_archive` | `bool` | `true` | Auto-archive completed tasks |
| `archive_after_days` | `int` | `7` | Days before completed tasks are archived |
| `archive_after_days` | `int` | `7` | Inert; retained for backward compatibility (no longer read) |
| `scratchpad_encrypt` | `bool` | `true` | Encrypt scratchpad with AES-256-GCM |
| `event_log` | `bool` | `false` | Enable local hook event logging to `.context/state/events.jsonl` |
| `companion_check` | `bool` | `true` | Check companion tool availability (canonical: Gemini Search, GitNexus; equivalents work) during `/ctx-remember`|
Expand Down
4 changes: 2 additions & 2 deletions docs/home/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ A commented `.ctxrc` showing all options and their defaults:
#
# token_budget: 8000
# auto_archive: true
# archive_after_days: 7
# archive_after_days: 7 # inert; kept for backward compatibility
# scratchpad_encrypt: true
# event_log: false
# entry_count_learnings: 30
Expand Down Expand Up @@ -136,7 +136,7 @@ A commented `.ctxrc` showing all options and their defaults:
|-------------------------|------------|---------------|-------------------------------------------------------------------------------------------------------------------------------------------|
| `token_budget` | `int` | `8000` | Default token budget for `ctx agent` and `ctx load` |
| `auto_archive` | `bool` | `true` | Auto-archive completed tasks during `ctx compact` |
| `archive_after_days` | `int` | `7` | Days before completed tasks are archived |
| `archive_after_days` | `int` | `7` | Inert; retained for backward compatibility (no longer read) |
| `scratchpad_encrypt` | `bool` | `true` | Encrypt scratchpad with AES-256-GCM |
| `event_log` | `bool` | `false` | Enable local hook event logging to `.context/state/events.jsonl` |
| `entry_count_learnings` | `int` | `30` | Drift warning when `LEARNINGS.md` exceeds this entry count (0 = disable) |
Expand Down
2 changes: 0 additions & 2 deletions internal/assets/commands/text/errors.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,6 @@ err.dream.proposal-not-found:
short: 'dream: proposal %q not found in %s'
err.dream.read-proposals:
short: 'dream: read proposals %s: %w'
err.dream.read-source:
short: 'dream: read source %s: %w'
err.dream.scan-ideas:
short: 'dream: scan ideas %s: %w'
err.dream.unknown-action:
Expand Down
11 changes: 0 additions & 11 deletions internal/assets/commands/text/write.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1025,17 +1025,6 @@ write.knowledge-unit-bytes:
write.version-drift-fallback:
short: "VERSION (%s), plugin.json (%s), marketplace.json (%s) are out of sync. Update all three before releasing."

write.vscode-created:
short: " ✓ %s"
write.vscode-exists-skipped:
short: " ○ %s (exists, skipped)"
write.vscode-recommendation-exists:
short: " ○ %s (recommendation exists)"
write.vscode-add-manually:
short: " ○ %s (exists, add %s manually)"
write.vscode-warn-non-fatal:
short: " ⚠ %s: %v"

write.steering-desc-product:
short: "Product context, goals, and target users"
write.steering-desc-tech:
Expand Down
34 changes: 0 additions & 34 deletions internal/assets/hooks/messages/hooks.go

This file was deleted.

21 changes: 4 additions & 17 deletions internal/assets/hooks/messages/registry_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,12 @@ func TestRegistryCount(t *testing.T) {
}

func TestRegistryYAMLParses(t *testing.T) {
if parseErr := registryError(); parseErr != nil {
t.Fatalf("registryError() = %v, want nil", parseErr)
entries := Registry()
if registryErr != nil {
t.Fatalf("Registry() parse error: %v, want nil", registryErr)
}

for i, entry := range Registry() {
for i, entry := range entries {
if entry.Hook == "" {
t.Errorf("entry %d: empty hook", i)
}
Expand Down Expand Up @@ -72,20 +73,6 @@ func TestLookupUnknown(t *testing.T) {
}
}

func TestHooksReturnsUniqueNames(t *testing.T) {
hooks := hooks()
if len(hooks) == 0 {
t.Fatal("Hooks() returned empty list")
}
seen := make(map[string]bool)
for _, h := range hooks {
if seen[h] {
t.Errorf("Hooks() returned duplicate: %q", h)
}
seen[h] = true
}
}

func TestVariantsKnownHook(t *testing.T) {
variants := Variants("check-context-size")
if len(variants) != 4 {
Expand Down
2 changes: 1 addition & 1 deletion internal/assets/schema/ctxrc.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
},
"archive_after_days": {
"type": "integer",
"description": "Days before archiving completed tasks. Default: 7.",
"description": "Inert: no longer read by any command; retained so existing .ctxrc files remain valid. Default: 7.",
"minimum": 0
},
"scratchpad_encrypt": {
Expand Down
5 changes: 1 addition & 4 deletions internal/cli/initialize/core/doc.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,11 @@
// by entry and other sub-packages.
// - validate: pre-flight checks (ctx in PATH,
// essential files present).
// - vscode: generates VS Code workspace files
// (extensions.json, tasks.json, mcp.json).
//
// # Data Flow
//
// The cmd layer's Run function orchestrates the init
// pipeline by calling into these sub-packages in order:
// validate, project scaffolding, entry templates, claude
// handling, pad setup, plugin detection, and vscode
// configuration.
// handling, pad setup, and plugin detection.
package core
53 changes: 0 additions & 53 deletions internal/cli/initialize/core/vscode/doc.go

This file was deleted.

70 changes: 0 additions & 70 deletions internal/cli/initialize/core/vscode/extension.go

This file was deleted.

64 changes: 0 additions & 64 deletions internal/cli/initialize/core/vscode/mcp.go

This file was deleted.

Loading
Loading