@lingjingai/scriptctl 0.59.0 → 0.60.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.
@@ -0,0 +1,13 @@
1
+ # 0.60.0
2
+
3
+ ## Added
4
+ - None.
5
+
6
+ ## Changed
7
+ - `scriptctl ingest` video extraction now records actors as structured identity profiles plus multiple discriminative recognition anchors, while visual states describe reproducible styling from head to toe, including visible garment layers, construction, materials, colors, footwear, grooming, accessories, and persistent damage. Later episodes patch identity fields and enrich same-name state descriptions from clearer views. Video pipeline version 19 requires a fresh `--workspace-path` for older workspaces.
8
+
9
+ ## Fixed
10
+ - Video finalization now carries registry appearance and role metadata into final assets, and deterministic state governance preserves descriptions when selecting or retaining the default state.
11
+
12
+ ## Breaking
13
+ - None.
@@ -113,7 +113,12 @@ export function governDeterministic(input) {
113
113
  let out;
114
114
  if (winner === null) {
115
115
  // No explicit states used: keep a single synthetic default.
116
- out = [{ state_id: "default", state_name: states.find((s) => s.state_id === "default")?.state_name ?? "default", description: "" }];
116
+ const defaultState = states.find((state) => state.state_id === "default");
117
+ out = [{
118
+ state_id: "default",
119
+ state_name: defaultState?.state_name ?? "default",
120
+ description: defaultState?.description ?? "",
121
+ }];
117
122
  }
118
123
  else {
119
124
  out = [];
@@ -1 +1 @@
1
- {"version":3,"file":"govern.js","sourceRoot":"","sources":["../../../src/domain/ingest/govern.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"govern.js","sourceRoot":"","sources":["../../../src/domain/ingest/govern.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,22 @@
1
- import type { SerialOutput } from "./video-serial-md.js";
1
+ import type { SerialIdentityProfile, SerialOutput } from "./video-serial-md.js";
2
2
  import type { VideoEpisodeDoc } from "./video-records.js";
3
3
  export type EntityKind = "actor" | "location" | "prop";
4
+ export interface RegistryState {
5
+ name: string;
6
+ description: string;
7
+ }
4
8
  export interface RegistryEntity {
5
9
  identitySeed: string;
6
10
  name: string;
7
11
  kind: EntityKind;
8
12
  status: "canonical" | "provisional";
9
13
  importance: "featured" | "background";
10
- anchor: string;
14
+ recognitionAnchors: string[];
15
+ identityProfile?: SerialIdentityProfile;
11
16
  appearance?: string;
12
17
  role: string;
13
18
  aliases: string[];
14
- states: string[];
19
+ states: RegistryState[];
15
20
  firstEpisode: number;
16
21
  lastEpisode: number;
17
22
  }
@@ -41,13 +46,19 @@ type LooseScript = {
41
46
  locations?: Asset[];
42
47
  props?: Asset[];
43
48
  };
49
+ type AssetState = {
50
+ state_name: string;
51
+ description: string;
52
+ };
44
53
  type Asset = {
45
54
  actor_name?: string;
46
55
  location_name?: string;
47
56
  prop_name?: string;
48
57
  aliases?: string[];
49
58
  importance?: string;
59
+ description?: string;
60
+ states?: AssetState[];
50
61
  };
51
- export declare function stampImportance<T extends LooseScript>(script: T, registry: RegistryEntity[]): T;
62
+ export declare function stampRegistryMetadata<T extends LooseScript>(script: T, registry: RegistryEntity[]): T;
52
63
  export declare function deltaToDoc(out: SerialOutput, episode: number): VideoEpisodeDoc;
53
64
  export {};
@@ -8,6 +8,19 @@
8
8
  // upgrade the current canonical name; previous names accumulate as aliases for
9
9
  // the deterministic finalize sweep (buildAliasMap → renameDocs).
10
10
  import { isCrowdName } from "./serial-context.js";
11
+ const EMPTY_IDENTITY_PROFILE = () => ({
12
+ apparent_gender: "",
13
+ apparent_age: "",
14
+ face_shape: "",
15
+ brows_eyes: "",
16
+ nose: "",
17
+ mouth: "",
18
+ skin_features: "",
19
+ hair: "",
20
+ build: "",
21
+ persistent_marks: [],
22
+ voice: "",
23
+ });
11
24
  export function emptyContext() {
12
25
  return { lastEpisode: 0, registry: [], digests: [], openThreads: [] };
13
26
  }
@@ -26,8 +39,47 @@ function pushUniq(arr, v) {
26
39
  if (s && !arr.includes(s))
27
40
  arr.push(s);
28
41
  }
29
- // Merge fresh evidence into an existing registry entity: unions aliases/states,
30
- // bumps lastEpisode. `overwrite` controls scalar fields (anchor/appearance/role):
42
+ const PROFILE_TEXT_KEYS = [
43
+ "apparent_gender",
44
+ "apparent_age",
45
+ "face_shape",
46
+ "brows_eyes",
47
+ "nose",
48
+ "mouth",
49
+ "skin_features",
50
+ "hair",
51
+ "build",
52
+ "voice",
53
+ ];
54
+ function mergeIdentityProfile(current, patch, overwrite) {
55
+ if (!patch)
56
+ return current;
57
+ const profile = current ? { ...current, persistent_marks: [...current.persistent_marks] } : EMPTY_IDENTITY_PROFILE();
58
+ for (const key of PROFILE_TEXT_KEYS) {
59
+ const value = patch[key]?.trim() ?? "";
60
+ if (value && (overwrite || !profile[key]))
61
+ profile[key] = value;
62
+ }
63
+ for (const mark of patch.persistent_marks ?? [])
64
+ pushUniq(profile.persistent_marks, mark);
65
+ return profile;
66
+ }
67
+ function upsertState(states, incoming, overwrite) {
68
+ const name = incoming.name.trim();
69
+ if (!name)
70
+ return;
71
+ const description = incoming.description.trim();
72
+ const existing = states.find((state) => norm(state.name) === norm(name));
73
+ if (!existing) {
74
+ states.push({ name, description });
75
+ return;
76
+ }
77
+ if (description && (overwrite || !existing.description))
78
+ existing.description = description;
79
+ }
80
+ // Merge fresh evidence into an existing registry entity: unions recognition
81
+ // anchors, aliases, and states while patching identity-profile fields independently.
82
+ // `overwrite` controls scalar identity-profile fields plus appearance/role:
31
83
  // - false (a re-registration of a known name via 新增): fill empties only, never
32
84
  // clobber what we already know.
33
85
  // - true (an explicit 修正 correction): the model deliberately looked again and
@@ -39,15 +91,17 @@ function enrichEntity(e, d, episode, overwrite = false) {
39
91
  return has;
40
92
  return overwrite || !has ? v : has;
41
93
  };
42
- e.anchor = set(e.anchor, d.anchor) ?? e.anchor;
94
+ for (const anchor of d.add_recognition_anchors ?? [])
95
+ pushUniq(e.recognitionAnchors, anchor);
96
+ e.identityProfile = mergeIdentityProfile(e.identityProfile, d.identity_profile_patch, overwrite);
43
97
  const appearance = set(e.appearance, d.appearance);
44
98
  if (appearance)
45
99
  e.appearance = appearance;
46
100
  e.role = set(e.role, d.role) ?? e.role;
47
101
  for (const a of d.add_aliases ?? [])
48
102
  pushUniq(e.aliases, a);
49
- for (const s of d.add_states ?? [])
50
- pushUniq(e.states, s);
103
+ for (const state of d.add_states ?? [])
104
+ upsertState(e.states, state, overwrite);
51
105
  e.lastEpisode = episode;
52
106
  }
53
107
  // Fold one episode's serial output into the context. Mutates and returns ctx
@@ -62,12 +116,19 @@ export function applyDelta(ctx, out, episode) {
62
116
  continue;
63
117
  const existing = find(name);
64
118
  if (existing) {
65
- enrichEntity(existing, { anchor: ne.anchor, appearance: ne.appearance, role: ne.role, add_aliases: ne.aliases, add_states: ne.states }, episode);
119
+ enrichEntity(existing, {
120
+ add_recognition_anchors: ne.recognition_anchors,
121
+ identity_profile_patch: ne.identity_profile,
122
+ appearance: ne.appearance,
123
+ role: ne.role,
124
+ add_aliases: ne.aliases,
125
+ add_states: ne.states,
126
+ }, episode);
66
127
  continue;
67
128
  }
68
129
  const states = [];
69
- for (const s of ne.states ?? [])
70
- pushUniq(states, s);
130
+ for (const state of ne.states ?? [])
131
+ upsertState(states, state, false);
71
132
  const aliases = [];
72
133
  for (const a of ne.aliases ?? [])
73
134
  pushUniq(aliases, a);
@@ -77,7 +138,8 @@ export function applyDelta(ctx, out, episode) {
77
138
  kind: ne.kind,
78
139
  status: ne.status,
79
140
  importance: ne.importance,
80
- anchor: (ne.anchor ?? "").trim(),
141
+ recognitionAnchors: [...new Set((ne.recognition_anchors ?? []).map((anchor) => anchor.trim()).filter(Boolean))],
142
+ ...(ne.identity_profile ? { identityProfile: mergeIdentityProfile(undefined, ne.identity_profile, true) } : {}),
81
143
  ...(ne.appearance ? { appearance: ne.appearance.trim() } : {}),
82
144
  role: (ne.role ?? "").trim(),
83
145
  aliases,
@@ -105,7 +167,7 @@ export function applyDelta(ctx, out, episode) {
105
167
  // while lists and appearance history are combined without loss.
106
168
  const stable = source.firstEpisode < target.firstEpisode ? source : target;
107
169
  const other = stable === source ? target : source;
108
- const stableStates = [...stable.states];
170
+ const stableStates = stable.states.map((state) => ({ ...state }));
109
171
  const aliases = new Set([
110
172
  ...source.aliases,
111
173
  ...target.aliases,
@@ -118,13 +180,17 @@ export function applyDelta(ctx, out, episode) {
118
180
  stable.name = canonicalName;
119
181
  stable.status = "canonical";
120
182
  stable.importance = source.importance === "featured" || target.importance === "featured" ? "featured" : "background";
121
- stable.anchor = target.anchor || source.anchor;
183
+ stable.recognitionAnchors = [];
184
+ for (const anchor of [...source.recognitionAnchors, ...target.recognitionAnchors])
185
+ pushUniq(stable.recognitionAnchors, anchor);
186
+ const sourceProfile = mergeIdentityProfile(undefined, source.identityProfile, true);
187
+ stable.identityProfile = mergeIdentityProfile(sourceProfile, target.identityProfile, true);
122
188
  if (target.appearance || source.appearance)
123
189
  stable.appearance = target.appearance || source.appearance;
124
190
  stable.role = target.role || source.role;
125
191
  stable.states = [];
126
192
  for (const state of [...stableStates, ...other.states])
127
- pushUniq(stable.states, state);
193
+ upsertState(stable.states, state, false);
128
194
  stable.aliases = [...aliases].filter((alias) => norm(alias) !== norm(canonicalName));
129
195
  stable.firstEpisode = Math.min(source.firstEpisode, target.firstEpisode);
130
196
  stable.lastEpisode = Math.max(source.lastEpisode, target.lastEpisode, episode);
@@ -165,27 +231,54 @@ function renderActor(e, hard) {
165
231
  L.push(`### ${e.name} ${tag}`);
166
232
  if (e.role)
167
233
  L.push(`- 作用: ${clip(e.role, hard ? 40 : 200)}`);
168
- if (e.anchor)
169
- L.push(`- 锚点: ${e.anchor}`);
170
- if (e.appearance)
171
- L.push(`- 外观: ${clip(e.appearance, hard ? 40 : 90)}`);
234
+ if (e.recognitionAnchors.length)
235
+ L.push(`- 识别锚点: ${e.recognitionAnchors.join(";")}`);
236
+ const profile = e.identityProfile;
237
+ if (profile) {
238
+ const ageGender = [profile.apparent_gender, profile.apparent_age].filter(Boolean).join(",");
239
+ if (ageGender)
240
+ L.push(`- 年龄性别: ${ageGender}`);
241
+ if (profile.face_shape)
242
+ L.push(`- 脸型下颌: ${profile.face_shape}`);
243
+ if (profile.brows_eyes)
244
+ L.push(`- 眉眼: ${profile.brows_eyes}`);
245
+ if (profile.nose)
246
+ L.push(`- 鼻部: ${profile.nose}`);
247
+ if (profile.mouth)
248
+ L.push(`- 唇形嘴角: ${profile.mouth}`);
249
+ if (profile.skin_features)
250
+ L.push(`- 肤色面部: ${profile.skin_features}`);
251
+ if (profile.hair)
252
+ L.push(`- 发型: ${profile.hair}`);
253
+ if (profile.build)
254
+ L.push(`- 体态: ${profile.build}`);
255
+ if (profile.persistent_marks.length)
256
+ L.push(`- 固定标记: ${profile.persistent_marks.join(";")}`);
257
+ if (profile.voice)
258
+ L.push(`- 声线: ${profile.voice}`);
259
+ }
172
260
  if (e.aliases.length)
173
261
  L.push(`- 曾用称呼: ${e.aliases.join("、")}`);
174
- if (e.states.length)
175
- L.push(`- 已知造型: ${e.states.join(" / ")}`);
262
+ if (e.states.length) {
263
+ L.push(`- 已知造型: ${e.states.map((state) => {
264
+ const description = clip(state.description, hard ? 30 : 90);
265
+ return description ? `${state.name}(${description})` : state.name;
266
+ }).join(" / ")}`);
267
+ }
176
268
  L.push(`- 出现: ep ${e.firstEpisode}–${e.lastEpisode}`);
177
269
  if (e.status === "provisional")
178
270
  L.push(`- 身份未确认:本集若出现书面姓名或台词本名,用 canonicalize 从「${e.name}」升级规范名`);
179
271
  return L;
180
272
  }
181
273
  function renderAsset(e, hard) {
182
- const desc = clip(e.appearance || e.anchor || e.role || "", hard ? 30 : 60);
183
- return `- ${e.name} ·${e.importance}${desc ? `:${desc}` : ""}`;
274
+ const desc = clip(e.appearance || e.role || "", hard ? 30 : 60);
275
+ const states = e.states.map((state) => state.description ? `${state.name}(${clip(state.description, hard ? 20 : 60)})` : state.name).join(" / ");
276
+ return `- ${e.name} ·${e.importance}${desc ? `:${desc}` : ""}${states ? `;状态:${states}` : ""}`;
184
277
  }
185
278
  function render(ctx, recentN, hard) {
186
279
  const L = [];
187
280
  L.push(`# 已知设定(解析第 ${ctx.lastEpisode + 1} 集时对照本表)`, "");
188
- L.push("认得出的人/物沿用其**规范名**,别自己新起名;锚点用于在画面里重新指认某个人。", "");
281
+ L.push("认得出的人/物沿用其**规范名**,别自己新起名;人物优先比对识别锚点与结构化身份画像,服装只作弱辅助。", "");
189
282
  const actors = ctx.registry.filter((e) => e.kind === "actor");
190
283
  const locations = ctx.registry.filter((e) => e.kind === "location");
191
284
  const props = ctx.registry.filter((e) => e.kind === "prop");
@@ -243,13 +336,46 @@ export function buildAliasMap(registry) {
243
336
  }
244
337
  return aliases;
245
338
  }
246
- // The video path bypasses runGovern (which used to inject importance + aliases),
247
- // so stamp both deterministically from the registry before governDeterministic.
339
+ function actorAssetDescription(entity) {
340
+ const profile = entity.identityProfile;
341
+ const parts = [];
342
+ if (profile) {
343
+ const ageGender = [profile.apparent_gender, profile.apparent_age].filter(Boolean).join(",");
344
+ if (ageGender)
345
+ parts.push(`外观年龄与性别:${ageGender}`);
346
+ if (profile.face_shape)
347
+ parts.push(`脸型下颌:${profile.face_shape}`);
348
+ if (profile.brows_eyes)
349
+ parts.push(`眉眼:${profile.brows_eyes}`);
350
+ if (profile.nose)
351
+ parts.push(`鼻部:${profile.nose}`);
352
+ if (profile.mouth)
353
+ parts.push(`唇形口周:${profile.mouth}`);
354
+ if (profile.skin_features)
355
+ parts.push(`肤色面部:${profile.skin_features}`);
356
+ if (profile.hair)
357
+ parts.push(`头发:${profile.hair}`);
358
+ if (profile.build)
359
+ parts.push(`骨架体型:${profile.build}`);
360
+ if (profile.persistent_marks.length)
361
+ parts.push(`固定标记:${profile.persistent_marks.join("、")}`);
362
+ if (profile.voice)
363
+ parts.push(`声线:${profile.voice}`);
364
+ }
365
+ if (entity.recognitionAnchors.length)
366
+ parts.push(`识别锚点:${entity.recognitionAnchors.join(";")}`);
367
+ if (entity.role)
368
+ parts.push(`角色语境:${entity.role}`);
369
+ return parts.map((part) => part.replace(/[。;]+$/, "")).join(";");
370
+ }
371
+ // The video path bypasses runGovern (which used to inject asset metadata), so
372
+ // stamp descriptions, state descriptions, importance, and aliases deterministically
373
+ // from the registry before governDeterministic.
248
374
  // Importance: unmatched assets default to "featured" (never silently hidden),
249
375
  // matching apply-plan. Historical names from identitySeed + aliases are folded
250
376
  // onto the canonical asset (renameDocs collapsed them to one name, so
251
377
  // assignProvisionalIds saw no aliases).
252
- export function stampImportance(script, registry) {
378
+ export function stampRegistryMetadata(script, registry) {
253
379
  const imp = new Map();
254
380
  const surfaceFor = new Map(); // canonical norm name → surface aliases
255
381
  const addSurface = (canon, alias) => {
@@ -273,18 +399,35 @@ export function stampImportance(script, registry) {
273
399
  for (const a of list ?? []) {
274
400
  const canonName = String(a[nameKey] ?? "");
275
401
  const names = [canonName, ...(a.aliases ?? [])];
276
- let found;
402
+ let entity;
277
403
  for (const nm of names) {
278
- const v = imp.get(norm(nm));
279
- if (v) {
280
- found = v;
404
+ entity = registry.find((candidate) => norm(candidate.name) === norm(nm)
405
+ || norm(candidate.identitySeed) === norm(nm)
406
+ || candidate.aliases.some((alias) => norm(alias) === norm(nm)));
407
+ if (entity)
281
408
  break;
282
- }
283
409
  }
284
- a.importance = found ?? "featured";
410
+ a.importance = entity?.importance ?? imp.get(norm(canonName)) ?? "featured";
285
411
  const surf = surfaceFor.get(norm(canonName));
286
412
  if (surf?.size)
287
413
  a.aliases = [...new Set([...(a.aliases ?? []), ...surf])];
414
+ if (!entity)
415
+ continue;
416
+ const description = entity.kind === "actor"
417
+ ? actorAssetDescription(entity)
418
+ : [entity.appearance, entity.role]
419
+ .map((part) => (part?.trim() ?? "").replace(/[。;]+$/, ""))
420
+ .filter(Boolean)
421
+ .join(";");
422
+ if (description)
423
+ a.description = `${description}。`;
424
+ for (const state of a.states ?? []) {
425
+ const registryState = entity.states.find((candidate) => norm(candidate.name) === norm(state.state_name));
426
+ if (registryState?.description)
427
+ state.description = registryState.description;
428
+ else if (state.state_name === "default" && entity.kind !== "actor" && entity.appearance)
429
+ state.description = entity.appearance;
430
+ }
288
431
  }
289
432
  };
290
433
  stamp(script.actors, "actor_name");
@@ -1 +1 @@
1
- {"version":3,"file":"video-context.js","sourceRoot":"","sources":["../../../src/domain/ingest/video-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"video-context.js","sourceRoot":"","sources":["../../../src/domain/ingest/video-context.ts"],"names":[],"mappings":"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"}
@@ -19,15 +19,33 @@ export interface SerialScene {
19
19
  content: string;
20
20
  }>;
21
21
  }
22
+ export interface SerialStateDescription {
23
+ name: string;
24
+ description: string;
25
+ }
26
+ export interface SerialIdentityProfile {
27
+ apparent_gender: string;
28
+ apparent_age: string;
29
+ face_shape: string;
30
+ brows_eyes: string;
31
+ nose: string;
32
+ mouth: string;
33
+ skin_features: string;
34
+ hair: string;
35
+ build: string;
36
+ persistent_marks: string[];
37
+ voice: string;
38
+ }
22
39
  export interface SerialEntity {
23
40
  name: string;
24
41
  kind: "actor" | "location" | "prop";
25
42
  status: "canonical" | "provisional";
26
43
  importance: "featured" | "background";
27
- anchor?: string;
44
+ recognition_anchors?: string[];
45
+ identity_profile?: SerialIdentityProfile;
28
46
  appearance?: string;
29
47
  role?: string;
30
- states?: string[];
48
+ states?: SerialStateDescription[];
31
49
  aliases?: string[];
32
50
  }
33
51
  export interface SerialCanonicalization {
@@ -42,11 +60,12 @@ export interface SerialOutput {
42
60
  new_entities: SerialEntity[];
43
61
  enrich: Array<{
44
62
  name: string;
45
- anchor?: string;
63
+ add_recognition_anchors?: string[];
64
+ identity_profile_patch?: Partial<SerialIdentityProfile>;
46
65
  appearance?: string;
47
66
  role?: string;
48
67
  add_aliases?: string[];
49
- add_states?: string[];
68
+ add_states?: SerialStateDescription[];
50
69
  }>;
51
70
  canonicalize: SerialCanonicalization[];
52
71
  };
@@ -204,11 +204,11 @@ export function parseSerialMd(md, _episode) {
204
204
  if (f[1] === "外观")
205
205
  cur.appearance = val;
206
206
  else if (f[1] === "锚点")
207
- cur.anchor = val;
207
+ cur.recognition_anchors = val ? [val] : [];
208
208
  else if (f[1] === "作用")
209
209
  cur.role = val;
210
210
  else if (f[1] === "造型")
211
- cur.states = splitList(val);
211
+ cur.states = splitList(val).map((name) => ({ name, description: "" }));
212
212
  else if (f[1] === "别名")
213
213
  cur.aliases = splitList(val);
214
214
  }
@@ -253,11 +253,11 @@ export function parseSerialMd(md, _episode) {
253
253
  if (fm[1] === "外观")
254
254
  en.appearance = val;
255
255
  else if (fm[1] === "锚点")
256
- en.anchor = val;
256
+ en.add_recognition_anchors = [val];
257
257
  else if (fm[1] === "作用")
258
258
  en.role = val;
259
259
  else if (fm[1] === "造型")
260
- en.add_states = splitList(val);
260
+ en.add_states = splitList(val).map((stateName) => ({ name: stateName, description: "" }));
261
261
  else if (fm[1] === "别名")
262
262
  en.add_aliases = splitList(val);
263
263
  }