@nanonets/graft 0.24.0 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -21
- package/dist/ask/ask.d.ts +8 -0
- package/dist/ask/ask.d.ts.map +1 -1
- package/dist/ask/ask.js +33 -12
- package/dist/ask/ask.js.map +1 -1
- package/dist/blast/render.js +1 -1
- package/dist/blast/render.js.map +1 -1
- package/dist/brand.js +1 -1
- package/dist/brand.js.map +1 -1
- package/dist/check/learning-edits.d.ts +18 -3
- package/dist/check/learning-edits.d.ts.map +1 -1
- package/dist/check/learning-edits.js +54 -10
- package/dist/check/learning-edits.js.map +1 -1
- package/dist/check/local-check.d.ts +7 -3
- package/dist/check/local-check.d.ts.map +1 -1
- package/dist/check/local-check.js +55 -11
- package/dist/check/local-check.js.map +1 -1
- package/dist/check/types.d.ts +11 -2
- package/dist/check/types.d.ts.map +1 -1
- package/dist/claude/format.d.ts +11 -7
- package/dist/claude/format.d.ts.map +1 -1
- package/dist/claude/format.js +50 -28
- package/dist/claude/format.js.map +1 -1
- package/dist/claude/hook-io.d.ts +44 -0
- package/dist/claude/hook-io.d.ts.map +1 -0
- package/dist/claude/hook-io.js +144 -0
- package/dist/claude/hook-io.js.map +1 -0
- package/dist/claude/hook-layers.d.ts +4 -2
- package/dist/claude/hook-layers.d.ts.map +1 -1
- package/dist/claude/hook-layers.js +21 -4
- package/dist/claude/hook-layers.js.map +1 -1
- package/dist/claude/hooks.d.ts +9 -32
- package/dist/claude/hooks.d.ts.map +1 -1
- package/dist/claude/hooks.js +154 -350
- package/dist/claude/hooks.js.map +1 -1
- package/dist/claude/init.d.ts.map +1 -1
- package/dist/claude/init.js +56 -18
- package/dist/claude/init.js.map +1 -1
- package/dist/claude/note-signals.d.ts +6 -0
- package/dist/claude/note-signals.d.ts.map +1 -1
- package/dist/claude/note-signals.js +14 -3
- package/dist/claude/note-signals.js.map +1 -1
- package/dist/claude/post-bash.d.ts +26 -0
- package/dist/claude/post-bash.d.ts.map +1 -0
- package/dist/claude/post-bash.js +191 -0
- package/dist/claude/post-bash.js.map +1 -0
- package/dist/claude/pre-bash-skills.d.ts +21 -0
- package/dist/claude/pre-bash-skills.d.ts.map +1 -0
- package/dist/claude/pre-bash-skills.js +253 -0
- package/dist/claude/pre-bash-skills.js.map +1 -0
- package/dist/claude/pre-bash.d.ts +50 -0
- package/dist/claude/pre-bash.d.ts.map +1 -0
- package/dist/claude/pre-bash.js +245 -0
- package/dist/claude/pre-bash.js.map +1 -0
- package/dist/claude/prompt-consent.d.ts +19 -0
- package/dist/claude/prompt-consent.d.ts.map +1 -0
- package/dist/claude/prompt-consent.js +14 -0
- package/dist/claude/prompt-consent.js.map +1 -0
- package/dist/claude/prompt-hook.d.ts +76 -0
- package/dist/claude/prompt-hook.d.ts.map +1 -0
- package/dist/claude/prompt-hook.js +303 -0
- package/dist/claude/prompt-hook.js.map +1 -0
- package/dist/claude/prompt-skills.d.ts +19 -0
- package/dist/claude/prompt-skills.d.ts.map +1 -0
- package/dist/claude/prompt-skills.js +305 -0
- package/dist/claude/prompt-skills.js.map +1 -0
- package/dist/claude/session-metrics.js +4 -4
- package/dist/claude/session-metrics.js.map +1 -1
- package/dist/claude/settings-merge.d.ts +10 -0
- package/dist/claude/settings-merge.d.ts.map +1 -1
- package/dist/claude/settings-merge.js +46 -17
- package/dist/claude/settings-merge.js.map +1 -1
- package/dist/claude/shim-template.d.ts.map +1 -1
- package/dist/claude/shim-template.js +86 -28
- package/dist/claude/shim-template.js.map +1 -1
- package/dist/claude/skill-template.d.ts +2 -0
- package/dist/claude/skill-template.d.ts.map +1 -1
- package/dist/claude/skill-template.js +53 -34
- package/dist/claude/skill-template.js.map +1 -1
- package/dist/claude/skill-use.d.ts +16 -0
- package/dist/claude/skill-use.d.ts.map +1 -0
- package/dist/claude/skill-use.js +78 -0
- package/dist/claude/skill-use.js.map +1 -0
- package/dist/claude/skills-hook-util.d.ts +25 -0
- package/dist/claude/skills-hook-util.d.ts.map +1 -0
- package/dist/claude/skills-hook-util.js +71 -0
- package/dist/claude/skills-hook-util.js.map +1 -0
- package/dist/claude/skills-wiring.d.ts +26 -0
- package/dist/claude/skills-wiring.d.ts.map +1 -0
- package/dist/claude/skills-wiring.js +110 -0
- package/dist/claude/skills-wiring.js.map +1 -0
- package/dist/claude/start-init.d.ts +13 -0
- package/dist/claude/start-init.d.ts.map +1 -0
- package/dist/claude/start-init.js +75 -0
- package/dist/claude/start-init.js.map +1 -0
- package/dist/claude/start-skills.d.ts +31 -0
- package/dist/claude/start-skills.d.ts.map +1 -0
- package/dist/claude/start-skills.js +274 -0
- package/dist/claude/start-skills.js.map +1 -0
- package/dist/claude/state.d.ts +19 -7
- package/dist/claude/state.d.ts.map +1 -1
- package/dist/claude/state.js +59 -4
- package/dist/claude/state.js.map +1 -1
- package/dist/claude/stop-skills.d.ts +23 -0
- package/dist/claude/stop-skills.d.ts.map +1 -0
- package/dist/claude/stop-skills.js +233 -0
- package/dist/claude/stop-skills.js.map +1 -0
- package/dist/claude/stop.d.ts +23 -0
- package/dist/claude/stop.d.ts.map +1 -0
- package/dist/claude/stop.js +219 -0
- package/dist/claude/stop.js.map +1 -0
- package/dist/claude/tally.d.ts +29 -41
- package/dist/claude/tally.d.ts.map +1 -1
- package/dist/claude/tally.js +111 -165
- package/dist/claude/tally.js.map +1 -1
- package/dist/claude/walls-hook.d.ts +52 -0
- package/dist/claude/walls-hook.d.ts.map +1 -0
- package/dist/claude/walls-hook.js +279 -0
- package/dist/claude/walls-hook.js.map +1 -0
- package/dist/cli-epilogue.d.ts.map +1 -1
- package/dist/cli-epilogue.js +24 -14
- package/dist/cli-epilogue.js.map +1 -1
- package/dist/cli-meta.js +3 -3
- package/dist/cli-meta.js.map +1 -1
- package/dist/cli-picker.d.ts +24 -0
- package/dist/cli-picker.d.ts.map +1 -1
- package/dist/cli-picker.js +44 -11
- package/dist/cli-picker.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +475 -390
- package/dist/cli.js.map +1 -1
- package/dist/cloud/head-learnings.d.ts +13 -0
- package/dist/cloud/head-learnings.d.ts.map +1 -0
- package/dist/cloud/head-learnings.js +84 -0
- package/dist/cloud/head-learnings.js.map +1 -0
- package/dist/cloud/lookup-activity.d.ts +18 -0
- package/dist/cloud/lookup-activity.d.ts.map +1 -0
- package/dist/cloud/lookup-activity.js +56 -0
- package/dist/cloud/lookup-activity.js.map +1 -0
- package/dist/cloud/nudge.d.ts +15 -7
- package/dist/cloud/nudge.d.ts.map +1 -1
- package/dist/cloud/nudge.js +45 -33
- package/dist/cloud/nudge.js.map +1 -1
- package/dist/cloud/onboarding.d.ts +273 -0
- package/dist/cloud/onboarding.d.ts.map +1 -0
- package/dist/cloud/onboarding.js +612 -0
- package/dist/cloud/onboarding.js.map +1 -0
- package/dist/cloud/other-repos.d.ts +39 -0
- package/dist/cloud/other-repos.d.ts.map +1 -0
- package/dist/cloud/other-repos.js +137 -0
- package/dist/cloud/other-repos.js.map +1 -0
- package/dist/cloud/pair.d.ts +86 -0
- package/dist/cloud/pair.d.ts.map +1 -0
- package/dist/cloud/pair.js +270 -0
- package/dist/cloud/pair.js.map +1 -0
- package/dist/cloud/workspace-sync.d.ts +75 -11
- package/dist/cloud/workspace-sync.d.ts.map +1 -1
- package/dist/cloud/workspace-sync.js +409 -53
- package/dist/cloud/workspace-sync.js.map +1 -1
- package/dist/cloud/workspace.d.ts +95 -10
- package/dist/cloud/workspace.d.ts.map +1 -1
- package/dist/cloud/workspace.js +112 -9
- package/dist/cloud/workspace.js.map +1 -1
- package/dist/graph/native.d.ts +2 -0
- package/dist/graph/native.d.ts.map +1 -1
- package/dist/graph/native.js +29 -4
- package/dist/graph/native.js.map +1 -1
- package/dist/hosts/claude-global.d.ts +14 -0
- package/dist/hosts/claude-global.d.ts.map +1 -1
- package/dist/hosts/claude-global.js +39 -4
- package/dist/hosts/claude-global.js.map +1 -1
- package/dist/hosts/codex-hooks.d.ts +6 -0
- package/dist/hosts/codex-hooks.d.ts.map +1 -1
- package/dist/hosts/codex-hooks.js +89 -16
- package/dist/hosts/codex-hooks.js.map +1 -1
- package/dist/hosts/codex-trust.d.ts +28 -0
- package/dist/hosts/codex-trust.d.ts.map +1 -0
- package/dist/hosts/codex-trust.js +280 -0
- package/dist/hosts/codex-trust.js.map +1 -0
- package/dist/hosts/cursor-hooks.d.ts.map +1 -1
- package/dist/hosts/cursor-hooks.js +3 -1
- package/dist/hosts/cursor-hooks.js.map +1 -1
- package/dist/init/candidates.d.ts +60 -0
- package/dist/init/candidates.d.ts.map +1 -0
- package/dist/init/candidates.js +202 -0
- package/dist/init/candidates.js.map +1 -0
- package/dist/init/claude-call.d.ts +51 -0
- package/dist/init/claude-call.d.ts.map +1 -0
- package/dist/init/claude-call.js +199 -0
- package/dist/init/claude-call.js.map +1 -0
- package/dist/init/discover-worker.d.ts +18 -0
- package/dist/init/discover-worker.d.ts.map +1 -0
- package/dist/init/discover-worker.js +111 -0
- package/dist/init/discover-worker.js.map +1 -0
- package/dist/init/handover.d.ts +16 -0
- package/dist/init/handover.d.ts.map +1 -0
- package/dist/init/handover.js +92 -0
- package/dist/init/handover.js.map +1 -0
- package/dist/init/howtos.d.ts +20 -0
- package/dist/init/howtos.d.ts.map +1 -0
- package/dist/init/howtos.js +90 -0
- package/dist/init/howtos.js.map +1 -0
- package/dist/init/init-record.d.ts +134 -0
- package/dist/init/init-record.d.ts.map +1 -0
- package/dist/init/init-record.js +339 -0
- package/dist/init/init-record.js.map +1 -0
- package/dist/init/install-paths.d.ts +6 -0
- package/dist/init/install-paths.d.ts.map +1 -0
- package/dist/init/install-paths.js +87 -0
- package/dist/init/install-paths.js.map +1 -0
- package/dist/init/install-record.d.ts +21 -0
- package/dist/init/install-record.d.ts.map +1 -0
- package/dist/init/install-record.js +144 -0
- package/dist/init/install-record.js.map +1 -0
- package/dist/init/keep-answer.d.ts +43 -0
- package/dist/init/keep-answer.d.ts.map +1 -0
- package/dist/init/keep-answer.js +118 -0
- package/dist/init/keep-answer.js.map +1 -0
- package/dist/init/keep-gate.d.ts +30 -0
- package/dist/init/keep-gate.d.ts.map +1 -0
- package/dist/init/keep-gate.js +178 -0
- package/dist/init/keep-gate.js.map +1 -0
- package/dist/init/keep-list.d.ts +67 -0
- package/dist/init/keep-list.d.ts.map +1 -0
- package/dist/init/keep-list.js +232 -0
- package/dist/init/keep-list.js.map +1 -0
- package/dist/init/keep.d.ts +52 -0
- package/dist/init/keep.d.ts.map +1 -0
- package/dist/init/keep.js +393 -0
- package/dist/init/keep.js.map +1 -0
- package/dist/init/look-back-mine.d.ts +37 -0
- package/dist/init/look-back-mine.d.ts.map +1 -0
- package/dist/init/look-back-mine.js +215 -0
- package/dist/init/look-back-mine.js.map +1 -0
- package/dist/init/look-back.d.ts +81 -0
- package/dist/init/look-back.d.ts.map +1 -0
- package/dist/init/look-back.js +170 -0
- package/dist/init/look-back.js.map +1 -0
- package/dist/init/miners.d.ts +46 -0
- package/dist/init/miners.d.ts.map +1 -0
- package/dist/init/miners.js +141 -0
- package/dist/init/miners.js.map +1 -0
- package/dist/init/name-call.d.ts +37 -0
- package/dist/init/name-call.d.ts.map +1 -0
- package/dist/init/name-call.js +151 -0
- package/dist/init/name-call.js.map +1 -0
- package/dist/init/plain-file.d.ts +11 -0
- package/dist/init/plain-file.d.ts.map +1 -0
- package/dist/init/plain-file.js +83 -0
- package/dist/init/plain-file.js.map +1 -0
- package/dist/init/prefs.d.ts +70 -0
- package/dist/init/prefs.d.ts.map +1 -0
- package/dist/init/prefs.js +282 -0
- package/dist/init/prefs.js.map +1 -0
- package/dist/init/relay.d.ts +15 -0
- package/dist/init/relay.d.ts.map +1 -0
- package/dist/init/relay.js +15 -0
- package/dist/init/relay.js.map +1 -0
- package/dist/init/replay-runs.d.ts +121 -0
- package/dist/init/replay-runs.d.ts.map +1 -0
- package/dist/init/replay-runs.js +457 -0
- package/dist/init/replay-runs.js.map +1 -0
- package/dist/init/replay-tamper.d.ts +18 -0
- package/dist/init/replay-tamper.d.ts.map +1 -0
- package/dist/init/replay-tamper.js +87 -0
- package/dist/init/replay-tamper.js.map +1 -0
- package/dist/init/review-screen.d.ts +74 -0
- package/dist/init/review-screen.d.ts.map +1 -0
- package/dist/init/review-screen.js +258 -0
- package/dist/init/review-screen.js.map +1 -0
- package/dist/init/review-tty.d.ts +29 -0
- package/dist/init/review-tty.d.ts.map +1 -0
- package/dist/init/review-tty.js +218 -0
- package/dist/init/review-tty.js.map +1 -0
- package/dist/init/review.d.ts +12 -0
- package/dist/init/review.d.ts.map +1 -0
- package/dist/init/review.js +12 -0
- package/dist/init/review.js.map +1 -0
- package/dist/init/run.d.ts +87 -0
- package/dist/init/run.d.ts.map +1 -0
- package/dist/init/run.js +347 -0
- package/dist/init/run.js.map +1 -0
- package/dist/init/sessions.d.ts +63 -0
- package/dist/init/sessions.d.ts.map +1 -0
- package/dist/init/sessions.js +377 -0
- package/dist/init/sessions.js.map +1 -0
- package/dist/init/transcript.d.ts +81 -0
- package/dist/init/transcript.d.ts.map +1 -0
- package/dist/init/transcript.js +216 -0
- package/dist/init/transcript.js.map +1 -0
- package/dist/init/types.d.ts +139 -0
- package/dist/init/types.d.ts.map +1 -0
- package/dist/init/types.js +2 -0
- package/dist/init/types.js.map +1 -0
- package/dist/mcp/brains.d.ts +72 -0
- package/dist/mcp/brains.d.ts.map +1 -0
- package/dist/mcp/brains.js +220 -0
- package/dist/mcp/brains.js.map +1 -0
- package/dist/mcp/server.d.ts +3 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +40 -5
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +7 -2
- package/dist/mcp/tools.js.map +1 -1
- package/dist/notes/cold-start.d.ts +5 -184
- package/dist/notes/cold-start.d.ts.map +1 -1
- package/dist/notes/cold-start.js +5 -575
- package/dist/notes/cold-start.js.map +1 -1
- package/dist/notes/edit-overlap.d.ts.map +1 -1
- package/dist/notes/edit-overlap.js +4 -1
- package/dist/notes/edit-overlap.js.map +1 -1
- package/dist/notes/every-repo.d.ts +18 -0
- package/dist/notes/every-repo.d.ts.map +1 -0
- package/dist/notes/every-repo.js +86 -0
- package/dist/notes/every-repo.js.map +1 -0
- package/dist/notes/guardrails.d.ts +8 -0
- package/dist/notes/guardrails.d.ts.map +1 -0
- package/dist/notes/guardrails.js +38 -0
- package/dist/notes/guardrails.js.map +1 -0
- package/dist/notes/lesson-index.d.ts +13 -0
- package/dist/notes/lesson-index.d.ts.map +1 -0
- package/dist/notes/lesson-index.js +135 -0
- package/dist/notes/lesson-index.js.map +1 -0
- package/dist/notes/linked-learnings.d.ts +8 -0
- package/dist/notes/linked-learnings.d.ts.map +1 -0
- package/dist/notes/linked-learnings.js +113 -0
- package/dist/notes/linked-learnings.js.map +1 -0
- package/dist/notes/notes.d.ts +8 -4
- package/dist/notes/notes.d.ts.map +1 -1
- package/dist/notes/notes.js +9 -7
- package/dist/notes/notes.js.map +1 -1
- package/dist/notes/pr-reviews.d.ts +4 -0
- package/dist/notes/pr-reviews.d.ts.map +1 -1
- package/dist/notes/pr-reviews.js +6 -5
- package/dist/notes/pr-reviews.js.map +1 -1
- package/dist/notes/replace.d.ts +14 -0
- package/dist/notes/replace.d.ts.map +1 -0
- package/dist/notes/replace.js +38 -0
- package/dist/notes/replace.js.map +1 -0
- package/dist/notes/repo-notes-dir.d.ts +2 -0
- package/dist/notes/repo-notes-dir.d.ts.map +1 -0
- package/dist/notes/repo-notes-dir.js +16 -0
- package/dist/notes/repo-notes-dir.js.map +1 -0
- package/dist/notes/repo-trail.d.ts +1 -1
- package/dist/notes/repo-trail.d.ts.map +1 -1
- package/dist/notes/repo-trail.js +24 -4
- package/dist/notes/repo-trail.js.map +1 -1
- package/dist/search/grep.d.ts.map +1 -1
- package/dist/search/grep.js +4 -2
- package/dist/search/grep.js.map +1 -1
- package/dist/search/user-regexp.d.ts +26 -0
- package/dist/search/user-regexp.d.ts.map +1 -0
- package/dist/search/user-regexp.js +150 -0
- package/dist/search/user-regexp.js.map +1 -0
- package/dist/skills/anchors-cli.d.ts +38 -0
- package/dist/skills/anchors-cli.d.ts.map +1 -0
- package/dist/skills/anchors-cli.js +279 -0
- package/dist/skills/anchors-cli.js.map +1 -0
- package/dist/skills/anchors-git.d.ts +29 -0
- package/dist/skills/anchors-git.d.ts.map +1 -0
- package/dist/skills/anchors-git.js +241 -0
- package/dist/skills/anchors-git.js.map +1 -0
- package/dist/skills/anchors-wide.d.ts +25 -0
- package/dist/skills/anchors-wide.d.ts.map +1 -0
- package/dist/skills/anchors-wide.js +481 -0
- package/dist/skills/anchors-wide.js.map +1 -0
- package/dist/skills/anchors.d.ts +32 -0
- package/dist/skills/anchors.d.ts.map +1 -0
- package/dist/skills/anchors.js +485 -0
- package/dist/skills/anchors.js.map +1 -0
- package/dist/skills/check-result.d.ts +26 -0
- package/dist/skills/check-result.d.ts.map +1 -0
- package/dist/skills/check-result.js +46 -0
- package/dist/skills/check-result.js.map +1 -0
- package/dist/skills/cli-skills-1b.d.ts +17 -0
- package/dist/skills/cli-skills-1b.d.ts.map +1 -0
- package/dist/skills/cli-skills-1b.js +166 -0
- package/dist/skills/cli-skills-1b.js.map +1 -0
- package/dist/skills/cli-skills-2.d.ts +35 -0
- package/dist/skills/cli-skills-2.d.ts.map +1 -0
- package/dist/skills/cli-skills-2.js +129 -0
- package/dist/skills/cli-skills-2.js.map +1 -0
- package/dist/skills/cli-skills-report-1b.d.ts +49 -0
- package/dist/skills/cli-skills-report-1b.d.ts.map +1 -0
- package/dist/skills/cli-skills-report-1b.js +191 -0
- package/dist/skills/cli-skills-report-1b.js.map +1 -0
- package/dist/skills/cli-skills-report.d.ts +86 -0
- package/dist/skills/cli-skills-report.d.ts.map +1 -0
- package/dist/skills/cli-skills-report.js +121 -0
- package/dist/skills/cli-skills-report.js.map +1 -0
- package/dist/skills/cli-skills.d.ts +30 -0
- package/dist/skills/cli-skills.d.ts.map +1 -0
- package/dist/skills/cli-skills.js +379 -0
- package/dist/skills/cli-skills.js.map +1 -0
- package/dist/skills/codex-sandbox.d.ts +6 -0
- package/dist/skills/codex-sandbox.d.ts.map +1 -0
- package/dist/skills/codex-sandbox.js +55 -0
- package/dist/skills/codex-sandbox.js.map +1 -0
- package/dist/skills/compile-split.d.ts +57 -0
- package/dist/skills/compile-split.d.ts.map +1 -0
- package/dist/skills/compile-split.js +550 -0
- package/dist/skills/compile-split.js.map +1 -0
- package/dist/skills/compile-version.d.ts +37 -0
- package/dist/skills/compile-version.d.ts.map +1 -0
- package/dist/skills/compile-version.js +56 -0
- package/dist/skills/compile-version.js.map +1 -0
- package/dist/skills/compile-waits.d.ts +12 -0
- package/dist/skills/compile-waits.d.ts.map +1 -0
- package/dist/skills/compile-waits.js +52 -0
- package/dist/skills/compile-waits.js.map +1 -0
- package/dist/skills/compile-words.d.ts +85 -0
- package/dist/skills/compile-words.d.ts.map +1 -0
- package/dist/skills/compile-words.js +445 -0
- package/dist/skills/compile-words.js.map +1 -0
- package/dist/skills/compile.d.ts +42 -0
- package/dist/skills/compile.d.ts.map +1 -0
- package/dist/skills/compile.js +505 -0
- package/dist/skills/compile.js.map +1 -0
- package/dist/skills/credit-facts.d.ts +8 -0
- package/dist/skills/credit-facts.d.ts.map +1 -0
- package/dist/skills/credit-facts.js +32 -0
- package/dist/skills/credit-facts.js.map +1 -0
- package/dist/skills/credit.d.ts +86 -0
- package/dist/skills/credit.d.ts.map +1 -0
- package/dist/skills/credit.js +259 -0
- package/dist/skills/credit.js.map +1 -0
- package/dist/skills/directive-words.d.ts +11 -0
- package/dist/skills/directive-words.d.ts.map +1 -0
- package/dist/skills/directive-words.js +33 -0
- package/dist/skills/directive-words.js.map +1 -0
- package/dist/skills/fidelity.d.ts +42 -0
- package/dist/skills/fidelity.d.ts.map +1 -0
- package/dist/skills/fidelity.js +138 -0
- package/dist/skills/fidelity.js.map +1 -0
- package/dist/skills/fold-gated.d.ts +3 -0
- package/dist/skills/fold-gated.d.ts.map +1 -0
- package/dist/skills/fold-gated.js +78 -0
- package/dist/skills/fold-gated.js.map +1 -0
- package/dist/skills/fold.d.ts +87 -0
- package/dist/skills/fold.d.ts.map +1 -0
- package/dist/skills/fold.js +348 -0
- package/dist/skills/fold.js.map +1 -0
- package/dist/skills/follow-learnings.d.ts +128 -0
- package/dist/skills/follow-learnings.d.ts.map +1 -0
- package/dist/skills/follow-learnings.js +278 -0
- package/dist/skills/follow-learnings.js.map +1 -0
- package/dist/skills/forget-notice.d.ts +44 -0
- package/dist/skills/forget-notice.d.ts.map +1 -0
- package/dist/skills/forget-notice.js +131 -0
- package/dist/skills/forget-notice.js.map +1 -0
- package/dist/skills/front-version.d.ts +12 -0
- package/dist/skills/front-version.d.ts.map +1 -0
- package/dist/skills/front-version.js +87 -0
- package/dist/skills/front-version.js.map +1 -0
- package/dist/skills/host-facts.d.ts +51 -0
- package/dist/skills/host-facts.d.ts.map +1 -0
- package/dist/skills/host-facts.js +134 -0
- package/dist/skills/host-facts.js.map +1 -0
- package/dist/skills/learning-steps.d.ts +43 -0
- package/dist/skills/learning-steps.d.ts.map +1 -0
- package/dist/skills/learning-steps.js +294 -0
- package/dist/skills/learning-steps.js.map +1 -0
- package/dist/skills/ledger.d.ts +43 -0
- package/dist/skills/ledger.d.ts.map +1 -0
- package/dist/skills/ledger.js +336 -0
- package/dist/skills/ledger.js.map +1 -0
- package/dist/skills/lesson-gate.d.ts +25 -0
- package/dist/skills/lesson-gate.d.ts.map +1 -0
- package/dist/skills/lesson-gate.js +316 -0
- package/dist/skills/lesson-gate.js.map +1 -0
- package/dist/skills/lessons.d.ts +60 -0
- package/dist/skills/lessons.d.ts.map +1 -0
- package/dist/skills/lessons.js +396 -0
- package/dist/skills/lessons.js.map +1 -0
- package/dist/skills/offer-answers.d.ts +20 -0
- package/dist/skills/offer-answers.d.ts.map +1 -0
- package/dist/skills/offer-answers.js +51 -0
- package/dist/skills/offer-answers.js.map +1 -0
- package/dist/skills/offer-drift.d.ts +35 -0
- package/dist/skills/offer-drift.d.ts.map +1 -0
- package/dist/skills/offer-drift.js +98 -0
- package/dist/skills/offer-drift.js.map +1 -0
- package/dist/skills/offer-lesson.d.ts +31 -0
- package/dist/skills/offer-lesson.d.ts.map +1 -0
- package/dist/skills/offer-lesson.js +123 -0
- package/dist/skills/offer-lesson.js.map +1 -0
- package/dist/skills/offer-lines.d.ts +40 -0
- package/dist/skills/offer-lines.d.ts.map +1 -0
- package/dist/skills/offer-lines.js +80 -0
- package/dist/skills/offer-lines.js.map +1 -0
- package/dist/skills/offer-moment.d.ts +102 -0
- package/dist/skills/offer-moment.d.ts.map +1 -0
- package/dist/skills/offer-moment.js +260 -0
- package/dist/skills/offer-moment.js.map +1 -0
- package/dist/skills/offer-repair.d.ts +36 -0
- package/dist/skills/offer-repair.d.ts.map +1 -0
- package/dist/skills/offer-repair.js +212 -0
- package/dist/skills/offer-repair.js.map +1 -0
- package/dist/skills/offer-retire.d.ts +53 -0
- package/dist/skills/offer-retire.d.ts.map +1 -0
- package/dist/skills/offer-retire.js +149 -0
- package/dist/skills/offer-retire.js.map +1 -0
- package/dist/skills/offer-update.d.ts +54 -0
- package/dist/skills/offer-update.d.ts.map +1 -0
- package/dist/skills/offer-update.js +115 -0
- package/dist/skills/offer-update.js.map +1 -0
- package/dist/skills/offer-words-1b.d.ts +32 -0
- package/dist/skills/offer-words-1b.d.ts.map +1 -0
- package/dist/skills/offer-words-1b.js +80 -0
- package/dist/skills/offer-words-1b.js.map +1 -0
- package/dist/skills/offer-words-2.d.ts +123 -0
- package/dist/skills/offer-words-2.d.ts.map +1 -0
- package/dist/skills/offer-words-2.js +194 -0
- package/dist/skills/offer-words-2.js.map +1 -0
- package/dist/skills/offer-words.d.ts +65 -0
- package/dist/skills/offer-words.d.ts.map +1 -0
- package/dist/skills/offer-words.js +205 -0
- package/dist/skills/offer-words.js.map +1 -0
- package/dist/skills/offers.d.ts +66 -0
- package/dist/skills/offers.d.ts.map +1 -0
- package/dist/skills/offers.js +284 -0
- package/dist/skills/offers.js.map +1 -0
- package/dist/skills/own-folder.d.ts +9 -0
- package/dist/skills/own-folder.d.ts.map +1 -0
- package/dist/skills/own-folder.js +36 -0
- package/dist/skills/own-folder.js.map +1 -0
- package/dist/skills/person.d.ts +34 -0
- package/dist/skills/person.d.ts.map +1 -0
- package/dist/skills/person.js +102 -0
- package/dist/skills/person.js.map +1 -0
- package/dist/skills/probe-clean.d.ts +9 -0
- package/dist/skills/probe-clean.d.ts.map +1 -0
- package/dist/skills/probe-clean.js +48 -0
- package/dist/skills/probe-clean.js.map +1 -0
- package/dist/skills/probes.d.ts +26 -0
- package/dist/skills/probes.d.ts.map +1 -0
- package/dist/skills/probes.js +225 -0
- package/dist/skills/probes.js.map +1 -0
- package/dist/skills/recall.d.ts +119 -0
- package/dist/skills/recall.d.ts.map +1 -0
- package/dist/skills/recall.js +370 -0
- package/dist/skills/recall.js.map +1 -0
- package/dist/skills/receipts.d.ts +44 -0
- package/dist/skills/receipts.d.ts.map +1 -0
- package/dist/skills/receipts.js +223 -0
- package/dist/skills/receipts.js.map +1 -0
- package/dist/skills/run-checkout.d.ts +4 -0
- package/dist/skills/run-checkout.d.ts.map +1 -0
- package/dist/skills/run-checkout.js +37 -0
- package/dist/skills/run-checkout.js.map +1 -0
- package/dist/skills/runblock.d.ts +47 -0
- package/dist/skills/runblock.d.ts.map +1 -0
- package/dist/skills/runblock.js +227 -0
- package/dist/skills/runblock.js.map +1 -0
- package/dist/skills/save-gate.d.ts +64 -0
- package/dist/skills/save-gate.d.ts.map +1 -0
- package/dist/skills/save-gate.js +354 -0
- package/dist/skills/save-gate.js.map +1 -0
- package/dist/skills/save-parse.d.ts +42 -0
- package/dist/skills/save-parse.d.ts.map +1 -0
- package/dist/skills/save-parse.js +172 -0
- package/dist/skills/save-parse.js.map +1 -0
- package/dist/skills/save-store.d.ts +12 -0
- package/dist/skills/save-store.d.ts.map +1 -0
- package/dist/skills/save-store.js +22 -0
- package/dist/skills/save-store.js.map +1 -0
- package/dist/skills/save-verify.d.ts +59 -0
- package/dist/skills/save-verify.d.ts.map +1 -0
- package/dist/skills/save-verify.js +390 -0
- package/dist/skills/save-verify.js.map +1 -0
- package/dist/skills/settings.d.ts +48 -0
- package/dist/skills/settings.d.ts.map +1 -0
- package/dist/skills/settings.js +155 -0
- package/dist/skills/settings.js.map +1 -0
- package/dist/skills/skill-diff.d.ts +40 -0
- package/dist/skills/skill-diff.d.ts.map +1 -0
- package/dist/skills/skill-diff.js +191 -0
- package/dist/skills/skill-diff.js.map +1 -0
- package/dist/skills/skill-file.d.ts +24 -0
- package/dist/skills/skill-file.d.ts.map +1 -0
- package/dist/skills/skill-file.js +97 -0
- package/dist/skills/skill-file.js.map +1 -0
- package/dist/skills/skill-rebuild.d.ts +27 -0
- package/dist/skills/skill-rebuild.d.ts.map +1 -0
- package/dist/skills/skill-rebuild.js +85 -0
- package/dist/skills/skill-rebuild.js.map +1 -0
- package/dist/skills/skillmd.d.ts +17 -0
- package/dist/skills/skillmd.d.ts.map +1 -0
- package/dist/skills/skillmd.js +219 -0
- package/dist/skills/skillmd.js.map +1 -0
- package/dist/skills/skills.d.ts +28 -8
- package/dist/skills/skills.d.ts.map +1 -1
- package/dist/skills/skills.js +106 -53
- package/dist/skills/skills.js.map +1 -1
- package/dist/skills/staleness.d.ts +27 -0
- package/dist/skills/staleness.d.ts.map +1 -0
- package/dist/skills/staleness.js +178 -0
- package/dist/skills/staleness.js.map +1 -0
- package/dist/skills/state.d.ts +36 -0
- package/dist/skills/state.d.ts.map +1 -0
- package/dist/skills/state.js +259 -0
- package/dist/skills/state.js.map +1 -0
- package/dist/skills/store-fs.d.ts +77 -0
- package/dist/skills/store-fs.d.ts.map +1 -0
- package/dist/skills/store-fs.js +194 -0
- package/dist/skills/store-fs.js.map +1 -0
- package/dist/skills/store-held.d.ts +44 -0
- package/dist/skills/store-held.d.ts.map +1 -0
- package/dist/skills/store-held.js +147 -0
- package/dist/skills/store-held.js.map +1 -0
- package/dist/skills/store.d.ts +73 -0
- package/dist/skills/store.d.ts.map +1 -0
- package/dist/skills/store.js +279 -0
- package/dist/skills/store.js.map +1 -0
- package/dist/skills/types.d.ts +8 -0
- package/dist/skills/types.d.ts.map +1 -1
- package/dist/skills/update-gate.d.ts +36 -0
- package/dist/skills/update-gate.d.ts.map +1 -0
- package/dist/skills/update-gate.js +357 -0
- package/dist/skills/update-gate.js.map +1 -0
- package/dist/skills/update-plan.d.ts +40 -0
- package/dist/skills/update-plan.d.ts.map +1 -0
- package/dist/skills/update-plan.js +196 -0
- package/dist/skills/update-plan.js.map +1 -0
- package/dist/skills/validate.d.ts +11 -0
- package/dist/skills/validate.d.ts.map +1 -0
- package/dist/skills/validate.js +112 -0
- package/dist/skills/validate.js.map +1 -0
- package/dist/skills/value-line.d.ts +94 -0
- package/dist/skills/value-line.d.ts.map +1 -0
- package/dist/skills/value-line.js +355 -0
- package/dist/skills/value-line.js.map +1 -0
- package/dist/skills/versions-fs.d.ts +45 -0
- package/dist/skills/versions-fs.d.ts.map +1 -0
- package/dist/skills/versions-fs.js +234 -0
- package/dist/skills/versions-fs.js.map +1 -0
- package/dist/skills/versions.d.ts +56 -0
- package/dist/skills/versions.d.ts.map +1 -0
- package/dist/skills/versions.js +351 -0
- package/dist/skills/versions.js.map +1 -0
- package/dist/telemetry/contract.d.ts +15 -1
- package/dist/telemetry/contract.d.ts.map +1 -1
- package/dist/telemetry/contract.js +80 -11
- package/dist/telemetry/contract.js.map +1 -1
- package/dist/telemetry/gate.js +4 -4
- package/dist/telemetry/gate.js.map +1 -1
- package/dist/telemetry/index.d.ts +1 -1
- package/dist/telemetry/index.d.ts.map +1 -1
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/index.js.map +1 -1
- package/dist/telemetry/notice.js +5 -5
- package/dist/telemetry/notice.js.map +1 -1
- package/dist/telemetry/queue.d.ts.map +1 -1
- package/dist/telemetry/queue.js +7 -7
- package/dist/telemetry/queue.js.map +1 -1
- package/dist/telemetry/track.d.ts.map +1 -1
- package/dist/telemetry/track.js +4 -3
- package/dist/telemetry/track.js.map +1 -1
- package/dist/trace/checks.d.ts +63 -0
- package/dist/trace/checks.d.ts.map +1 -0
- package/dist/trace/checks.js +495 -0
- package/dist/trace/checks.js.map +1 -0
- package/dist/trace/claude.d.ts +124 -0
- package/dist/trace/claude.d.ts.map +1 -0
- package/dist/trace/claude.js +303 -0
- package/dist/trace/claude.js.map +1 -0
- package/dist/trace/codex-exec.d.ts +22 -0
- package/dist/trace/codex-exec.d.ts.map +1 -0
- package/dist/trace/codex-exec.js +129 -0
- package/dist/trace/codex-exec.js.map +1 -0
- package/dist/trace/codex-meta.d.ts +23 -0
- package/dist/trace/codex-meta.d.ts.map +1 -0
- package/dist/trace/codex-meta.js +112 -0
- package/dist/trace/codex-meta.js.map +1 -0
- package/dist/trace/codex.d.ts +33 -0
- package/dist/trace/codex.d.ts.map +1 -0
- package/dist/trace/codex.js +485 -0
- package/dist/trace/codex.js.map +1 -0
- package/dist/trace/cursor.d.ts +16 -0
- package/dist/trace/cursor.d.ts.map +1 -0
- package/dist/trace/cursor.js +133 -0
- package/dist/trace/cursor.js.map +1 -0
- package/dist/trace/dialect.d.ts +43 -0
- package/dist/trace/dialect.d.ts.map +1 -0
- package/dist/trace/dialect.js +95 -0
- package/dist/trace/dialect.js.map +1 -0
- package/dist/trace/epochs.d.ts +10 -0
- package/dist/trace/epochs.d.ts.map +1 -0
- package/dist/trace/epochs.js +16 -0
- package/dist/trace/epochs.js.map +1 -0
- package/dist/trace/failure.d.ts +15 -0
- package/dist/trace/failure.d.ts.map +1 -0
- package/dist/trace/failure.js +69 -0
- package/dist/trace/failure.js.map +1 -0
- package/dist/trace/gate-file.d.ts +71 -0
- package/dist/trace/gate-file.d.ts.map +1 -0
- package/dist/trace/gate-file.js +329 -0
- package/dist/trace/gate-file.js.map +1 -0
- package/dist/trace/guard-fast.d.ts +22 -0
- package/dist/trace/guard-fast.d.ts.map +1 -0
- package/dist/trace/guard-fast.js +213 -0
- package/dist/trace/guard-fast.js.map +1 -0
- package/dist/trace/housekeeping.d.ts +5 -0
- package/dist/trace/housekeeping.d.ts.map +1 -0
- package/dist/trace/housekeeping.js +93 -0
- package/dist/trace/housekeeping.js.map +1 -0
- package/dist/trace/jobs.d.ts +52 -0
- package/dist/trace/jobs.d.ts.map +1 -0
- package/dist/trace/jobs.js +182 -0
- package/dist/trace/jobs.js.map +1 -0
- package/dist/trace/known-repo.d.ts +3 -0
- package/dist/trace/known-repo.d.ts.map +1 -0
- package/dist/trace/known-repo.js +55 -0
- package/dist/trace/known-repo.js.map +1 -0
- package/dist/trace/pool.d.ts +40 -0
- package/dist/trace/pool.d.ts.map +1 -0
- package/dist/trace/pool.js +154 -0
- package/dist/trace/pool.js.map +1 -0
- package/dist/trace/repairs.d.ts +27 -0
- package/dist/trace/repairs.d.ts.map +1 -0
- package/dist/trace/repairs.js +303 -0
- package/dist/trace/repairs.js.map +1 -0
- package/dist/trace/run-calls.d.ts +82 -0
- package/dist/trace/run-calls.d.ts.map +1 -0
- package/dist/trace/run-calls.js +331 -0
- package/dist/trace/run-calls.js.map +1 -0
- package/dist/trace/run-join.d.ts +20 -0
- package/dist/trace/run-join.d.ts.map +1 -0
- package/dist/trace/run-join.js +99 -0
- package/dist/trace/run-join.js.map +1 -0
- package/dist/trace/run-sheets.d.ts +26 -0
- package/dist/trace/run-sheets.d.ts.map +1 -0
- package/dist/trace/run-sheets.js +145 -0
- package/dist/trace/run-sheets.js.map +1 -0
- package/dist/trace/run-turns.d.ts +24 -0
- package/dist/trace/run-turns.d.ts.map +1 -0
- package/dist/trace/run-turns.js +67 -0
- package/dist/trace/run-turns.js.map +1 -0
- package/dist/trace/run-verdict.d.ts +24 -0
- package/dist/trace/run-verdict.d.ts.map +1 -0
- package/dist/trace/run-verdict.js +176 -0
- package/dist/trace/run-verdict.js.map +1 -0
- package/dist/trace/runs.d.ts +54 -0
- package/dist/trace/runs.d.ts.map +1 -0
- package/dist/trace/runs.js +501 -0
- package/dist/trace/runs.js.map +1 -0
- package/dist/trace/skill-session.d.ts +64 -0
- package/dist/trace/skill-session.d.ts.map +1 -0
- package/dist/trace/skill-session.js +232 -0
- package/dist/trace/skill-session.js.map +1 -0
- package/dist/trace/tamper.d.ts +12 -0
- package/dist/trace/tamper.d.ts.map +1 -0
- package/dist/trace/tamper.js +405 -0
- package/dist/trace/tamper.js.map +1 -0
- package/dist/trace/typed.d.ts +30 -0
- package/dist/trace/typed.d.ts.map +1 -0
- package/dist/trace/typed.js +132 -0
- package/dist/trace/typed.js.map +1 -0
- package/dist/trace/wall-state.d.ts +86 -0
- package/dist/trace/wall-state.d.ts.map +1 -0
- package/dist/trace/wall-state.js +279 -0
- package/dist/trace/wall-state.js.map +1 -0
- package/dist/trace/walls.d.ts +40 -0
- package/dist/trace/walls.d.ts.map +1 -0
- package/dist/trace/walls.js +318 -0
- package/dist/trace/walls.js.map +1 -0
- package/dist/upkeep-run.d.ts.map +1 -1
- package/dist/upkeep-run.js +2 -23
- package/dist/upkeep-run.js.map +1 -1
- package/dist/upkeep.d.ts.map +1 -1
- package/dist/upkeep.js +2 -3
- package/dist/upkeep.js.map +1 -1
- package/dist/util/private-fs.d.ts +6 -0
- package/dist/util/private-fs.d.ts.map +1 -1
- package/dist/util/private-fs.js +9 -1
- package/dist/util/private-fs.js.map +1 -1
- package/dist/util/state.d.ts.map +1 -1
- package/dist/util/state.js +17 -3
- package/dist/util/state.js.map +1 -1
- package/dist/vendor/tree-sitter-swift/LICENSE +21 -0
- package/dist/vendor/tree-sitter-swift/node-types.json +30694 -0
- package/dist/vendor/tree-sitter-swift/prebuilds/darwin-arm64/tree-sitter-swift.node +0 -0
- package/dist/vendor/tree-sitter-swift/prebuilds/darwin-x64/tree-sitter-swift.node +0 -0
- package/dist/vendor/tree-sitter-swift/prebuilds/linux-arm64/tree-sitter-swift.node +0 -0
- package/dist/vendor/tree-sitter-swift/prebuilds/linux-x64/tree-sitter-swift.node +0 -0
- package/dist/vendor/tree-sitter-swift/prebuilds/win32-arm64/tree-sitter-swift.node +0 -0
- package/dist/vendor/tree-sitter-swift/prebuilds/win32-x64/tree-sitter-swift.node +0 -0
- package/package.json +6 -3
- package/scripts/stamp-telemetry-key.mjs +8 -5
- package/scripts/vendor-grammars.mjs +35 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"head-learnings.js","sourceRoot":"","sources":["../../src/cloud/head-learnings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a code lookup tells the workspace: the learnings it showed (a use) and
|
|
3
|
+
* the tokens the map saved against reading the files whole. Shared by the CLI's
|
|
4
|
+
* `ask` and the MCP `graft_find_code`, so both report the same event.
|
|
5
|
+
*/
|
|
6
|
+
import { type AskResult } from "../ask/ask.js";
|
|
7
|
+
import { type Cloud } from "./workspace.js";
|
|
8
|
+
/**
|
|
9
|
+
* Queue one search event for `r`, when it showed a learning or saved tokens.
|
|
10
|
+
* Uses are counted from the learnings shown only; `saved_tokens` rides along.
|
|
11
|
+
* A count of the files, never the query or the paths: for the prompt hook the
|
|
12
|
+
* query is the person's prompt. Only learnings the workspace gets are named:
|
|
13
|
+
* a personal one's file name carries its title. `savedTokens` is the saving
|
|
14
|
+
* from a pack the caller already rendered (see formatAskWithSaved), so the
|
|
15
|
+
* lookup isn't rendered a second time. Never throws.
|
|
16
|
+
*/
|
|
17
|
+
export declare function recordLookup(r: AskResult, repo: string, cloud?: Cloud | null, savedTokens?: number): void;
|
|
18
|
+
//# sourceMappingURL=lookup-activity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-activity.d.ts","sourceRoot":"","sources":["../../src/cloud/lookup-activity.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAK/D,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAQvD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,KAAK,GAAG,IAAkB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CA6BtH"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a code lookup tells the workspace: the learnings it showed (a use) and
|
|
3
|
+
* the tokens the map saved against reading the files whole. Shared by the CLI's
|
|
4
|
+
* `ask` and the MCP `graft_find_code`, so both report the same event.
|
|
5
|
+
*/
|
|
6
|
+
import { askSavedTokens } from "../ask/ask.js";
|
|
7
|
+
import { repoPlace } from "../notes/home.js";
|
|
8
|
+
import { noteAuthor } from "../notes/git-facts.js";
|
|
9
|
+
import { noteName } from "../notes/notes.js";
|
|
10
|
+
import { sessionKey } from "./nudge.js";
|
|
11
|
+
import { readCloud } from "./workspace.js";
|
|
12
|
+
import { recordActivity, records } from "./workspace-sync.js";
|
|
13
|
+
/** The file part of a hit's `file:Lx-Ly` pointer. */
|
|
14
|
+
function pointerFile(pointer) {
|
|
15
|
+
return pointer.replace(/:L\d+(-L?\d+)?$/, "");
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Queue one search event for `r`, when it showed a learning or saved tokens.
|
|
19
|
+
* Uses are counted from the learnings shown only; `saved_tokens` rides along.
|
|
20
|
+
* A count of the files, never the query or the paths: for the prompt hook the
|
|
21
|
+
* query is the person's prompt. Only learnings the workspace gets are named:
|
|
22
|
+
* a personal one's file name carries its title. `savedTokens` is the saving
|
|
23
|
+
* from a pack the caller already rendered (see formatAskWithSaved), so the
|
|
24
|
+
* lookup isn't rendered a second time. Never throws.
|
|
25
|
+
*/
|
|
26
|
+
export function recordLookup(r, repo, cloud = readCloud(), savedTokens) {
|
|
27
|
+
try {
|
|
28
|
+
// Cheapest checks first: most lookups are on a machine that isn't connected,
|
|
29
|
+
// or in a repo outside the workspace, and must cost nothing here.
|
|
30
|
+
const key = repoPlace(repo).key;
|
|
31
|
+
if (!records(cloud, key))
|
|
32
|
+
return;
|
|
33
|
+
const shown = (r.notes ?? []).filter((h) => h.note.scope !== "personal");
|
|
34
|
+
const saved = savedTokens ?? askSavedTokens(r);
|
|
35
|
+
if (!shown.length && saved <= 0)
|
|
36
|
+
return;
|
|
37
|
+
const me = noteAuthor(repo);
|
|
38
|
+
// A lookup that showed no learning leaves with its savings only.
|
|
39
|
+
const used = shown.length > 0;
|
|
40
|
+
recordActivity({
|
|
41
|
+
repo: key,
|
|
42
|
+
kind: "search",
|
|
43
|
+
asker: me,
|
|
44
|
+
session: sessionKey(repo) ?? `${me}-${new Date().toISOString().slice(0, 10)}`,
|
|
45
|
+
file_count: used ? new Set(r.hits.map((h) => pointerFile(h.pointer))).size : 0,
|
|
46
|
+
shown_paths: shown.map((h) => noteName(h.note)),
|
|
47
|
+
shown_authors: shown.map((h) => h.note.author),
|
|
48
|
+
...(saved > 0 ? { saved_tokens: saved } : {}),
|
|
49
|
+
at: new Date().toISOString(),
|
|
50
|
+
}, cloud);
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
/* a lost event undercounts by one */
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=lookup-activity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-activity.js","sourceRoot":"","sources":["../../src/cloud/lookup-activity.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,cAAc,EAAkB,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAc,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9D,qDAAqD;AACrD,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,CAAY,EAAE,IAAY,EAAE,QAAsB,SAAS,EAAE,EAAE,WAAoB;IAC9G,IAAI,CAAC;QACH,6EAA6E;QAC7E,kEAAkE;QAClE,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;YAAE,OAAO;QACjC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,WAAW,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO;QACxC,MAAM,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAC5B,iEAAiE;QACjE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9B,cAAc,CACZ;YACE,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;YAC7E,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9E,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC/C,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAC7B,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;AACH,CAAC"}
|
package/dist/cloud/nudge.d.ts
CHANGED
|
@@ -16,8 +16,8 @@ export type NudgeCommand = "ask" | "note" | "check";
|
|
|
16
16
|
export declare function sessionKey(repo: string, env?: NodeJS.ProcessEnv, now?: number): string | null;
|
|
17
17
|
/** A fresh state for a link: 24 random bytes, which is what makes it impossible to guess. */
|
|
18
18
|
export declare function newState(): string;
|
|
19
|
-
/** The page the link opens
|
|
20
|
-
export declare function connectUrl(state: string,
|
|
19
|
+
/** The page the link opens, on the Trail `server`. */
|
|
20
|
+
export declare function connectUrl(state: string, server: string): string;
|
|
21
21
|
export interface NudgeOptions {
|
|
22
22
|
command: NudgeCommand;
|
|
23
23
|
/** An agent reads this output, not a person at a terminal. */
|
|
@@ -38,8 +38,14 @@ export declare function cloudLines(repo: string, opts: NudgeOptions): string[];
|
|
|
38
38
|
export declare function nudgeLines(words: string, url: string, agent: boolean): string[];
|
|
39
39
|
/** Start the background wait, unless one is already running. */
|
|
40
40
|
export declare function startWaiting(env?: NodeJS.ProcessEnv, now?: number): void;
|
|
41
|
-
/**
|
|
42
|
-
|
|
41
|
+
/**
|
|
42
|
+
* What the picker may list before anyone has opened the link: the one repo it
|
|
43
|
+
* was offered in, with how many learnings it has here. Never this machine's
|
|
44
|
+
* other repos: the link sits in an agent's reply, and nobody agreed yet to
|
|
45
|
+
* tell Trail what else is on the laptop. The rest are offered one at a time
|
|
46
|
+
* once connected (`addRepoLines`).
|
|
47
|
+
*/
|
|
48
|
+
export declare function pickerRepos(repoKey: string | undefined, env?: NodeJS.ProcessEnv): HandoffRepo[];
|
|
43
49
|
export interface WaitOptions {
|
|
44
50
|
waitMs?: number;
|
|
45
51
|
fetchImpl?: typeof fetch;
|
|
@@ -57,10 +63,12 @@ export interface WaitOptions {
|
|
|
57
63
|
*/
|
|
58
64
|
export declare function waitForConnect(opts?: WaitOptions): Promise<ClaimResult | null>;
|
|
59
65
|
/**
|
|
60
|
-
* A link for `trail login`: the one out now if it's good
|
|
61
|
-
*
|
|
66
|
+
* A link for `trail login`: the one out now if it's good and for the same
|
|
67
|
+
* Trail, else a new one. `server` is a self-hosted Trail (`--server`), saved
|
|
68
|
+
* on the link; without it, Trail cloud. Recorded like a nudge, so the
|
|
69
|
+
* background wait and the agent agree on it, and on where it goes.
|
|
62
70
|
*/
|
|
63
|
-
export declare function loginLink(repo: string, env?: NodeJS.ProcessEnv, now?: number): string;
|
|
71
|
+
export declare function loginLink(repo: string, env?: NodeJS.ProcessEnv, now?: number, server?: string): string;
|
|
64
72
|
/** Forget a link that's out, and any news not yet told. For `trail logout`. */
|
|
65
73
|
export declare function clearPending(env?: NodeJS.ProcessEnv): void;
|
|
66
74
|
//# sourceMappingURL=nudge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nudge.d.ts","sourceRoot":"","sources":["../../src/cloud/nudge.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nudge.d.ts","sourceRoot":"","sources":["../../src/cloud/nudge.ts"],"names":[],"mappings":"AA6BA,OAAO,EAA+F,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGjK,8FAA8F;AAC9F,eAAO,MAAM,WAAW,uFAAwF,CAAC;AAIjH;gEACgE;AAChE,eAAO,MAAM,WAAW,QAAsB,CAAC;AAC/C;;6CAE6C;AAC7C,eAAO,MAAM,OAAO,QAAiB,CAAC;AACtC,+EAA+E;AAC/E,eAAO,MAAM,cAAc,QAAqB,CAAC;AAEjD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AA2CpD;2DAC2D;AAC3D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,GAAG,SAAa,GAAG,MAAM,GAAG,IAAI,CAK9G;AASD,6FAA6F;AAC7F,wBAAgB,QAAQ,IAAI,MAAM,CAEjC;AAED,sDAAsD;AACtD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhE;AAYD,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,YAAY,CAAC;IACtB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CA2CrE;AAED,qDAAqD;AACrD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAM/E;AAgCD,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,GAAG,SAAa,GAAG,IAAI,CAMzF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,WAAW,EAAE,CAG5G;AAOD,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAsDxF;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,GAAG,SAAa,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAOvH;AAED,+EAA+E;AAC/E,wBAAgB,YAAY,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,IAAI,CAEvE"}
|
package/dist/cloud/nudge.js
CHANGED
|
@@ -8,11 +8,10 @@
|
|
|
8
8
|
* stops being read.
|
|
9
9
|
*
|
|
10
10
|
* The link carries a fresh random state. A detached child first tells Trail
|
|
11
|
-
* about it (
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* next trail command, which says so once.
|
|
11
|
+
* about it (only the repo the agent was in, for the workspace's repo picker),
|
|
12
|
+
* then asks Trail by that state until the person has signed in and picked it.
|
|
13
|
+
* Then it saves the connection, uploads that repo's committed learnings, and
|
|
14
|
+
* leaves the news for the next trail command, which says so once.
|
|
16
15
|
*
|
|
17
16
|
* Connected, a repo with learnings that isn't in the workspace gets one
|
|
18
17
|
* question, ever: add it?
|
|
@@ -22,13 +21,13 @@ import { randomBytes } from "node:crypto";
|
|
|
22
21
|
import { basename, join } from "node:path";
|
|
23
22
|
import { brand } from "../brand.js";
|
|
24
23
|
import { graftCliPath } from "../claude/paths.js";
|
|
25
|
-
import { noteAuthor } from "../notes/git-facts.js";
|
|
26
24
|
import { keepsNotes, knownRepos, noteCount, repoName, repoPlace, trailHome } from "../notes/home.js";
|
|
27
25
|
import { currentTranscript } from "../notes/session-cost.js";
|
|
28
26
|
import { durationBucket } from "../telemetry/contract.js";
|
|
29
27
|
import { track } from "../telemetry/track.js";
|
|
28
|
+
import { ensurePrivateDir } from "../util/private-file.js";
|
|
30
29
|
import { readJson, writeJsonAtomic } from "../util/state.js";
|
|
31
|
-
import { claimHandoff, readCloud, registerHandoff, SECRET_FILE_MODE, trailUrl, writeCloud } from "./workspace.js";
|
|
30
|
+
import { claimHandoff, readCloud, registerHandoff, SECRET_FILE_MODE, serverUrl, trailUrl, writeCloud } from "./workspace.js";
|
|
32
31
|
import { dropActivity, syncWorkspaceRepos } from "./workspace-sync.js";
|
|
33
32
|
/** What the link says, in turn: one per session, so it never reads the same twice running. */
|
|
34
33
|
export const NUDGE_WORDS = ["Share your learnings with your team?", "See what your Claude has learned"];
|
|
@@ -51,6 +50,7 @@ function readState(env) {
|
|
|
51
50
|
}
|
|
52
51
|
/** Owner-only, like cloud.json: a pending link's state claims the workspace token. */
|
|
53
52
|
function writeState(patch, env) {
|
|
53
|
+
ensurePrivateDir(trailHome(env));
|
|
54
54
|
writeJsonAtomic(statePath(env), { ...readState(env), ...patch }, false, SECRET_FILE_MODE);
|
|
55
55
|
}
|
|
56
56
|
/** The agent session running this command: Claude Code's id, or its newest
|
|
@@ -74,9 +74,13 @@ function offeredThisSession(st, session, now) {
|
|
|
74
74
|
export function newState() {
|
|
75
75
|
return randomBytes(24).toString("base64url");
|
|
76
76
|
}
|
|
77
|
-
/** The page the link opens
|
|
78
|
-
export function connectUrl(state,
|
|
79
|
-
return `${
|
|
77
|
+
/** The page the link opens, on the Trail `server`. */
|
|
78
|
+
export function connectUrl(state, server) {
|
|
79
|
+
return `${server}/connect?state=${encodeURIComponent(state)}`;
|
|
80
|
+
}
|
|
81
|
+
/** The Trail a link is for. A link an older trail made names none: Trail cloud. */
|
|
82
|
+
function linkServer(p, env) {
|
|
83
|
+
return serverUrl(p.server) ?? trailUrl(env);
|
|
80
84
|
}
|
|
81
85
|
/** The link out now, if it's still good. */
|
|
82
86
|
function livePending(st, now) {
|
|
@@ -104,6 +108,9 @@ export function cloudLines(repo, opts) {
|
|
|
104
108
|
writeState({ linked: undefined }, env);
|
|
105
109
|
return connectedLines(st.linked, agent);
|
|
106
110
|
}
|
|
111
|
+
// Connected from the onboarding: only summaries go up, so there's no repo to add.
|
|
112
|
+
if (cloud.via === "connect")
|
|
113
|
+
return [];
|
|
107
114
|
return addRepoLines(repo, cloud.workspace.name, cloud.repos, st, agent, env, now);
|
|
108
115
|
}
|
|
109
116
|
// A repo with no remote has no name a workspace could know it by.
|
|
@@ -121,13 +128,13 @@ export function cloudLines(repo, opts) {
|
|
|
121
128
|
const session = sessionKey(repo, env, now);
|
|
122
129
|
if (offeredThisSession(st, session, now))
|
|
123
130
|
return [];
|
|
124
|
-
const link = pending ?? { state: newState(), createdAt: now, repo: place.key };
|
|
131
|
+
const link = pending ?? { state: newState(), createdAt: now, repo: place.key, server: trailUrl(env) };
|
|
125
132
|
const shown = st.shown ?? 0;
|
|
126
133
|
const i = shown % NUDGE_WORDS.length;
|
|
127
134
|
writeState({ session: session ?? undefined, at: now, shown: shown + 1, pending: link }, env);
|
|
128
135
|
startWait();
|
|
129
136
|
track("brain_signup_opened", { mode: "nudge", command: opts.command, wording: WORDING_IDS[i] }, { repo });
|
|
130
|
-
return nudgeLines(NUDGE_WORDS[i], connectUrl(link.state, env), agent);
|
|
137
|
+
return nudgeLines(NUDGE_WORDS[i], connectUrl(link.state, linkServer(link, env)), agent);
|
|
131
138
|
}
|
|
132
139
|
catch {
|
|
133
140
|
return [];
|
|
@@ -179,11 +186,16 @@ export function startWaiting(env = process.env, now = Date.now()) {
|
|
|
179
186
|
const child = spawn(process.execPath, [graftCliPath(), "_trail-claim"], { detached: true, stdio: "ignore", windowsHide: true });
|
|
180
187
|
child.unref();
|
|
181
188
|
}
|
|
182
|
-
/**
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
189
|
+
/**
|
|
190
|
+
* What the picker may list before anyone has opened the link: the one repo it
|
|
191
|
+
* was offered in, with how many learnings it has here. Never this machine's
|
|
192
|
+
* other repos: the link sits in an agent's reply, and nobody agreed yet to
|
|
193
|
+
* tell Trail what else is on the laptop. The rest are offered one at a time
|
|
194
|
+
* once connected (`addRepoLines`).
|
|
195
|
+
*/
|
|
196
|
+
export function pickerRepos(repoKey, env = process.env) {
|
|
197
|
+
const r = repoKey ? knownRepos(env).find((k) => k.key === repoKey) : undefined;
|
|
198
|
+
return r ? [{ key: r.key, name: r.name, learnings: noteCount(r.path, env) }] : [];
|
|
187
199
|
}
|
|
188
200
|
/** The gap between two asks: quick while the person is likely signing in, then slower. */
|
|
189
201
|
function pollGap(elapsed) {
|
|
@@ -209,16 +221,12 @@ export async function waitForConnect(opts = {}) {
|
|
|
209
221
|
done();
|
|
210
222
|
return null;
|
|
211
223
|
}
|
|
212
|
-
|
|
213
|
-
const
|
|
214
|
-
const
|
|
215
|
-
const
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
repo: current ? { key: current.key, name: current.name } : null,
|
|
219
|
-
repos: known,
|
|
220
|
-
author: currentPath ? noteAuthor(currentPath) : "",
|
|
221
|
-
}, opts.fetchImpl);
|
|
224
|
+
// The Trail the link was made for, and only that one: nothing in the environment moves it.
|
|
225
|
+
const base = linkServer(pending, env);
|
|
226
|
+
const repos = pickerRepos(pending.repo, env);
|
|
227
|
+
const current = repos[0];
|
|
228
|
+
// No name either: whoever opens the link would see it before signing in.
|
|
229
|
+
const reg = await registerHandoff(base, { state: pending.state, repo: current ? { key: current.key, name: current.name } : null, repos, author: "" }, opts.fetchImpl);
|
|
222
230
|
if ("url" in reg)
|
|
223
231
|
opts.onRegistered?.(reg.url);
|
|
224
232
|
for (;;) {
|
|
@@ -253,14 +261,18 @@ export async function waitForConnect(opts = {}) {
|
|
|
253
261
|
}
|
|
254
262
|
}
|
|
255
263
|
/**
|
|
256
|
-
* A link for `trail login`: the one out now if it's good
|
|
257
|
-
*
|
|
264
|
+
* A link for `trail login`: the one out now if it's good and for the same
|
|
265
|
+
* Trail, else a new one. `server` is a self-hosted Trail (`--server`), saved
|
|
266
|
+
* on the link; without it, Trail cloud. Recorded like a nudge, so the
|
|
267
|
+
* background wait and the agent agree on it, and on where it goes.
|
|
258
268
|
*/
|
|
259
|
-
export function loginLink(repo, env = process.env, now = Date.now()) {
|
|
260
|
-
const
|
|
261
|
-
const
|
|
269
|
+
export function loginLink(repo, env = process.env, now = Date.now(), server) {
|
|
270
|
+
const want = server ?? trailUrl(env);
|
|
271
|
+
const live = livePending(readState(env), now);
|
|
272
|
+
// A state registered with one Trail is never handed to another.
|
|
273
|
+
const link = live && linkServer(live, env) === want ? live : { state: newState(), createdAt: now, repo: repoPlace(repo, env).key, server: want };
|
|
262
274
|
writeState({ pending: link }, env);
|
|
263
|
-
return connectUrl(link.state,
|
|
275
|
+
return connectUrl(link.state, want);
|
|
264
276
|
}
|
|
265
277
|
/** Forget a link that's out, and any news not yet told. For `trail logout`. */
|
|
266
278
|
export function clearPending(env = process.env) {
|
package/dist/cloud/nudge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nudge.js","sourceRoot":"","sources":["../../src/cloud/nudge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nudge.js","sourceRoot":"","sources":["../../src/cloud/nudge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import { type Note } from "../notes/notes.js";
|
|
2
|
+
import { type Cloud } from "./workspace.js";
|
|
3
|
+
type Fetch = typeof fetch;
|
|
4
|
+
/**
|
|
5
|
+
* The code as the page shows it, `TRL-7F2A-K9QD`, from however it was pasted:
|
|
6
|
+
* any case, with or without the prefix and dashes. Null when it can't be one.
|
|
7
|
+
*/
|
|
8
|
+
export declare function normalizeCode(raw: string): string | null;
|
|
9
|
+
/**
|
|
10
|
+
* The repo as the workspace names it: `{name, remote_url}`, from which Trail
|
|
11
|
+
* derives its key. No path on this machine, and never a credential from the
|
|
12
|
+
* remote: the URL is rebuilt from the repo's key (`github.com/acme/retry` →
|
|
13
|
+
* `https://github.com/acme/retry`), so a token in an https remote stays here.
|
|
14
|
+
* A repo with no remote sends its name alone.
|
|
15
|
+
*/
|
|
16
|
+
export interface RepoRef {
|
|
17
|
+
name: string;
|
|
18
|
+
remote_url?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function repoRef(repo: string): RepoRef;
|
|
21
|
+
/** What the page shows for the terminal: `Rushabh's MacBook Pro` on a Mac, else the host name. */
|
|
22
|
+
export declare function machineName(): string;
|
|
23
|
+
export type ConnectResult = {
|
|
24
|
+
cloud: Cloud;
|
|
25
|
+
}
|
|
26
|
+
/** The code is wrong, used or expired: say so, and connect nothing. */
|
|
27
|
+
| {
|
|
28
|
+
error: string;
|
|
29
|
+
reason: "invalid";
|
|
30
|
+
}
|
|
31
|
+
/** Trail didn't answer: set up locally and say how to connect later. */
|
|
32
|
+
| {
|
|
33
|
+
error: string;
|
|
34
|
+
reason: "offline";
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Claim the one-time code: `POST /api/public/cli/connect`. Gives back the
|
|
38
|
+
* connection to save, with no repos picked: the full learnings sync stays off
|
|
39
|
+
* for a machine connected this way, so only the summary below goes up.
|
|
40
|
+
*/
|
|
41
|
+
export declare function claimConnectCode(base: string, code: string, req: {
|
|
42
|
+
machine: string;
|
|
43
|
+
repo: RepoRef;
|
|
44
|
+
}, opts?: {
|
|
45
|
+
fetchImpl?: Fetch;
|
|
46
|
+
now?: number;
|
|
47
|
+
}): Promise<ConnectResult>;
|
|
48
|
+
/**
|
|
49
|
+
* The command that connects later: `trail init --connect TRL-… --server <url>`,
|
|
50
|
+
* naming the Trail it was run against unless that's Trail cloud, so it
|
|
51
|
+
* reaches the same backend the code came from.
|
|
52
|
+
*/
|
|
53
|
+
export declare function connectAgain(command: string, code: string, base: string): string;
|
|
54
|
+
/**
|
|
55
|
+
* What to say, once, when Trail didn't take the code because it couldn't be
|
|
56
|
+
* reached: which Trail, what happened, and the exact command to connect later.
|
|
57
|
+
* `· couldn't reach Trail at http://localhost:5173 · set this repo up anyway ·
|
|
58
|
+
* to connect it later: trail init --connect TRL-7F2A-K9QD --server http://localhost:5173`
|
|
59
|
+
*/
|
|
60
|
+
export declare function offlineLine(error: string, base: string, code: string, command: string): string;
|
|
61
|
+
export type Stage = "connected" | "mapped" | "learned" | "done";
|
|
62
|
+
export interface TokensSummary {
|
|
63
|
+
/** What was asked, in words the page can show: `how Do works`. */
|
|
64
|
+
question: string;
|
|
65
|
+
/** The symbol asked about. */
|
|
66
|
+
symbol: string;
|
|
67
|
+
/** Tokens saved, the pack, and reading the files whole: the `tokens saved ≈` line's numbers. */
|
|
68
|
+
saved: number;
|
|
69
|
+
pack: number;
|
|
70
|
+
baseline: number;
|
|
71
|
+
pct: number;
|
|
72
|
+
/** How many files the baseline reads whole. */
|
|
73
|
+
files: number;
|
|
74
|
+
/**
|
|
75
|
+
* When the question was the last merged PR's title: that PR, at most
|
|
76
|
+
* {@link PR_FILES_SENT} of the code files it changed, how many it changed
|
|
77
|
+
* in all, and how many of them the answer pointed to.
|
|
78
|
+
*/
|
|
79
|
+
pr?: LastPr & {
|
|
80
|
+
changed: number;
|
|
81
|
+
found: number;
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
/** A merged pull request, as git's history on the default branch tells it. */
|
|
85
|
+
export interface LastPr {
|
|
86
|
+
number: number;
|
|
87
|
+
title: string;
|
|
88
|
+
/** The PR on GitHub, when the repo is there. */
|
|
89
|
+
url?: string;
|
|
90
|
+
/** The product code files it changed that are still in the repo. */
|
|
91
|
+
files: string[];
|
|
92
|
+
}
|
|
93
|
+
export interface LearningSummary {
|
|
94
|
+
title: string;
|
|
95
|
+
/** One line of it, no code blocks, at most 200 characters. */
|
|
96
|
+
body: string;
|
|
97
|
+
/** Past sessions it was said in; 0 when it didn't come from sessions. */
|
|
98
|
+
sessions: number;
|
|
99
|
+
}
|
|
100
|
+
export interface TeammateSummary {
|
|
101
|
+
name: string;
|
|
102
|
+
email: string;
|
|
103
|
+
/** `kumar/retry`, without `origin/`. */
|
|
104
|
+
branch: string;
|
|
105
|
+
/** The files it changes that this person works on too (or, with no history of theirs, the repo's busiest). */
|
|
106
|
+
files: string[];
|
|
107
|
+
/** One line, from the branch's commit subjects. */
|
|
108
|
+
change: string;
|
|
109
|
+
/** When its newest commit was made, ISO. */
|
|
110
|
+
pushed_at: string;
|
|
111
|
+
/** Commits on the branch since it left the default branch. */
|
|
112
|
+
commits?: number;
|
|
113
|
+
/** When it changes a file one of this repo's learnings is about: which, and which learning. */
|
|
114
|
+
conflict?: string;
|
|
115
|
+
}
|
|
116
|
+
export interface RepoSummary {
|
|
117
|
+
repo: RepoRef;
|
|
118
|
+
tokens: TokensSummary | null;
|
|
119
|
+
/** Past sessions init read for learnings; absent when it read none this time. */
|
|
120
|
+
sessions?: number;
|
|
121
|
+
learnings: LearningSummary[];
|
|
122
|
+
teammates: TeammateSummary[];
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Sends the stages and the summary for one `init --connect`, in order. The
|
|
126
|
+
* first call that can't reach Trail turns the rest off, so a laptop offline
|
|
127
|
+
* waits on one timeout at most. Never throws.
|
|
128
|
+
*/
|
|
129
|
+
export declare class OnboardingReporter {
|
|
130
|
+
private readonly cloud;
|
|
131
|
+
readonly repo: RepoRef;
|
|
132
|
+
private readonly opts;
|
|
133
|
+
private offline;
|
|
134
|
+
private chain;
|
|
135
|
+
readonly sent: Array<{
|
|
136
|
+
path: string;
|
|
137
|
+
body: unknown;
|
|
138
|
+
ok: boolean;
|
|
139
|
+
}>;
|
|
140
|
+
constructor(cloud: Cloud, repo: RepoRef, opts?: {
|
|
141
|
+
fetchImpl?: Fetch;
|
|
142
|
+
timeoutMs?: number;
|
|
143
|
+
machine?: string;
|
|
144
|
+
});
|
|
145
|
+
private send;
|
|
146
|
+
/** One stage, for the page to tick off. */
|
|
147
|
+
stage(stage: Stage, data?: Record<string, unknown>): Promise<boolean>;
|
|
148
|
+
summary(s: Omit<RepoSummary, "repo">): Promise<boolean>;
|
|
149
|
+
/** Wait for everything sent so far. */
|
|
150
|
+
flush(): Promise<void>;
|
|
151
|
+
}
|
|
152
|
+
/** The numbers in `ask`'s `[trail] tokens saved ≈ N (P%) — this pack ≈ … tok vs reading the F source file(s) whole ≈ B tok` line. */
|
|
153
|
+
export declare function parseAskSavings(text: string): Omit<TokensSummary, "question" | "symbol"> | null;
|
|
154
|
+
/** Whether a repo path is test, fixture, vendored or generated code, which a lookup shouldn't be measured on. */
|
|
155
|
+
export declare function notProductCode(path: string): boolean;
|
|
156
|
+
/** Whether a repo path is docs or config rather than code. */
|
|
157
|
+
export declare function docOrConfig(path: string): boolean;
|
|
158
|
+
/**
|
|
159
|
+
* A teammate's files with the one worth naming first: product code (by the
|
|
160
|
+
* same rules as the tokens lookup), then other code (tests, fixtures,
|
|
161
|
+
* vendored, generated), then docs and config. Every file stays; only the
|
|
162
|
+
* order changes, and within each kind it's git's. The page says a teammate
|
|
163
|
+
* "is changing" the first one, which shouldn't be CHANGELOG.md when they
|
|
164
|
+
* also change client.go.
|
|
165
|
+
*/
|
|
166
|
+
export declare function headlineOrder(files: string[]): string[];
|
|
167
|
+
/** Whether a symbol name is worth measuring a lookup on: at least 5 characters and not a common util name. */
|
|
168
|
+
export declare function meaningfulSymbol(name: string): boolean;
|
|
169
|
+
/**
|
|
170
|
+
* One real lookup on the code map, as an agent would make it: a question
|
|
171
|
+
* about the repo's most central symbol (most incoming edges, with a name of
|
|
172
|
+
* 5+ characters that isn't a common util name) outside tests,
|
|
173
|
+
* fixtures, vendored and generated code, answered with
|
|
174
|
+
* the code inlined, and what that saved against reading the files it covers
|
|
175
|
+
* whole. The next most central is tried when a lookup saves nothing (tiny
|
|
176
|
+
* files). Null without a graph.
|
|
177
|
+
*/
|
|
178
|
+
export declare function tokensOnOneLookup(repo: string, opts?: {
|
|
179
|
+
contextDir?: string;
|
|
180
|
+
tries?: number;
|
|
181
|
+
}): TokensSummary | null;
|
|
182
|
+
/** The most of a PR's changed files sent to Trail; `changed` says how many there were. */
|
|
183
|
+
export declare const PR_FILES_SENT = 20;
|
|
184
|
+
/**
|
|
185
|
+
* The merged PRs on the default branch, newest first, read from git alone:
|
|
186
|
+
* GitHub's merge commits and squash merges both name the PR. Only PRs that
|
|
187
|
+
* changed product code still in the repo; at most `limit` of them.
|
|
188
|
+
*/
|
|
189
|
+
export declare function lastMergedPrs(repo: string, limit?: number): LastPr[];
|
|
190
|
+
/**
|
|
191
|
+
* The lookup an agent starting the last merged PR would make: its title as
|
|
192
|
+
* the question, answered with the code inlined, against reading the files
|
|
193
|
+
* the answer covers whole (ask's own estimate). The next PR back is tried
|
|
194
|
+
* when one saves nothing. Null with no PR in git's history or no graph.
|
|
195
|
+
*/
|
|
196
|
+
export declare function tokensOnLastPr(repo: string, opts?: {
|
|
197
|
+
contextDir?: string;
|
|
198
|
+
tries?: number;
|
|
199
|
+
}): TokensSummary | null;
|
|
200
|
+
/** How many sessions a learning read from past sessions was said in, from the line init writes under it. */
|
|
201
|
+
export declare function sessionsIn(body: string): number;
|
|
202
|
+
/**
|
|
203
|
+
* One line of a learning, for a card: the first point under `## Decided` (or
|
|
204
|
+
* the first line of prose), no code blocks, headings or provenance line, at
|
|
205
|
+
* most 200 characters.
|
|
206
|
+
*/
|
|
207
|
+
export declare function shortBody(body: string): string;
|
|
208
|
+
/**
|
|
209
|
+
* The team's learnings in this repo, for the summary: what init just learned
|
|
210
|
+
* when it learned something (with the sessions each was said in), else what
|
|
211
|
+
* `.trail/learnings/` already has. Never a personal one: those stay on this
|
|
212
|
+
* machine.
|
|
213
|
+
*/
|
|
214
|
+
export declare function learningsSummary(repo: string, learned: Array<{
|
|
215
|
+
note: Note;
|
|
216
|
+
sessions?: number;
|
|
217
|
+
}> | null, max?: number): LearningSummary[];
|
|
218
|
+
/**
|
|
219
|
+
* Whether a remote branch is open work by someone: not the remote's default
|
|
220
|
+
* branch (`base`), not a shared integration branch, and not fully merged
|
|
221
|
+
* already (its tip is an ancestor of `base`).
|
|
222
|
+
*/
|
|
223
|
+
export declare function openBranch(repo: string, base: string, ref: string): boolean;
|
|
224
|
+
/** Files `email` changed in the last `days` days on any branch, plus what's uncommitted here. */
|
|
225
|
+
export declare function myRecentFiles(repo: string, email: string, days?: number): string[];
|
|
226
|
+
/** The repo's busiest files lately: the stand-in for "files you work on" when you have no history here. */
|
|
227
|
+
export declare function hottestFiles(repo: string, n?: number): string[];
|
|
228
|
+
/**
|
|
229
|
+
* The names a learning is about, to look for in a teammate's change: the
|
|
230
|
+
* symbols its `touches` name (`client.go#Do`), and code-like words in its
|
|
231
|
+
* title and lead line (`defaultRetryMax`, `retry_max`, `Do()`). Plain words
|
|
232
|
+
* are left out: "retry" in a learning says nothing about a change.
|
|
233
|
+
*/
|
|
234
|
+
export declare function learningTerms(n: Note): string[];
|
|
235
|
+
/**
|
|
236
|
+
* When a teammate's branch changes a name one of the team's learnings is
|
|
237
|
+
* about, in a file that learning touches: `Changes defaultRetryMax in
|
|
238
|
+
* client.go, which your learning "Keep defaultRetryMax at 4" is about.` Read
|
|
239
|
+
* from the branch's diff here; only this line goes up. Nothing when the
|
|
240
|
+
* learning names nothing code-like, or the change doesn't touch it.
|
|
241
|
+
*/
|
|
242
|
+
export declare function conflictLine(repo: string, base: string, ref: string, files: string[], learnings: Note[]): string | undefined;
|
|
243
|
+
/**
|
|
244
|
+
* Teammates' work in the same place: remote branches whose newest commit is
|
|
245
|
+
* from the last `days` days and from someone other than this person, that
|
|
246
|
+
* change files this person changed lately (or the repo's busiest files, when
|
|
247
|
+
* they have no history here). Newest first. Fetches first unless
|
|
248
|
+
* `fetch: false` (or TRAIL_NO_FETCH). Names, emails, branch and file names and
|
|
249
|
+
* commit subjects only: never a diff.
|
|
250
|
+
*/
|
|
251
|
+
export declare function teammatesFromGit(repo: string, opts?: {
|
|
252
|
+
days?: number;
|
|
253
|
+
now?: number;
|
|
254
|
+
fetch?: boolean;
|
|
255
|
+
max?: number;
|
|
256
|
+
learnings?: Note[];
|
|
257
|
+
}): TeammateSummary[];
|
|
258
|
+
/**
|
|
259
|
+
* Like {@link teammatesFromGit}, but `undefined` when there was nothing to check
|
|
260
|
+
* against: no origin remote, no default branch to compare with, or git failed.
|
|
261
|
+
* An empty list means "checked, none"; a repo without a remote wasn't checked.
|
|
262
|
+
*/
|
|
263
|
+
export declare function teammatesChecked(repo: string, opts?: {
|
|
264
|
+
days?: number;
|
|
265
|
+
now?: number;
|
|
266
|
+
fetch?: boolean;
|
|
267
|
+
max?: number;
|
|
268
|
+
learnings?: Note[];
|
|
269
|
+
}): TeammateSummary[] | undefined;
|
|
270
|
+
/** The Trail a code is claimed against: `--server` for this run (useServer), or Trail cloud. */
|
|
271
|
+
export declare function connectBase(env?: NodeJS.ProcessEnv): string;
|
|
272
|
+
export {};
|
|
273
|
+
//# sourceMappingURL=onboarding.d.ts.map
|