skill-schedule 0.3.14 → 0.3.16
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/.gen-inputs.json +8 -0
- package/dist/cli/cmd_read.js +48 -1
- package/dist/cli/cmd_read.js.map +1 -1
- package/dist/cli/keys.d.ts +1 -1
- package/dist/cli/keys.d.ts.map +1 -1
- package/dist/cli/keys.js +4 -0
- package/dist/cli/keys.js.map +1 -1
- package/dist/cli/registry.d.ts.map +1 -1
- package/dist/cli/registry.js +2 -1
- package/dist/cli/registry.js.map +1 -1
- package/dist/data/commands.d.ts +12 -0
- package/dist/data/commands.d.ts.map +1 -0
- package/dist/data/commands.js +7 -0
- package/dist/data/commands.js.map +1 -0
- package/dist/data/index.d.ts +10 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js +10 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/query.d.ts +4 -0
- package/dist/data/query.d.ts.map +1 -0
- package/dist/data/query.js +38 -0
- package/dist/data/query.js.map +1 -0
- package/dist/data/routes.d.ts +8 -0
- package/dist/data/routes.d.ts.map +1 -0
- package/dist/data/routes.js +2 -0
- package/dist/data/routes.js.map +1 -0
- package/dist/data/schema.d.ts +4 -0
- package/dist/data/schema.d.ts.map +1 -0
- package/dist/data/schema.js +30 -0
- package/dist/data/schema.js.map +1 -0
- package/dist/data/tables.d.ts +16 -0
- package/dist/data/tables.d.ts.map +1 -0
- package/dist/data/tables.js +21 -0
- package/dist/data/tables.js.map +1 -0
- package/dist/help/helpFile.js +2 -2
- package/dist/help/helpFile.js.map +1 -1
- package/dist/help/scenes/help-assets.d.ts +40 -32
- package/dist/help/scenes/help-assets.d.ts.map +1 -1
- package/dist/help/scenes/help-assets.js +929 -980
- package/dist/help/scenes/help-assets.js.map +1 -1
- package/dist/shared/commandSpec.d.ts +6 -0
- package/dist/shared/commandSpec.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/.gen-inputs.json
CHANGED
|
@@ -17,6 +17,14 @@
|
|
|
17
17
|
"src": "a126be304020be6fae211adacfa71887cb2ad4582f160a244055fc868712b8b7",
|
|
18
18
|
"dist": "0a3d40f3671f08d2563f86cc156078f47558ae07491847359bb93b48337b6b9b"
|
|
19
19
|
},
|
|
20
|
+
"packages\\skill-schedule\\src\\data\\commands.ts": {
|
|
21
|
+
"src": "4d850d9c0f4b4c93f4f8ffc3f8a4fa25824183d244174caa9fe25beaab3c30cf",
|
|
22
|
+
"dist": "f0aad9ee9995441b675c6075f5f9b889003938421f582cf611263992f78a8327"
|
|
23
|
+
},
|
|
24
|
+
"packages\\skill-schedule\\src\\data\\routes.ts": {
|
|
25
|
+
"src": "b85f4ae68d2f9e1f2fe7128dda7df2ae983c143549bb82856125ecc594c54382",
|
|
26
|
+
"dist": "5cb55d50662efe214e2ec458c97241ffa632d655ed2830cbf464919288414247"
|
|
27
|
+
},
|
|
20
28
|
"packages\\skill-schedule\\src\\plan\\commands.ts": {
|
|
21
29
|
"src": "e70e3aa06d0d7f163e5755a595cf37f553e5b6e6a519009292713e9392a4c1ab",
|
|
22
30
|
"dist": "bd8822f57adcc40ee847d6c732820f492da707e487360df75843434eceb81813"
|
package/dist/cli/cmd_read.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { DatabaseSync } from 'node:sqlite';
|
|
2
3
|
import { REGISTRY } from './registry.js';
|
|
3
|
-
import { ScheduleFetchError, SchedulePolicyError, resolveDbPath, openScheduleDb, closeScheduleDb, } from '../fetch/index.js';
|
|
4
|
+
import { ScheduleFetchError, SchedulePolicyError, resolveDbPath, openScheduleDb, closeScheduleDb, resolveDbDir, dbFilename, dbFileOf, } from '../fetch/index.js';
|
|
4
5
|
import { scheduleShapeFor, buildScheduleEnvelope, renderEnvelopeHtml, assertHtmlSize, loadTemplate, templateFor, fillTemplate, ScheduleRenderError, } from '../render/index.js';
|
|
5
6
|
import { isConfigKey, runConfigKey } from './config.js';
|
|
6
7
|
// #706 · 配置体检:设置页专用的一条只读命令,同走「进分派层之前拦下」这条口(判据住 src/health.ts)。
|
|
@@ -32,6 +33,37 @@ function runWithDb(spec, params) {
|
|
|
32
33
|
closeScheduleDb(handle);
|
|
33
34
|
}
|
|
34
35
|
}
|
|
36
|
+
/** #961 · 数据族只读开库:不建表、不迁移、不写库(只跑 `SELECT` 与 `PRAGMA`)。
|
|
37
|
+
*
|
|
38
|
+
* 现有读命令(视图族)走上面的 `runWithDb`(`openScheduleDb` 建表+改名+补列);
|
|
39
|
+
* 数据族走这里:纯函数算出库文件路径(不 `mkdir`),只读打开,包成 `ScheduleDb`
|
|
40
|
+
* (`initialized: false`,不打初始化提示),跑完即关。库文件不存在即大声失败(exit 4)。
|
|
41
|
+
* 本族不许顺手改视图族:两条路各走各的,既有载荷形态一行不动。
|
|
42
|
+
*/
|
|
43
|
+
function isScheduleDataKey(key) {
|
|
44
|
+
return key === 'schedule.data.schema' || key === 'schedule.data.query';
|
|
45
|
+
}
|
|
46
|
+
function runWithDbReadOnly(spec, params) {
|
|
47
|
+
const dbDir = resolveDbDir();
|
|
48
|
+
const dbFile = dbFileOf(dbDir, dbFilename());
|
|
49
|
+
let db;
|
|
50
|
+
try {
|
|
51
|
+
db = new DatabaseSync(dbFile, { readOnly: true });
|
|
52
|
+
}
|
|
53
|
+
catch (e) {
|
|
54
|
+
throw new ScheduleFetchError('SCHEDULE_DB_UNREADABLE', '作息 DB 只读打开失败:' + dbFile, { cause: e });
|
|
55
|
+
}
|
|
56
|
+
const handle = { db, path: dbFile, initialized: false };
|
|
57
|
+
try {
|
|
58
|
+
return spec.run(params, handle);
|
|
59
|
+
}
|
|
60
|
+
finally {
|
|
61
|
+
try {
|
|
62
|
+
db.close();
|
|
63
|
+
}
|
|
64
|
+
catch { /* 关闭失败不谎报 */ }
|
|
65
|
+
}
|
|
66
|
+
}
|
|
35
67
|
function parseArgs(a) {
|
|
36
68
|
const o = { key: a[0], params: undefined, html: undefined, timeout: DEFAULT_TIMEOUT_MS };
|
|
37
69
|
for (let i = 1; i < a.length; i++) {
|
|
@@ -102,6 +134,21 @@ async function main() {
|
|
|
102
134
|
fail(3, '未知 schedule key:' + key);
|
|
103
135
|
// #203:`schedule.help.lookup` 在**开库之前**走(只读页不建库);其余键走开库分支。
|
|
104
136
|
// 开库与否是基础设施事实(同配置/体检拦截口),不是命令事实,故这一个分支住出口。
|
|
137
|
+
// #961 · 数据族走只读分支(不建表、不迁移、不落盘):`--html` 显式落点也不吃(本族不产文件)。
|
|
138
|
+
if (isScheduleDataKey(key)) {
|
|
139
|
+
const r = runWithDbReadOnly(spec, params);
|
|
140
|
+
for (const n of ('notes' in r ? r.notes ?? [] : []))
|
|
141
|
+
note(n);
|
|
142
|
+
env = buildScheduleEnvelope(key, r.data);
|
|
143
|
+
exitCode = 'exitCode' in r ? r.exitCode ?? 0 : 0;
|
|
144
|
+
clearTimeout(timer);
|
|
145
|
+
process.stdout.write(JSON.stringify(env) + '\n');
|
|
146
|
+
if (exitCode !== 0) {
|
|
147
|
+
note('这一趟没达成(补偿路径见回执 remote 字段):exit ' + exitCode);
|
|
148
|
+
process.exit(exitCode);
|
|
149
|
+
}
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
105
152
|
const r = key === 'schedule.help.lookup'
|
|
106
153
|
? spec.run(params)
|
|
107
154
|
: runWithDb(spec, params);
|
package/dist/cli/cmd_read.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmd_read.js","sourceRoot":"","sources":["../../src/cli/cmd_read.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EACL,kBAAkB,EAAE,mBAAmB,EACvC,aAAa,EAAE,cAAc,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"cmd_read.js","sourceRoot":"","sources":["../../src/cli/cmd_read.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/keys.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { EnvelopeShape } from 'base-link-core';
|
|
2
|
-
export declare const SCHEDULE_KEYS: readonly ["schedule.plan.write", "schedule.record.write", "schedule.help.lookup", "schedule.plan.today", "schedule.record.compare", "schedule.record.detail", "schedule.record.range", "schedule.record.today"];
|
|
2
|
+
export declare const SCHEDULE_KEYS: readonly ["schedule.plan.write", "schedule.record.write", "schedule.data.query", "schedule.data.schema", "schedule.help.lookup", "schedule.plan.today", "schedule.record.compare", "schedule.record.detail", "schedule.record.range", "schedule.record.today"];
|
|
3
3
|
export type ScheduleCommandKey = (typeof SCHEDULE_KEYS)[number];
|
|
4
4
|
export declare const SCHEDULE_KEY_SHAPES: Record<ScheduleCommandKey, EnvelopeShape>;
|
|
5
5
|
//# sourceMappingURL=keys.d.ts.map
|
package/dist/cli/keys.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/cli/keys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/cli/keys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,eAAO,MAAM,aAAa,gQAWhB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAChE,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAWzE,CAAC"}
|
package/dist/cli/keys.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export const SCHEDULE_KEYS = [
|
|
2
2
|
'schedule.plan.write',
|
|
3
3
|
'schedule.record.write',
|
|
4
|
+
'schedule.data.query',
|
|
5
|
+
'schedule.data.schema',
|
|
4
6
|
'schedule.help.lookup',
|
|
5
7
|
'schedule.plan.today',
|
|
6
8
|
'schedule.record.compare',
|
|
@@ -11,6 +13,8 @@ export const SCHEDULE_KEYS = [
|
|
|
11
13
|
export const SCHEDULE_KEY_SHAPES = {
|
|
12
14
|
'schedule.plan.write': 'receipt',
|
|
13
15
|
'schedule.record.write': 'receipt',
|
|
16
|
+
'schedule.data.query': 'resultset',
|
|
17
|
+
'schedule.data.schema': 'resultset',
|
|
14
18
|
'schedule.help.lookup': 'list',
|
|
15
19
|
'schedule.plan.today': 'list',
|
|
16
20
|
'schedule.record.compare': 'analysis',
|
package/dist/cli/keys.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/cli/keys.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,qBAAqB;IACrB,uBAAuB;IACvB,sBAAsB;IACtB,qBAAqB;IACrB,yBAAyB;IACzB,wBAAwB;IACxB,uBAAuB;IACvB,uBAAuB;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAA8C;IAC5E,qBAAqB,EAAE,SAAS;IAChC,uBAAuB,EAAE,SAAS;IAClC,sBAAsB,EAAE,MAAM;IAC9B,qBAAqB,EAAE,MAAM;IAC7B,yBAAyB,EAAE,UAAU;IACrC,wBAAwB,EAAE,QAAQ;IAClC,uBAAuB,EAAE,MAAM;IAC/B,uBAAuB,EAAE,MAAM;CAChC,CAAC"}
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/cli/keys.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,qBAAqB;IACrB,uBAAuB;IACvB,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;IACtB,qBAAqB;IACrB,yBAAyB;IACzB,wBAAwB;IACxB,uBAAuB;IACvB,uBAAuB;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAA8C;IAC5E,qBAAqB,EAAE,SAAS;IAChC,uBAAuB,EAAE,SAAS;IAClC,qBAAqB,EAAE,WAAW;IAClC,sBAAsB,EAAE,WAAW;IACnC,sBAAsB,EAAE,MAAM;IAC9B,qBAAqB,EAAE,MAAM;IAC7B,yBAAyB,EAAE,UAAU;IACrC,wBAAwB,EAAE,QAAQ;IAClC,uBAAuB,EAAE,MAAM;IAC/B,uBAAuB,EAAE,MAAM;CAChC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAQ5D,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAM,CAAC;AAExD,eAAO,MAAM,aAAa,UAA+B,CAAC"}
|
package/dist/cli/registry.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { ADMIN_COMMANDS } from '../admin/index.js';
|
|
2
2
|
import { ANALYZE_COMMANDS } from '../analyze/index.js';
|
|
3
|
+
import { DATA_COMMANDS } from '../data/index.js';
|
|
3
4
|
import { PLAN_COMMANDS } from '../plan/index.js';
|
|
4
5
|
import { QUERY_COMMANDS } from '../query/index.js';
|
|
5
6
|
import { WRITE_COMMANDS } from '../write/index.js';
|
|
6
|
-
const SOURCES = [ADMIN_COMMANDS, ANALYZE_COMMANDS, PLAN_COMMANDS, QUERY_COMMANDS, WRITE_COMMANDS];
|
|
7
|
+
const SOURCES = [ADMIN_COMMANDS, ANALYZE_COMMANDS, DATA_COMMANDS, PLAN_COMMANDS, QUERY_COMMANDS, WRITE_COMMANDS];
|
|
7
8
|
export const REGISTRY = {};
|
|
8
9
|
for (const list of SOURCES)
|
|
9
10
|
for (const s of list)
|
package/dist/cli/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,MAAM,OAAO,GAAwC,CAAC,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,MAAM,OAAO,GAAwC,CAAC,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;AACtJ,MAAM,CAAC,MAAM,QAAQ,GAAgC,EAAE,CAAC;AACxD,KAAK,MAAM,IAAI,IAAI,OAAO;IAAE,KAAK,MAAM,CAAC,IAAI,IAAI;QAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACtE,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { runDataSchema } from './schema.js';
|
|
2
|
+
export declare const DATA_COMMANDS: {
|
|
3
|
+
kind: "read";
|
|
4
|
+
key: string;
|
|
5
|
+
shape: "resultset";
|
|
6
|
+
title: string;
|
|
7
|
+
wakeWord: string;
|
|
8
|
+
surface: "program";
|
|
9
|
+
run: typeof runDataSchema;
|
|
10
|
+
example: string;
|
|
11
|
+
}[];
|
|
12
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/data/commands.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,eAAO,MAAM,aAAa;;;;;;;;;GAGQ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { runDataSchema } from './schema.js';
|
|
2
|
+
import { runDataQuery } from './query.js';
|
|
3
|
+
export const DATA_COMMANDS = [
|
|
4
|
+
{ kind: 'read', key: 'schedule.data.schema', shape: 'resultset', title: '数据目录', wakeWord: '数据目录', surface: 'program', run: runDataSchema, example: 'schedule-cmd-read schedule.data.schema' },
|
|
5
|
+
{ kind: 'read', key: 'schedule.data.query', shape: 'resultset', title: '数据查询', wakeWord: '数据查询', surface: 'program', run: runDataQuery, example: 'schedule-cmd-read schedule.data.query --params \'{"queries":[{"from":"schedule_records","select":["date","activity"],"orderBy":[{"field":"date","dir":"asc"}]}]}\'' },
|
|
6
|
+
];
|
|
7
|
+
//# sourceMappingURL=commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/data/commands.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,wCAAwC,EAAE;IAC7L,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,oKAAoK,EAAE;CACvR,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** #961 · 数据族能力对外的门:命令声明与路由占位(权威源在 `commands.ts`/`routes.ts`,这里只是转出)。
|
|
2
|
+
*
|
|
3
|
+
* 对外 2 件:`DATA_COMMANDS`(生成的 `cli/registry.ts` 从这里汇总)+`DATA_ROUTES`
|
|
4
|
+
* (空数组占位,生成的 `triggers/routes.generated.ts` 从这里汇总,程序面键无路由)。
|
|
5
|
+
* 域内其他件(允许清单 `tables.ts`、目录实现 `schema.ts`、引擎实现 `query.ts`)不出这个目录,
|
|
6
|
+
* 故不在这里转出。
|
|
7
|
+
*/
|
|
8
|
+
export { DATA_COMMANDS } from './commands.js';
|
|
9
|
+
export { DATA_ROUTES } from './routes.js';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** #961 · 数据族能力对外的门:命令声明与路由占位(权威源在 `commands.ts`/`routes.ts`,这里只是转出)。
|
|
2
|
+
*
|
|
3
|
+
* 对外 2 件:`DATA_COMMANDS`(生成的 `cli/registry.ts` 从这里汇总)+`DATA_ROUTES`
|
|
4
|
+
* (空数组占位,生成的 `triggers/routes.generated.ts` 从这里汇总,程序面键无路由)。
|
|
5
|
+
* 域内其他件(允许清单 `tables.ts`、目录实现 `schema.ts`、引擎实现 `query.ts`)不出这个目录,
|
|
6
|
+
* 故不在这里转出。
|
|
7
|
+
*/
|
|
8
|
+
export { DATA_COMMANDS } from './commands.js';
|
|
9
|
+
export { DATA_ROUTES } from './routes.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/data/query.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAezF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/** #961 · 作息引擎命令的实现:`schedule.data.query` 的 `run`。
|
|
2
|
+
*
|
|
3
|
+
* 干什么:把整份 `--params`(`{ queries: [...] }`)经公共层引擎件
|
|
4
|
+
* (`executeDataQueries`:查询单解析、目录校验、结果集装配)跑成
|
|
5
|
+
* `shape: resultset` 的结果集(与请求同序对应;坏项按项拒,好项照常)。
|
|
6
|
+
* 单表(选字段、条件、排序)+显式 `on` 两表连接(`join` 长度只许 1,
|
|
7
|
+
* 结果字段可来自两表;`via` 预定义关联路径只留语法位,出现即按项拒)+
|
|
8
|
+
* 单表分组聚合(`groupBy`+`agg` 成对出现,聚合列按 `as` 起名;`select` 与
|
|
9
|
+
* `agg` 不可同存,`join` 与 `agg` 组合另票)+分页续取(`page.size`+`next`
|
|
10
|
+
* 不透明凭据,行走游标、聚合走偏移);批量容器同序对应、单项失败不毁整批。
|
|
11
|
+
*
|
|
12
|
+
* 不产任何文件:回 `html: ''`+`delivery: false`(无模板),出口据此不落盘;
|
|
13
|
+
* 执行期不写库(只跑 `SELECT` 与 `PRAGMA`)。
|
|
14
|
+
* 请求级非法(不是对象/`queries` 不是非空数组)抛 `POLICY_BAD_INPUT`(exit 2);
|
|
15
|
+
* 单项问题不出错码,走项里的 `{ ok: false, error }`(exit 0)。
|
|
16
|
+
*/
|
|
17
|
+
import { executeDataQueries, LinkCoreError } from 'base-link-core';
|
|
18
|
+
import { SchedulePolicyError } from '../fetch/errors.js';
|
|
19
|
+
import { SCHEDULE_DATA_TABLES } from './tables.js';
|
|
20
|
+
export function runDataQuery(params, handle) {
|
|
21
|
+
let results;
|
|
22
|
+
try {
|
|
23
|
+
results = executeDataQueries(handle.db, SCHEDULE_DATA_TABLES, params);
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
if (e instanceof LinkCoreError)
|
|
27
|
+
throw new SchedulePolicyError('POLICY_BAD_INPUT', e.message);
|
|
28
|
+
throw e;
|
|
29
|
+
}
|
|
30
|
+
return {
|
|
31
|
+
data: {
|
|
32
|
+
results,
|
|
33
|
+
},
|
|
34
|
+
html: '',
|
|
35
|
+
delivery: false,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/data/query.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,UAAU,YAAY,CAAC,MAA+B,EAAE,MAAkB;IAC9E,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACH,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,aAAa;YAAE,MAAM,IAAI,mBAAmB,CAAC,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAC7F,MAAM,CAAC,CAAC;IACV,CAAC;IACD,OAAO;QACL,IAAI,EAAE;YACJ,OAAO;SACR;QACD,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,KAAK;KAChB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** #961 · 数据族的路由声明(**权威源**,空数组占位)。
|
|
2
|
+
*
|
|
3
|
+
* 程序面命令不要路由(`surface: 'program'`,生成器 `wakeWordGate` 豁免+`checkRouteSelf` 守卫);
|
|
4
|
+
* 本文件是生成器要求的占位(每个能力恰导一个路由数组,`src/data/index.ts` 再导出)。
|
|
5
|
+
*/
|
|
6
|
+
import type { RouteEntry } from '../shared/commandSpec.js';
|
|
7
|
+
export declare const DATA_ROUTES: readonly RouteEntry[];
|
|
8
|
+
//# sourceMappingURL=routes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/data/routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,eAAO,MAAM,WAAW,EAAE,SAAS,UAAU,EAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/data/routes.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,WAAW,GAA0B,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/data/schema.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGjD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAiB3F"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** #961 · 作息目录命令的实现:`schedule.data.schema` 的 `run`。
|
|
2
|
+
*
|
|
3
|
+
* 干什么:用允许清单(`./tables.ts`)经公共层目录读取件(`readDataSchema`)
|
|
4
|
+
* 现读各表的列与类型,装成 `shape: resultset` 的一份结果(单项,`{ ok: true, tables }`)。
|
|
5
|
+
* 校验用的目录与返回的目录是同一份——两处都走 `readDataSchema`(引擎命令复用同一件)。
|
|
6
|
+
*
|
|
7
|
+
* 不产任何文件:回 `html: ''`+`delivery: false`(无模板),出口据此不落盘;
|
|
8
|
+
* 不读参数(目录无参数);执行期不写库(只跑 `PRAGMA table_info`)。
|
|
9
|
+
*/
|
|
10
|
+
import { readDataSchema } from 'base-link-core';
|
|
11
|
+
import { SCHEDULE_DATA_TABLES } from './tables.js';
|
|
12
|
+
export function runDataSchema(_params, handle) {
|
|
13
|
+
const tables = readDataSchema(handle.db, SCHEDULE_DATA_TABLES);
|
|
14
|
+
return {
|
|
15
|
+
data: {
|
|
16
|
+
results: [
|
|
17
|
+
{
|
|
18
|
+
ok: true,
|
|
19
|
+
tables: tables.map((t) => ({
|
|
20
|
+
table: t.table,
|
|
21
|
+
fields: t.fields.map((f) => ({ name: f.name, type: f.type })),
|
|
22
|
+
})),
|
|
23
|
+
},
|
|
24
|
+
],
|
|
25
|
+
},
|
|
26
|
+
html: '',
|
|
27
|
+
delivery: false,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/data/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,UAAU,aAAa,CAAC,OAAgC,EAAE,MAAkB;IAChF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAC/D,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP;oBACE,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACzB,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;qBAC9D,CAAC,CAAC;iBACJ;aACF;SACF;QACD,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,KAAK;KAChB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** #961 · 作息数据族允许清单(显式声明):目录命令允许暴露哪些表。
|
|
2
|
+
*
|
|
3
|
+
* 出处:`docs/agents/数据族-规格.md` §五——表清单必须显式,不能“库里有什么就给什么”。
|
|
4
|
+
* 作息库里有不该暴露的东西:旧版小时表改名保留的
|
|
5
|
+
* `schedule_plans_legacy_2026_06_29`(见 `src/fetch/db.ts` 的改名语义,只留数据、不提供查询);
|
|
6
|
+
* 允许清单只列这 3 张终态业务表;列目录不另存第二份,运行时 `PRAGMA table_info` 现读
|
|
7
|
+
* (公共层 `readDataSchema`)。
|
|
8
|
+
*
|
|
9
|
+
* 顺序即目录命令返回的顺序(确定性可比,判据按此逐条断言)。
|
|
10
|
+
* 维护者裁定:3 张业务表可暴露,旧表不暴露(本件即裁定落点)。
|
|
11
|
+
*/
|
|
12
|
+
export declare const SCHEDULE_DATA_TABLES: readonly ["schedule_records", "daily_summary", "schedule_plans"];
|
|
13
|
+
export type ScheduleDataTable = (typeof SCHEDULE_DATA_TABLES)[number];
|
|
14
|
+
/** 不允许暴露的表(遗留出口,登记并留说明):旧版小时表改名保留,只留数据、不提供查询。 */
|
|
15
|
+
export declare const SCHEDULE_DATA_EXCLUDED_TABLES: readonly ["schedule_plans_legacy_2026_06_29"];
|
|
16
|
+
//# sourceMappingURL=tables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../src/data/tables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,kEAIvB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,iDAAiD;AACjD,eAAO,MAAM,6BAA6B,+CAEhC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** #961 · 作息数据族允许清单(显式声明):目录命令允许暴露哪些表。
|
|
2
|
+
*
|
|
3
|
+
* 出处:`docs/agents/数据族-规格.md` §五——表清单必须显式,不能“库里有什么就给什么”。
|
|
4
|
+
* 作息库里有不该暴露的东西:旧版小时表改名保留的
|
|
5
|
+
* `schedule_plans_legacy_2026_06_29`(见 `src/fetch/db.ts` 的改名语义,只留数据、不提供查询);
|
|
6
|
+
* 允许清单只列这 3 张终态业务表;列目录不另存第二份,运行时 `PRAGMA table_info` 现读
|
|
7
|
+
* (公共层 `readDataSchema`)。
|
|
8
|
+
*
|
|
9
|
+
* 顺序即目录命令返回的顺序(确定性可比,判据按此逐条断言)。
|
|
10
|
+
* 维护者裁定:3 张业务表可暴露,旧表不暴露(本件即裁定落点)。
|
|
11
|
+
*/
|
|
12
|
+
export const SCHEDULE_DATA_TABLES = [
|
|
13
|
+
'schedule_records',
|
|
14
|
+
'daily_summary',
|
|
15
|
+
'schedule_plans',
|
|
16
|
+
];
|
|
17
|
+
/** 不允许暴露的表(遗留出口,登记并留说明):旧版小时表改名保留,只留数据、不提供查询。 */
|
|
18
|
+
export const SCHEDULE_DATA_EXCLUDED_TABLES = [
|
|
19
|
+
'schedule_plans_legacy_2026_06_29',
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=tables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tables.js","sourceRoot":"","sources":["../../src/data/tables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,kBAAkB;IAClB,eAAe;IACf,gBAAgB;CACR,CAAC;AAIX,iDAAiD;AACjD,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,kCAAkC;CAC1B,CAAC"}
|
package/dist/help/helpFile.js
CHANGED
|
@@ -41,8 +41,8 @@ export const HELP_INIT_SCENE_ID = 'first_use';
|
|
|
41
41
|
export const HELP_CONTACT = Object.freeze({
|
|
42
42
|
items: Object.freeze([
|
|
43
43
|
Object.freeze({ label: '邮箱', value: '975559549@qq.com' }),
|
|
44
|
-
Object.freeze({ label: 'GitHub', value: 'https://github.com/FeatherHunter/
|
|
45
|
-
Object.freeze({ label: 'Issues', value: 'https://github.com/FeatherHunter/
|
|
44
|
+
Object.freeze({ label: 'GitHub', value: 'https://github.com/FeatherHunter/ilife', url: true }),
|
|
45
|
+
Object.freeze({ label: 'Issues', value: 'https://github.com/FeatherHunter/ilife/issues', url: true }),
|
|
46
46
|
]),
|
|
47
47
|
copy_all: true,
|
|
48
48
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpFile.js","sourceRoot":"","sources":["../../src/help/helpFile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D;;4BAE4B;AAC5B,MAAM,CAAC,MAAM,cAAc,GAAG,WAAoB,CAAC;AAEnD,mDAAmD;AACnD,MAAM,UAAU,YAAY;IAC1B,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,wBAAwB;AACxB,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAe,CAAC;AACpD,MAAM,CAAC,MAAM,eAAe,GAAG,mBAA4B,CAAC;AAC5D,+DAA+D;AAC/D,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAc,CAAC;AAChD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAoB,CAAC;AAevD,MAAM,CAAC,MAAM,YAAY,GAAgB,MAAM,CAAC,MAAM,CAAC;IACrD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"helpFile.js","sourceRoot":"","sources":["../../src/help/helpFile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
/** #201 · 作息管家 HELP 内容资产(机器生成,禁手改词)。
|
|
2
2
|
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
3
|
+
* 两个源(分工写死在生成器里,可复核):
|
|
4
|
+
* 1. **结构**取自受跟踪 fixture `test/fixtures/t198-old-scenarios.json`(老实物取证,一个字不改):
|
|
5
|
+
* 分组/唤醒词/场景的条数与先后次序、场景 id、待开发状态;
|
|
6
|
+
* 2. **内容**取自 `scripts/help-rewrite-table.mjs`(#975 逐句重写表):标题/唤醒词/prompt 正文/字段表。
|
|
7
|
+
* 本文件由 `scripts/gen-help-assets.mjs` 生成:5 个一级分组/34 条唤醒词/85 条场景。
|
|
7
8
|
*
|
|
8
9
|
* 载荷契约:`packages/base-render/src/spec/help.ts` 的 `SCENE_DATA_SCHEMA`——`HELP_GROUPS` 就是
|
|
9
|
-
* 共享 help 模板要的 `groups` 参数,分三层:一级分组 →
|
|
10
|
+
* 共享 help 模板要的 `groups` 参数,分三层:一级分组 → 子功能(=一条唤醒词)→ 场景卡片。
|
|
10
11
|
* 该 schema 各层都是 `additionalProperties:false`,多一个键即校验失败,故本文件里的对象字段是闭集。
|
|
11
12
|
*
|
|
12
|
-
*
|
|
13
|
-
* 1.
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* 两处派生(生成器里写死、可复核):
|
|
14
|
+
* 1. 唤醒词去序号:老 HELP 的 `#0 记作息`/`T4 类别深挖` → 裸词 `记作息`/`类别深挖`
|
|
15
|
+
* (与路由表 `src/triggers/routes.generated.ts` 的 `phrase` 同形)。重写表里写的就是裸词,
|
|
16
|
+
* 生成器另有「表里的唤醒词必须等于源去序号后的裸词」一条断言把两边钉在一起。
|
|
16
17
|
* 2. 源 `status` 为空、但唤醒词属「今天没有命令可执行」的 5 条者,标 `【待开发】`:
|
|
17
18
|
* 源自标待开发 1 条,加上这几条下辖的场景,本文件标 `【待开发】` 的共 11 条。
|
|
18
19
|
* 3. 三层对齐:源「分组 → 唤醒词 → 场景」直接对到契约「groups → subgroups → scenes」,
|
|
@@ -24,31 +25,44 @@
|
|
|
24
25
|
* 里面没有类型位,旧实物 HELP 也没有类型徽章——凭空补一个空 `types` 等于自造内容,故不落该字段;
|
|
25
26
|
* 将来源数据真出现类型位,生成器会因字段闭集断言失败而报错(不会静默丢掉)。要变体徽章另开票。
|
|
26
27
|
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
28
|
+
* **不立字段的两种东西**(#975 重写时从老 `dimensions` 里摘掉的,逐条在重写表里具名声明):
|
|
29
|
+
* · 场景条件开关:`true`/`false`/`已有 4 条` 这类**描述当前局面**的值——它们不是用户要填的参数,
|
|
30
|
+
* 进意图句(让 AI 自己看局面),立成字段=逼用户去描述 AI 自己能看出来的事;
|
|
31
|
+
* · 口径层**自算**的值:`duration_minutes` 由起止时刻算,`src/policy/record.ts:99-104` 还会核对
|
|
32
|
+
* 用户给的值——立成字段只会让用户填错就报错。
|
|
33
|
+
* 硬门:老维度名既不在新字段、又没写进重写表的 `drops` ⇒ 生成器 fail-closed(信息不丢失台账);
|
|
34
|
+
* 老维度表本身不全(多数场景缺 date/time_start 这类必填位),故只查「不丢」一个方向,新增不拦。
|
|
35
|
+
*
|
|
36
|
+
* 本文件**不再带**老的两张伴随表(`HELP_SCENE_RESULTS`=场景 `result` 镜像/`HELP_GROUP_NOTES`=
|
|
37
|
+
* 一级分组 `desc` 镜像):用户 2026-09-27 裁定「以后不再有预期这种 UI 显示和装填的内容,和预期相关的
|
|
38
|
+
* 直接删掉」。老文本仍完整躺在 fixture 里,留档由那份取证承担,不在产物里再镜像一遍。
|
|
36
39
|
*
|
|
37
40
|
* 计数全部由数据算出(见 `HELP_TOTALS`),本文件不写第二个数;改资产即跟变。
|
|
38
41
|
* 改词走生成器:`node packages/skill-schedule/scripts/gen-help-assets.mjs`(`--check` 只比对不落盘)。
|
|
39
42
|
*/
|
|
40
|
-
/** 参数化表单字段(契约 `editable_fields`
|
|
43
|
+
/** 参数化表单字段(契约 `editable_fields` 的一条;#975 起带 kind 与控件附属)。 */
|
|
41
44
|
export interface HelpSceneField {
|
|
42
|
-
/**
|
|
45
|
+
/** 机器键:正文里的 `{{name}}` 与复制载荷末尾 `label: value` 行的 key 都用它(ASCII snake_case)。 */
|
|
43
46
|
readonly name: string;
|
|
44
|
-
/**
|
|
47
|
+
/** 人类可读标签(进复制载荷的 `label: value` 行;不列枚举/单位/格式)。 */
|
|
45
48
|
readonly label: string;
|
|
46
|
-
/**
|
|
49
|
+
/** 缺省机器值——一律空串。相对默认词(今天/明天)写在 `hint` 里,由执行侧解成 ISO。 */
|
|
47
50
|
readonly value: string;
|
|
48
|
-
/**
|
|
49
|
-
|
|
50
|
-
|
|
51
|
+
/** 输入类型(`packages/base-render/src/spec/help.ts` 的 `SceneFieldKind`):
|
|
52
|
+
* text/number/select/date/week/month/year/time。 */
|
|
53
|
+
readonly kind: string;
|
|
54
|
+
/** 必填:空的必填项挡住「复制指令」并提示补齐(模板 `getMissing`)。 */
|
|
51
55
|
readonly required: boolean;
|
|
56
|
+
/** 格式/例/默认值说明(一句话;单位与枚举不进标签,进这里)。 */
|
|
57
|
+
readonly hint?: string;
|
|
58
|
+
/** 仅 `select`:候选项(必填非空)。 */
|
|
59
|
+
readonly options?: readonly string[];
|
|
60
|
+
/** 仅 `number`:值域与步长。 */
|
|
61
|
+
readonly min?: number;
|
|
62
|
+
readonly max?: number;
|
|
63
|
+
readonly step?: number;
|
|
64
|
+
/** 控件占位提示。 */
|
|
65
|
+
readonly placeholder?: string;
|
|
52
66
|
}
|
|
53
67
|
/** 两态状态(契约 `SCENE_STATUS`:空串=可用,【待开发】=禁用)。写成联合型,
|
|
54
68
|
* 好让 `HELP_GROUPS` 直接就是共享 help 模板 `SceneData['groups']` 的形状,接线上不做二次转换。 */
|
|
@@ -80,18 +94,12 @@ export interface HelpGroupAsset {
|
|
|
80
94
|
export declare const HELP_GROUPS: readonly HelpGroupAsset[];
|
|
81
95
|
/** 扁平 85 条(顺序与 HELP 分组一致;单源派生,不重复落词)。 */
|
|
82
96
|
export declare const HELP_ASSETS: readonly HelpSceneAsset[];
|
|
83
|
-
/** 源场景 `result` 原文(85/85,键=场景 id)。契约里没有这个位,故不进
|
|
84
|
-
* `HELP_GROUPS`(`HELP_GROUPS` 只装纯场景数据);本表是源数据镜像,**当前 HELP 页不渲染**
|
|
85
|
-
* —— 页面上的「预期 ·」一律不出现(见文件头「页面外的两张源数据镜像」)。 */
|
|
86
|
-
export declare const HELP_SCENE_RESULTS: Readonly<Record<string, string>>;
|
|
87
|
-
/** 源一级分组 `desc` 原文(5/5,键=分组 id)。同上:契约里没有这个位,
|
|
88
|
-
* 不进 `HELP_GROUPS`;本表是源数据镜像,**当前 HELP 页不渲染**(见文件头「页面外的两张源数据镜像」)。 */
|
|
89
|
-
export declare const HELP_GROUP_NOTES: Readonly<Record<string, string>>;
|
|
90
97
|
/** 计数(全部由数据算出;改资产即跟变,内容另由测试里的摘要锁钉住)。 */
|
|
91
98
|
export declare const HELP_TOTALS: Readonly<{
|
|
92
99
|
groups: number;
|
|
93
100
|
subgroups: number;
|
|
94
101
|
scenes: number;
|
|
95
102
|
pending: number;
|
|
103
|
+
fields: number;
|
|
96
104
|
}>;
|
|
97
105
|
//# sourceMappingURL=help-assets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-assets.d.ts","sourceRoot":"","sources":["../../../src/help/scenes/help-assets.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"help-assets.d.ts","sourceRoot":"","sources":["../../../src/help/scenes/help-assets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;wDACoD;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8CAA8C;IAC9C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,qCAAqC;IACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,wBAAwB;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc;IACd,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;2EAC2E;AAC3E,MAAM,MAAM,eAAe,GAAG,EAAE,GAAG,OAAO,CAAC;AAE3C,+BAA+B;AAC/B,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,qCAAqC;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;CACrD;AAED,6CAA6C;AAC7C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;CAC5C;AAED,+BAA+B;AAC/B,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAClD;AAED,yDAAyD;AACzD,eAAO,MAAM,WAAW,EAAE,SAAS,cAAc,EA0/DhD,CAAC;AAEF,yCAAyC;AACzC,eAAO,MAAM,WAAW,EAAE,SAAS,cAAc,EAEhD,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,WAAW;;;;;;EAMtB,CAAC"}
|