reflectionIdentityFields
KIT · constant · Runtime value
Import
ts
import { reflectionIdentityFields } from '@jangts/agent-core/kits/reflection';js
import { reflectionIdentityFields } from '@jangts/agent-core/kits/reflection';Other public entry points:@jangts/agent-core/types, @jangts/agent-core/structs, @jangts/agent-core/kits, @jangts/agent-core/kits/reflection.
Definition
ts
const reflectionIdentityFields: readonly ["spanId", "parentSpanId", "invocationId", "parentInvocationId", "agentId", "branchId", "agentVersionId", "parentBranchId", "parentAgentVersionId", "forkPointId", "workflowInvocationId", "workflowNodeId", "nodeRole", "definitionId"]Index structure
| Field | Type | Required | Description |
|---|---|---|---|
[key: number] | "spanId" | "parentSpanId" | "parentInvocationId" | "invocationId" | "nodeRole" | "agentId" | "branchId" | "agentVersionId" | "parentBranchId" | "parentAgentVersionId" | "forkPointId" | "workflowInvocationId" | "workflowNodeId" | "definitionId" | Required | Read-only. Index entry. |
Examples
- Log reflection: authorization metadata and evidence reports: The App supplies authorized evidence sources; the reflection task produces a sourced report through ordinary model and tool contracts.
Bind the reflection model, evidence source, and authorization
Beginner · Node.js
ts
import { defineReflection } from '@jangts/agent-core/kits/reflection';
import type { ReflectionSource } from '@jangts/agent-core/kits/reflection';
import type { ModelRunner, OperationContext } from '@jangts/agent-core';
export function review<App>(model: ModelRunner, source: ReflectionSource<App>,
authorize: (question: string, context: OperationContext<App>) => Promise<void>) {
return defineReflection({ model, source, authorize,
maxCalls: 4, reserveCalls: 1, maxPages: 4, maxEvents: 64, maxEvidenceChars: 12000 });
}js
import { defineReflection } from '@jangts/agent-core/kits/reflection';
export function review(model, source, authorize) {
return defineReflection({ model, source, authorize,
maxCalls: 4, reserveCalls: 1, maxPages: 4, maxEvents: 64, maxEvidenceChars: 12000 });
}Build the same kind of evidence source from a log reader
Configuration · Node.js
The reader's directory scope, shutdown, and retention are managed by the App. The adapted source can be passed into the same defineReflection.
ts
import { defineReflectionLogSource } from '@jangts/agent-core/kits/reflection';
import type { ReflectionLogReader } from '@jangts/agent-core/kits/reflection';
import type { OperationContext } from '@jangts/agent-core';
export function logSource<App>(reader: ReflectionLogReader, traceId: string,
authorize: (context: OperationContext<App>) => Promise<void>) {
return defineReflectionLogSource({ reader, traceId, id: 'authorized-history', authorize });
}js
import { defineReflectionLogSource } from '@jangts/agent-core/kits/reflection';
export function logSource(reader, traceId, authorize) {
return defineReflectionLogSource({ reader, traceId, id: 'authorized-history', authorize });
}