@co-engram/core 0.1.2 → 0.1.3
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/dist/bootstrap/classify.d.ts +67 -0
- package/dist/bootstrap/classify.d.ts.map +1 -0
- package/dist/bootstrap/classify.js +119 -0
- package/dist/bootstrap/classify.js.map +1 -0
- package/dist/bootstrap/index.d.ts +89 -0
- package/dist/bootstrap/index.d.ts.map +1 -0
- package/dist/bootstrap/index.js +158 -0
- package/dist/bootstrap/index.js.map +1 -0
- package/dist/concepts/dictionary.d.ts +260 -0
- package/dist/concepts/dictionary.d.ts.map +1 -0
- package/dist/concepts/dictionary.js +253 -0
- package/dist/concepts/dictionary.js.map +1 -0
- package/dist/concepts/index.d.ts +11 -0
- package/dist/concepts/index.d.ts.map +1 -0
- package/dist/concepts/index.js +10 -0
- package/dist/concepts/index.js.map +1 -0
- package/dist/concepts/types.d.ts +65 -0
- package/dist/concepts/types.d.ts.map +1 -0
- package/dist/concepts/types.js +15 -0
- package/dist/concepts/types.js.map +1 -0
- package/dist/config/defaults.d.ts +32 -3
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +52 -2
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/index.d.ts +18 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +75 -3
- package/dist/config/index.js.map +1 -1
- package/dist/config/loader.d.ts +10 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +10 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/types.d.ts +97 -1
- package/dist/config/types.d.ts.map +1 -1
- package/dist/contradiction/auto-degrade.d.ts +11 -2
- package/dist/contradiction/auto-degrade.d.ts.map +1 -1
- package/dist/contradiction/auto-degrade.js +22 -0
- package/dist/contradiction/auto-degrade.js.map +1 -1
- package/dist/contradiction/resolver.d.ts.map +1 -1
- package/dist/contradiction/resolver.js +7 -1
- package/dist/contradiction/resolver.js.map +1 -1
- package/dist/dreaming/index.d.ts +1 -0
- package/dist/dreaming/index.d.ts.map +1 -1
- package/dist/dreaming/index.js +1 -0
- package/dist/dreaming/index.js.map +1 -1
- package/dist/dreaming/llm-pattern-abstraction.d.ts +31 -0
- package/dist/dreaming/llm-pattern-abstraction.d.ts.map +1 -0
- package/dist/dreaming/llm-pattern-abstraction.js +70 -0
- package/dist/dreaming/llm-pattern-abstraction.js.map +1 -0
- package/dist/dreaming/rem.d.ts.map +1 -1
- package/dist/dreaming/rem.js +1 -0
- package/dist/dreaming/rem.js.map +1 -1
- package/dist/dreaming/scheduler.d.ts +13 -0
- package/dist/dreaming/scheduler.d.ts.map +1 -1
- package/dist/dreaming/scheduler.js +14 -2
- package/dist/dreaming/scheduler.js.map +1 -1
- package/dist/evolution/triggered.d.ts.map +1 -1
- package/dist/evolution/triggered.js +1 -0
- package/dist/evolution/triggered.js.map +1 -1
- package/dist/generative/hypothesis.d.ts.map +1 -1
- package/dist/generative/hypothesis.js +1 -0
- package/dist/generative/hypothesis.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +1262 -32
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/index.d.ts +34 -1
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +36 -7
- package/dist/i18n/index.js.map +1 -1
- package/dist/i18n/zh.d.ts +698 -32
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +1267 -33
- package/dist/i18n/zh.js.map +1 -1
- package/dist/index/graph-builder.js +3 -3
- package/dist/index/graph-builder.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/learning/loop.d.ts +9 -0
- package/dist/learning/loop.d.ts.map +1 -1
- package/dist/learning/loop.js +42 -1
- package/dist/learning/loop.js.map +1 -1
- package/dist/maintenance/types.d.ts +11 -0
- package/dist/maintenance/types.d.ts.map +1 -1
- package/dist/maintenance/types.js.map +1 -1
- package/dist/merge/synapse-merger.js +6 -0
- package/dist/merge/synapse-merger.js.map +1 -1
- package/dist/merge-driver.cjs +64 -5
- package/dist/observability/audit-log.d.ts +7 -1
- package/dist/observability/audit-log.d.ts.map +1 -1
- package/dist/observability/audit-log.js.map +1 -1
- package/dist/observability/necessity-evaluator.d.ts +29 -0
- package/dist/observability/necessity-evaluator.d.ts.map +1 -1
- package/dist/observability/necessity-evaluator.js +240 -13
- package/dist/observability/necessity-evaluator.js.map +1 -1
- package/dist/observability/proposal-engine.d.ts.map +1 -1
- package/dist/observability/proposal-engine.js +12 -0
- package/dist/observability/proposal-engine.js.map +1 -1
- package/dist/observability/runtime-description-check.d.ts +55 -0
- package/dist/observability/runtime-description-check.d.ts.map +1 -0
- package/dist/observability/runtime-description-check.js +63 -0
- package/dist/observability/runtime-description-check.js.map +1 -0
- package/dist/prompt-signals/cache.d.ts +73 -0
- package/dist/prompt-signals/cache.d.ts.map +1 -1
- package/dist/prompt-signals/cache.js +102 -0
- package/dist/prompt-signals/cache.js.map +1 -1
- package/dist/prompt-signals/event-bus.d.ts +82 -0
- package/dist/prompt-signals/event-bus.d.ts.map +1 -0
- package/dist/prompt-signals/event-bus.js +105 -0
- package/dist/prompt-signals/event-bus.js.map +1 -0
- package/dist/prompt-signals/index.d.ts +2 -1
- package/dist/prompt-signals/index.d.ts.map +1 -1
- package/dist/prompt-signals/index.js +2 -1
- package/dist/prompt-signals/index.js.map +1 -1
- package/dist/reinforcement/ltp.d.ts +15 -1
- package/dist/reinforcement/ltp.d.ts.map +1 -1
- package/dist/reinforcement/ltp.js +24 -5
- package/dist/reinforcement/ltp.js.map +1 -1
- package/dist/reinforcement/related.d.ts +31 -2
- package/dist/reinforcement/related.d.ts.map +1 -1
- package/dist/reinforcement/related.js +39 -3
- package/dist/reinforcement/related.js.map +1 -1
- package/dist/retrieval/filter.d.ts.map +1 -1
- package/dist/retrieval/filter.js +7 -0
- package/dist/retrieval/filter.js.map +1 -1
- package/dist/retrieval/fts.d.ts +6 -5
- package/dist/retrieval/fts.d.ts.map +1 -1
- package/dist/retrieval/fts.js +74 -22
- package/dist/retrieval/fts.js.map +1 -1
- package/dist/status/index.d.ts +7 -0
- package/dist/status/index.d.ts.map +1 -0
- package/dist/status/index.js +7 -0
- package/dist/status/index.js.map +1 -0
- package/dist/status/status.d.ts +132 -0
- package/dist/status/status.d.ts.map +1 -0
- package/dist/status/status.js +437 -0
- package/dist/status/status.js.map +1 -0
- package/dist/storage/engram-store.d.ts.map +1 -1
- package/dist/storage/engram-store.js +17 -2
- package/dist/storage/engram-store.js.map +1 -1
- package/dist/storage/git.d.ts +168 -0
- package/dist/storage/git.d.ts.map +1 -1
- package/dist/storage/git.js +616 -33
- package/dist/storage/git.js.map +1 -1
- package/dist/storage/index.d.ts +1 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +1 -0
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/infra-doctor.d.ts +42 -0
- package/dist/storage/infra-doctor.d.ts.map +1 -0
- package/dist/storage/infra-doctor.js +92 -0
- package/dist/storage/infra-doctor.js.map +1 -0
- package/dist/storage/obsidian-links.d.ts +73 -0
- package/dist/storage/obsidian-links.d.ts.map +1 -0
- package/dist/storage/obsidian-links.js +177 -0
- package/dist/storage/obsidian-links.js.map +1 -0
- package/dist/storage/path.d.ts +24 -0
- package/dist/storage/path.d.ts.map +1 -1
- package/dist/storage/path.js +53 -0
- package/dist/storage/path.js.map +1 -1
- package/dist/storage/repository.d.ts +37 -1
- package/dist/storage/repository.d.ts.map +1 -1
- package/dist/storage/repository.js +235 -17
- package/dist/storage/repository.js.map +1 -1
- package/dist/storage/synapse-store.d.ts +7 -1
- package/dist/storage/synapse-store.d.ts.map +1 -1
- package/dist/storage/synapse-store.js +8 -0
- package/dist/storage/synapse-store.js.map +1 -1
- package/dist/tools/audit-query-tool.d.ts +53 -0
- package/dist/tools/audit-query-tool.d.ts.map +1 -0
- package/dist/tools/audit-query-tool.js +123 -0
- package/dist/tools/audit-query-tool.js.map +1 -0
- package/dist/tools/doctor-tools.d.ts +5 -0
- package/dist/tools/doctor-tools.d.ts.map +1 -1
- package/dist/tools/doctor-tools.js +11 -3
- package/dist/tools/doctor-tools.js.map +1 -1
- package/dist/tools/engram-tools.d.ts +13 -0
- package/dist/tools/engram-tools.d.ts.map +1 -1
- package/dist/tools/engram-tools.js +72 -8
- package/dist/tools/engram-tools.js.map +1 -1
- package/dist/tools/index.d.ts +3 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +3 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/llm-descriptions.d.ts +28 -28
- package/dist/tools/llm-descriptions.d.ts.map +1 -1
- package/dist/tools/llm-descriptions.js +56 -489
- package/dist/tools/llm-descriptions.js.map +1 -1
- package/dist/tools/normalization.d.ts +43 -0
- package/dist/tools/normalization.d.ts.map +1 -0
- package/dist/tools/normalization.js +68 -0
- package/dist/tools/normalization.js.map +1 -0
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +6 -0
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/schemas.d.ts +67 -11
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +61 -6
- package/dist/tools/schemas.js.map +1 -1
- package/dist/tools/skill-tools.js +1 -1
- package/dist/tools/skill-tools.js.map +1 -1
- package/dist/tools/synapse-tools.d.ts.map +1 -1
- package/dist/tools/synapse-tools.js +1 -0
- package/dist/tools/synapse-tools.js.map +1 -1
- package/dist/tools/sync-tools.d.ts +102 -0
- package/dist/tools/sync-tools.d.ts.map +1 -0
- package/dist/tools/sync-tools.js +309 -0
- package/dist/tools/sync-tools.js.map +1 -0
- package/dist/tools/synthesize-tools.d.ts +79 -0
- package/dist/tools/synthesize-tools.d.ts.map +1 -0
- package/dist/tools/synthesize-tools.js +297 -0
- package/dist/tools/synthesize-tools.js.map +1 -0
- package/dist/tools/tool-profile.d.ts +68 -0
- package/dist/tools/tool-profile.d.ts.map +1 -0
- package/dist/tools/tool-profile.js +174 -0
- package/dist/tools/tool-profile.js.map +1 -0
- package/dist/tools/tool.d.ts +17 -0
- package/dist/tools/tool.d.ts.map +1 -1
- package/dist/tools/tool.js.map +1 -1
- package/dist/types/disclosure.d.ts +7 -0
- package/dist/types/disclosure.d.ts.map +1 -1
- package/dist/types/repository-types.d.ts +17 -1
- package/dist/types/repository-types.d.ts.map +1 -1
- package/dist/types/synapse.d.ts +19 -1
- package/dist/types/synapse.d.ts.map +1 -1
- package/package.json +9 -9
package/dist/storage/git.d.ts
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
* 不依赖外部 npm 包,保持 host-agnostic。
|
|
5
5
|
* 只封装 co-engram 需要的最小操作集。
|
|
6
6
|
*
|
|
7
|
+
* 公司内外部兼容性策略:
|
|
8
|
+
* - 直接调用系统 `git`,继承用户 SSH/credentials/proxy 环境
|
|
9
|
+
* - 不硬编码任何主机名/URL/refspec(Gerrit review 由用户 .git/config 决定)
|
|
10
|
+
* - 不主动写 Change-Id(ZTE/Gerrit commit-msg hook 若已装会自动加)
|
|
11
|
+
*
|
|
7
12
|
* @module @co-engram/core/storage
|
|
8
13
|
*/
|
|
9
14
|
/** Git 提交选项 */
|
|
@@ -36,6 +41,11 @@ export declare function initGitRepo(repoPath: string): void;
|
|
|
36
41
|
* Stage 文件并提交
|
|
37
42
|
*
|
|
38
43
|
* 注意:不会自动 push,团队需要时手动 push。
|
|
44
|
+
*
|
|
45
|
+
* 实现安全说明(Task 4.2):用 `spawnSync` + 数组参数(`args[]`)而非
|
|
46
|
+
* `execSync` + 字符串拼接,避免 shell 元字符(backtick / $ / 反引号)
|
|
47
|
+
* 在 authorName / message / file 路径里触发命令注入。数组参数下 git
|
|
48
|
+
* 直接收到原始字符串,不经 shell 解释。
|
|
39
49
|
*/
|
|
40
50
|
export declare function commitFiles(options: GitCommitOptions): GitCommitResult;
|
|
41
51
|
/**
|
|
@@ -54,4 +64,162 @@ export declare function getFileLastCommit(repoPath: string, relativePath: string
|
|
|
54
64
|
* 获取仓库根目录的绝对路径
|
|
55
65
|
*/
|
|
56
66
|
export declare function resolveRepoPath(repoPath: string): string;
|
|
67
|
+
/** `git pull` 结果 */
|
|
68
|
+
export interface GitPullResult {
|
|
69
|
+
/** 是否成功(无冲突) */
|
|
70
|
+
readonly ok: boolean;
|
|
71
|
+
/** 远端无新内容(已是最新) */
|
|
72
|
+
readonly upToDate?: boolean;
|
|
73
|
+
/** rebase 冲突文件清单(相对仓库根路径);ok=false 时填 */
|
|
74
|
+
readonly conflicts?: readonly string[];
|
|
75
|
+
/** 合并/快进的提交数(upToDate=true 时为 0) */
|
|
76
|
+
readonly fetchedCount?: number;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* `git pull --rebase` —— 用 rebase 策略保持线性历史。
|
|
80
|
+
*
|
|
81
|
+
* 冲突时执行 `git rebase --abort` 回到 pull 前状态,并返回 conflicts 清单,
|
|
82
|
+
* 让调用方决定下一步(人工解决 / 放弃)。绝不自动 resolve。
|
|
83
|
+
*
|
|
84
|
+
* 远端无新提交时返回 `{ ok: true, upToDate: true }`。
|
|
85
|
+
*
|
|
86
|
+
* 注意:调用方需保证 repoPath 是 git 仓库(用 isGitRepo 预检)。
|
|
87
|
+
*/
|
|
88
|
+
export declare function pullRepo(repoPath: string): GitPullResult;
|
|
89
|
+
/** `git push` 结果 */
|
|
90
|
+
export interface GitPushResult {
|
|
91
|
+
/** 是否成功 */
|
|
92
|
+
readonly ok: boolean;
|
|
93
|
+
/** 是否被跳过(无 remote / push=false / 无 upstream) */
|
|
94
|
+
readonly skipped: boolean;
|
|
95
|
+
/** 跳过/失败原因 */
|
|
96
|
+
readonly reason?: string;
|
|
97
|
+
/** push 到的 remote 名称(如 "origin") */
|
|
98
|
+
readonly remote?: string;
|
|
99
|
+
/** 实际生效的 push 模式:direct = 普通 push;gerrit-review = 走 refs/for/<branch> review */
|
|
100
|
+
readonly mode?: "direct" | "gerrit-review";
|
|
101
|
+
/** 仅在 direct 拒绝后自动 fallback 到 gerrit-review 成功时为 true */
|
|
102
|
+
readonly autoFallback?: true;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* 检测 stderr 是否是 Gerrit 对受保护分支的拒绝特征。
|
|
106
|
+
*
|
|
107
|
+
* Gerrit 对 master 等受保护分支的直接 push 返回 "prohibited by Gerrit"
|
|
108
|
+
* 或 "need 'Push' rights"。命中后可 fallback 到 `refs/for/<branch>` 走 review。
|
|
109
|
+
*/
|
|
110
|
+
export declare function isGerritRejection(stderr: string): boolean;
|
|
111
|
+
/**
|
|
112
|
+
* `git push` —— 推送当前分支,失败时若检测到 Gerrit 拒绝则自动 fallback 到 review。
|
|
113
|
+
*
|
|
114
|
+
* 行为:
|
|
115
|
+
* - 有 upstream → `git push`(尊重 push.default 配置)
|
|
116
|
+
* - 无 upstream → `git push --set-upstream <remote> <branch>`
|
|
117
|
+
* - 任一路径失败且 stderr 命中 Gerrit 拒绝特征 → 自动重试
|
|
118
|
+
* `git push <remote> HEAD:refs/for/<branch>`(spawnSync 数组参数,防注入)
|
|
119
|
+
*
|
|
120
|
+
* 兼容 GitHub / GitLab / Gerrit / 内部 Git 服务,不硬编码 URL 或 refspec。
|
|
121
|
+
* Gerrit 用户无需手动配置 .git/config 的 `push = refs/heads/*:refs/for/*`,
|
|
122
|
+
* 检测到 direct push 被拒即自动走 review(返回 mode="gerrit-review", autoFallback=true)。
|
|
123
|
+
*
|
|
124
|
+
* 不抛错 —— 返回结构化结果让工具层向用户报告。
|
|
125
|
+
*/
|
|
126
|
+
export declare function pushRepo(repoPath: string): GitPushResult;
|
|
127
|
+
/**
|
|
128
|
+
* 获取 `git status --short` 解析后的变更清单。
|
|
129
|
+
*
|
|
130
|
+
* 用于 dryRun 预览 + 提交后校验 filesChanged。
|
|
131
|
+
* 返回相对仓库根的路径数组(去重 + 排序,确保跨平台一致)。
|
|
132
|
+
*/
|
|
133
|
+
export declare function getGitStatusShort(repoPath: string): readonly string[];
|
|
134
|
+
/**
|
|
135
|
+
* 是否配置了 git remote。
|
|
136
|
+
*
|
|
137
|
+
* 用于工具层在 push=true 时预判"无 remote → commit-only 降级"路径。
|
|
138
|
+
*/
|
|
139
|
+
export declare function hasRemote(repoPath: string): boolean;
|
|
140
|
+
/**
|
|
141
|
+
* 默认 .gitignore 模板(co-engram 仓库)。
|
|
142
|
+
*
|
|
143
|
+
* 设计原则:整个 `.co-engram/` 目录不入库(派生数据 + 行为缓存 +
|
|
144
|
+
* 审计日志,均可重新生成或本地保留),只跟踪用户内容(*.md, synapses/)。
|
|
145
|
+
*
|
|
146
|
+
* Obsidian 用户态文件(workspace.json 等)每台机器不同,不入库;
|
|
147
|
+
* 团队级配置(app.json, appearance.json 等)可入库,由用户决定。
|
|
148
|
+
*/
|
|
149
|
+
export declare const DEFAULT_CO_ENGRAM_GITIGNORE = "# co-engram \u4ED3\u5E93\u9ED8\u8BA4 .gitignore\n# \u6574\u4E2A .co-engram/ \u76EE\u5F55\u4E0D\u5165\u5E93(\u6D3E\u751F\u6570\u636E + \u884C\u4E3A\u7F13\u5B58 + \u5BA1\u8BA1\u65E5\u5FD7,\u53EF\u91CD\u65B0\u751F\u6210)\n.co-engram/\n\n# Private engrams(visibility='private')\u2014\u2014 \u7528\u6237\u79C1\u4EBA\u8BB0\u5FC6,\u4E0D\u5165\u56E2\u961F\u4ED3\u5E93\n# \u672C\u673A agent \u4ECD\u53EF\u7D22\u5F15/\u68C0\u7D22;\u53EA\u5728 git sync \u5C42\u9694\u79BB\u3002\n# \u7528\u6237\u82E5\u60F3\u4FDD\u7559 private engram \u7684 git \u5386\u53F2,\u53EF\u5728 private/ \u5B50\u76EE\u5F55\u5EFA\u72EC\u7ACB git \u4ED3\u5E93\u3002\nprivate/\n\n# Obsidian \u7528\u6237\u6001(\u6BCF\u53F0\u673A\u5668\u4E0D\u540C)\n.obsidian/workspace.json\n.obsidian/workspace-mobile.json\n.obsidian/workspace.json.bak\n.obsidian/cache\n.obsidian/plugins/*/data.json\n\n# \u7CFB\u7EDF\n.DS_Store\nThumbs.db\n*.swp\n*.swo\n";
|
|
150
|
+
/**
|
|
151
|
+
* 若缺失则创建 .gitignore(用 DEFAULT_CO_ENGRAM_GITIGNORE 模板)。
|
|
152
|
+
*
|
|
153
|
+
* @returns true 表示本次创建,false 表示已存在未动。
|
|
154
|
+
*/
|
|
155
|
+
export declare function ensureGitignore(repoPath: string): boolean;
|
|
156
|
+
/**
|
|
157
|
+
* 向已存在的 .gitignore 追加规则(幂等)。
|
|
158
|
+
*
|
|
159
|
+
* 用于让历史已存在的 .gitignore 升级,补上新规则(如 `private/`)。
|
|
160
|
+
* 与 `ensureGitignore` 互补:后者只处理"文件不存在"场景。
|
|
161
|
+
*
|
|
162
|
+
* 幂等性:若 .gitignore 已含相同 rule 行(忽略首尾空白),不重复追加。
|
|
163
|
+
*
|
|
164
|
+
* @returns true 表示本次追加,false 表示已含该 rule 或 .gitignore 不存在。
|
|
165
|
+
*/
|
|
166
|
+
export declare function appendToGitignore(repoPath: string, rule: string): boolean;
|
|
167
|
+
/**
|
|
168
|
+
* 把 `.co-engram/` 目录从 git index 移除(磁盘文件保留)。
|
|
169
|
+
*
|
|
170
|
+
* `.gitignore` 只对未 track 的文件生效;若历史 commit 已 track 了
|
|
171
|
+
* `.co-engram/*`,新建 .gitignore 后这些文件仍会被 commit。
|
|
172
|
+
*
|
|
173
|
+
* 本函数检测这一情况,若已 track 则 `git rm -r --cached --quiet .co-engram/`,
|
|
174
|
+
* 让缓存目录真正退出 git 跟踪(磁盘文件原样保留,不影响运行时)。
|
|
175
|
+
*
|
|
176
|
+
* **重要副作用:** commit 描述是"删除这些文件"。协作者 pull 此 commit 时,
|
|
177
|
+
* 他们本地的 `.co-engram/*` 磁盘文件也会被 git 删除(因为 commit 说删)。
|
|
178
|
+
* 若协作者本地有不可再生的数据(如 audit.jsonl 团队审计),会丢失。
|
|
179
|
+
* 调用方应让用户显式 opt-in,而非默认执行。
|
|
180
|
+
*
|
|
181
|
+
* @returns 移除的文件数(0 = 本来就没 track 或失败)。
|
|
182
|
+
*/
|
|
183
|
+
export declare function untrackCoEngramCache(repoPath: string): number;
|
|
184
|
+
/**
|
|
185
|
+
* 只读检测:`.co-engram/` 下已 tracked 的文件数(不修改 index)。
|
|
186
|
+
*
|
|
187
|
+
* 用于 dryRun 预测 + 工具层判断是否需要提示用户 opt-in untrack。
|
|
188
|
+
*/
|
|
189
|
+
export declare function countTrackedCoEngramCache(repoPath: string): number;
|
|
190
|
+
/**
|
|
191
|
+
* 把 `private/` 目录从 git index 移除(磁盘文件保留)。
|
|
192
|
+
*
|
|
193
|
+
* `private/` 已加入 DEFAULT_CO_ENGRAM_GITIGNORE,新文件自动跳过;
|
|
194
|
+
* 但历史 commit 已 track 的 `private/*.md` 仍会被 commit,需显式 untrack。
|
|
195
|
+
*
|
|
196
|
+
* **重要副作用(比 `.co-engram/` 更危险):** private engram 是用户私人记忆,
|
|
197
|
+
* commit 描述是"删除这些文件"。协作者 pull 时,他们本地 `private/*.md` 也会被
|
|
198
|
+
* git 删除 —— 而 private 通常**不可再生**(用户的个人凭据/路径/偏好)。
|
|
199
|
+
*
|
|
200
|
+
* 调用方必须:
|
|
201
|
+
* 1. dryRun 预览,明确告知"会从 git 移除 N 个 private 文件";
|
|
202
|
+
* 2. 让用户显式 opt-in(不能默认执行);
|
|
203
|
+
* 3. 提示用户:本机磁盘文件保留,但跨机历史已被抹去。
|
|
204
|
+
*
|
|
205
|
+
* @returns 移除的文件数(0 = 本来就没 track 或失败)。
|
|
206
|
+
*/
|
|
207
|
+
export declare function untrackPrivateDir(repoPath: string): number;
|
|
208
|
+
/**
|
|
209
|
+
* 只读检测:`private/` 下已 tracked 的文件数(不修改 index)。
|
|
210
|
+
*
|
|
211
|
+
* 用于 dryRun 预测 + 工具层判断是否需要提示用户 opt-in untrack。
|
|
212
|
+
*/
|
|
213
|
+
export declare function countTrackedPrivateDir(repoPath: string): number;
|
|
214
|
+
/**
|
|
215
|
+
* 读取 .gitignore 内容(用于诊断/展示)。不存在返回 null。
|
|
216
|
+
*/
|
|
217
|
+
export declare function readGitignore(repoPath: string): string | null;
|
|
218
|
+
/**
|
|
219
|
+
* 只读检测:.gitignore 是否已含指定 rule(逐行 trim 后比对)。
|
|
220
|
+
*
|
|
221
|
+
* 与 `appendToGitignore` 的检测逻辑镜像,但不写盘。
|
|
222
|
+
* 用于 dryRun 预测:engram_sync 在只读模式下判断是否需要追加 private/。
|
|
223
|
+
*/
|
|
224
|
+
export declare function gitignoreContainsRule(repoPath: string, rule: string): boolean;
|
|
57
225
|
//# sourceMappingURL=git.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/storage/git.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/storage/git.ts"],"names":[],"mappings":"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"}
|