参伍术语表
本页用于查询参伍术语:中英文名称、对应的代码标识及含义。带链接的术语另有专门页面详细说明,其余术语以本页和 API 文档中的定义为准。
编写参伍文档时,请在中英文中分别使用表中的规范写法,代码标识保持原样,并避免使用最后一张表中标为已弃用的写法。首次出现时可以同时给出英文或代码名,例如模拟插件(simulation plugin)或决策票据(DecisionTicket)。仓库中的 docs/terminology.md 是术语的权威来源,本页与之同步。
产品与运行时边界
Section titled “产品与运行时边界”| 中文规范写法 | English | 代码或 API | 含义与使用位置 |
|---|---|---|---|
| 参伍 | Canwu | Canwu |
产品名,也是对外 API 的主要入口;不要把品牌名当作普通名词翻译。 |
| 无界面历史模拟引擎 | headless historical simulation engine | — | 参伍的产品类别;负责模拟历史世界,不负责画面、音频和正式产品界面。 |
| 模拟内核 | simulation core | canwu-sim |
持有可变权威状态、调度、结算、持久化与重放的私有运行时。 |
| 上层应用 | host application | — | 嵌入参伍的游戏、研究工具、服务、客户端或智能体系统;中文不使用“主机程序”。 |
| 对外 API | public API | canwu-api |
应用代码应从这里接入;版本兼容性也以这里为准。 |
| 模拟运行 | simulation run | run_id |
具有独立身份、输入、状态和证据的一次连续执行。 |
| 场景 | scenario | Scenario |
创建模拟时使用的初始世界和配置。 |
| 权威状态 | authoritative state | SimulationSnapshot |
由参伍持有并验证,作为承诺、持久化和重放基础的状态。 |
| 真值 | ground truth | — | 权威状态中的事实,无论某个角色是否知道。 |
| 角色相对视图 | actor-relative view | CanwuViewer, ViewerContext |
根据一个角色的知识和权限(authority)生成的读取结果,不会暴露全知状态。 |
| 只读快照 | read-only snapshot | WorldSnapshot |
供受信任读取使用的脱离运行时状态值,不是实时可变引用。 |
| 模拟粒度 | simulation granularity | SimulationGranularity |
内核的领域无关粒度:aggregate、group、actor。上层应用可以把它们映射为自己的类别,例如 Population、Special Group、Character。 |
| 聚合层 | aggregate | SimulationGranularity::Aggregate |
粗粒度的人口、经济或区域状态;上层应用可以将其映射为 Population。 |
| 群体层 | group | SimulationGranularity::Group |
有边界的社会、制度、军事或组织群体;上层应用可以将其映射为 Special Group。 |
| 角色层 | actor | SimulationGranularity::Actor |
具有知识和权限的个人或其他主体;上层应用可以将其映射为 Character。 |
时间、输入与结算
Section titled “时间、输入与结算”| 中文规范写法 | English | 代码或 API | 含义与使用位置 |
|---|---|---|---|
| 现实时间 | wall time | — | 上层应用实际经历的时间,不直接写入模拟状态。 |
| 模拟时间 | simulation time | SimTime, SimDuration |
由参伍结算、可确定表示的时间。 |
| 表现时间 | presentation time | — | 客户端动画与插值时间,可以是小数,但不属于权威状态。 |
| 命令 | command | Command, CommandEnvelope |
经过结构、前置条件和权限校验后改变权威状态的类型化请求。 |
| 领域命令 | domain command | Command::Plugin |
由领域整合定义、经公开的规范化输入验证的类型化意图。 |
| 规范化输入 | canonical ingress | IngressRecord |
命令、通信、信息和调度系统共用的持久化确定性输入路径。首次出现时可附英文。 |
| 准入 | admission | — | 决定哪些待处理输入进入某个边界的过程和切点;它不是 ingress 的同义词。 |
| 插件输入撤回 | plugin ingress cancellation | cancel_plugin_ingress, IngressPayload::PluginCancellation |
在到期之前终止撤回一项仍在排队的插件输入,并作为独立日志记录保存;被撤回的输入永远不会被准入,也不会发生回滚。 |
| 撤回权限 | cancellation authority | IngressCancellationAuthority |
撤回排队插件输入的主体:上层应用撤回自己提交的公开数据包,所属插件以注册许可撤回其内部数据包类型,或由安排该输入的插件的边界系统撤回。只有签发者可以撤回。 |
| 待处理输入 | pending ingress | pending_ingress、CanwuRun::pending_ingress |
已排队、尚未被准入也未被撤回的输入记录,按边界将要准入它们的顺序排列,包括封存或接续检查点恢复所固定的记录。受信任的上层应用用 pending_ingress 列出它们;这份列表涵盖所有来源,SimulationView 和 CanwuViewer 上都没有,所以上层应用要先挑出自己的条目,才能展示给角色。 |
| 调度工作 | scheduled work | — | 具有确定模拟到期时间和插入顺序的工作。 |
| 结算边界 | boundary | BoundaryRequest, BoundaryRecord |
一次经过验证、要么全部提交要么整体回滚的结算:准入工作,按固定阶段运行系统,记录证据。 |
| 结算阶段 | settlement phase | BoundaryPhase |
固定边界执行顺序中的一个位置,不代表一套独立结算算法。 |
| 原子提交 | atomic commit | — | 一次性应用边界中所有通过验证的变化,避免暴露部分状态。 |
| 回滚 | rollback | — | 边界失败时同时恢复状态、证据、计数器和随机位置。 |
| 转移清单 | transition manifest | TransitionManifest, BoundaryDirective::RegisterTransitionManifest |
协调插件为一次多所有者转移作出的声明,列出参与插件、预期记录版本和唯一的就绪边界。参与者在该边界第 10 阶段用 StageTransitionWrite 暂存写入;清单之外的第 10 阶段指令不受影响。 |
| 转移审计 | transition audit | TransitionAuditRecord |
内核在第 11 阶段对本边界就绪的每份清单所做的检查。清单仅被部分参与者暂存,或预期版本不符,都会使整个边界失败;没有任何参与者暂存的清单则过期。提交或过期的结果作为只读边界证据,供第 12 阶段系统读取。 |
| 边界账 | boundary ledger | SimulationView::boundaries_between、BoundaryWindow、BoundarySummary、BoundaryIngressOrigin、boundary_schedule_horizon |
一段模拟时间内的边界:其中已经结算的、正在结算的和仍在排队的边界,每个都带有时间、节奏、历法标记,以及按类别、种类和来源计数的输入。只有分阶段的边界系统可以在声明 canwu.core.boundary_schedule 读取后读它,在把工作带到另一个边界之前先数清这段时间的边界;它用 boundary_schedule_horizon 声明要往回读多远。已结算的边界在实时、封存、恢复和重放的运行中完全相同;排队列表只是下限。 |
| 历法标记 | calendar mark | CalendarMark、schedule_calendar_marks、SimulationView::calendar_marks |
上层应用的某个历法在日历边界上的标记:该边界是这个历法某个节奏的周期起点。带历法键的系统只在自己历法、自己节奏的标记上唤醒;没有历法键的系统在该节奏的每个边界上唤醒,不论有没有标记。引擎仍不内置历法。 |
| 历法键 | calendar key | BoundarySystemContract::calendar、MAX_CALENDAR_KEY_BYTES |
上层应用给自己某个历法起的名字(规范化标签,最长 64 字节),写在标记上和边界系统的注册上;注册上的历法键属于插件描述。 |
| 边界耗时明细 | boundary profile | BoundaryProfile、set_boundary_profiling、take_boundary_profiles、replay_from_journal_with_boundary_profiles |
上层应用按需开启的诊断数据:一个已结算边界的现实耗时,它运行的每个插件处理器的现实耗时(按种类、阶段、插件和名称列出),以及每个引擎阶段的耗时。它不属于权威状态、证据、快照或重放,插件也读不到它。精确重放可以逐个边界计时。 |
| 引擎阶段 | engine phase | BoundaryEnginePhase、BoundaryEngineTiming、BoundaryProfile::engine |
边界耗时明细中模拟内核自身工作的一个类别:准入、系统调度、暂存、提交、知识、日志和哈希。引擎阶段与插件处理器一起分完一个边界的现实耗时。它是计时类别,不是结算阶段。 |
| 请求结果保留期 | request outcome retention | RunConfiguration::request_outcome_retention、with_request_outcome_retention、DEFAULT_REQUEST_OUTCOME_RETENTION、MAX_REQUEST_OUTCOME_RETENTION |
带请求标识的命令请求结算之后,其精确结果和排队回执还保留多久模拟时间,用来回答完全相同的重试:默认 30 天,可取 0 到 366 天,在创建模拟运行时定下。规则只看模拟时间,所以现实时间的暂停不会让任何结果退役,模拟速度越快、按现实时间算退役得越早,而未封存、封存过、恢复后和重放的运行回答一致。 |
| 已退役请求结果 | retired request outcome | ErrorCode::RequestOutcomeRetired、RetiredRequestRange、RequestIndex::retired_commands |
带请求标识的命令请求超过保留期之后的状态:结果不再保留,请求 ID 在整个运行期内仍算已使用(记在规范化的已退役 ID 区间里),之后再用这个 ID 提交任何请求,不论是否完全相同的重试,都以 RequestOutcomeRetired 被拒绝,不留下尝试、修订号或事件。把 IdempotencyConflict 当作“换一个 ID”的上层应用,对它也应如此处理。不是退休目标(文化术语),也不是已清退条目(知识术语)。 |
| 中文规范写法 | English | 代码或 API | 含义与使用位置 |
|---|---|---|---|
| 插件 | plugin | — | 泛称;可能与 Codex 等工具插件混淆时必须加限定词。 |
| 模拟插件 | simulation plugin | SimulationPlugin |
实现公开插件契约并注册到参伍运行时的执行单位;其名称、版本和语义哈希标识加载与精确重放所需的可执行语义。 |
| 模拟领域扩展 | domain extension | — | 建立在公开引擎契约上的可选领域交付包,可包含一个或多个插件、领域类型、schema、命令、查询和辅助 API;没有要求实现的 DomainExtension trait。 |
| 模拟模块 | simulation module | — | 面向人的完整模拟能力名称,例如“社会传播模拟模块”;它可以由一个领域扩展及其插件实现,但本身不是引擎契约。 |
| 文化系统 SDK | culture system SDK | canwu-culture |
已正式发布的可选文化编写、编译与生命周期扩展,建立在 canwu-society 之上;负责校验内容并生成确定性执行计划,不进入模拟内核。 |
| 法律制度化 | legal institutionalization | canwu-law |
位于文化等社会证据下游的实验性扩展:推进法律程序,经控制者决策记录待处理法律意图,并在插件边界内原子写入法律渊源、规则和不可变版本;文化不能直接写入法律状态。 |
| 法律渊源版本 | legal source version | LegalSourceVersion |
不可变的法律渊源记录,可表示制定文书、判决、协议、习惯认可结论、法律承受表或其他由内容配置的法律主张依据。 |
| 法律规则 | legal rule | LegalRule |
一项有界规范规则的稳定身份与可变 head;其不可变变更保存在 LawVersion 记录中。 |
| 法律版本 | law version | LawVersion |
绑定稳定 LegalRule 的仅创建、不可变规范变更记录,保存确切渊源与前序引用、规范关系、适用范围、生效与效力状态以及证据;执行情况另行建模。 |
| 法律记录引用 | legal record reference | LegalRecordRef |
分片法律运行时中法律对象的精确 kind 与身份;法律插件拥有自己的对象/版本语义,并分别持久化 plan、directory、shard 与 archive-head 记录,因此它不是内核 DomainRecordVersionRef。 |
| 案件量配置 | caseload profile | CaseloadProfileDefinition、LegalDefinition::caseload、CompiledLawPlan::caseload |
法律定义中声明计划按汇总方式结算哪些案件的部分:案件类别(最多 64 个)、复审层级(最多 16 个)、每个辖区保留的期数(1 到 120)和每个边界检查的报告数。只有当记录的最宽编码能放进 MAX_CASELOAD_STATE_BYTES(256 MiB)时才能编译;没有案件量配置的计划,编码和哈希都不变。 |
| 汇总案件量 | aggregate caseload | AggregateCaseloadRecord、LegalCaseloadHead、caseload_intake_v1、enqueue_caseload_intake、load_legal_caseload |
只计数、不逐案跟踪的日常司法:上层应用报告一个辖区在一个期间(从最新已结算期间的终点开始)内各案件类别的收案与结案数,以及各复审层级的进入与结束数,由法律准入系统结算成每个保留期间一条记录(一个头记录加固定数量的槽位环),待决存量逐期结转并守恒。重复报告最新期间视为已结算;每份被拒绝的报告什么也不改变,只记一条带稳定原因码的 canwu.law.caseload_rejected.v1 事件。这些记录不声明证据,不加载法律运行时,也不计入法律状态预算。上层应用要单独跟踪的案件仍然是 LegalCase,并计入其类别的收案数。 |
| 结案率 | clearance rate | AggregateCaseloadRecord::clearance_bp |
一个案件量期间的结案数除以收案数,以万分之一计,由引擎按结算后的计数算出;该期间没有收案时为空。 |
| 文化目标代际引用 | cultural target generation reference | CulturalTargetGenerationRef |
法律提案或版本引用的精确目标与 generation,防止退休或重新激活把旧证据静默绑定到新一代。 |
| 文化执行计划 | compiled culture plan | CompiledCulturePlan |
从文化定义编译出的外部不可变、绑定内容哈希的运行时计划,包含紧凑 ID、反向索引、预算和生命周期策略。 |
| 休眠目标 | dormant target | Dormant |
没有参与人口或已准入工作的文化目标;它离开热结算索引,但保留显式重新激活描述。 |
| 退休目标 | retired target | Retired |
从动态热状态移除的文化目标;历史身份和证据仍通过墓碑与归档契约保留。 |
| 文化结算插件 | culture boundary plugin | CultureBoundaryPlugin |
在引擎内完成文化结算的插件形式:每月第 7 阶段系统消费已准入的接触信号批次,保存文化状态,并把 society 生命周期变化交给 society 插件;society 插件仍是唯一写入者。一次运行只能在它与由上层应用驱动的 CulturePlugin 流程之间二选一。 |
| 接触信号批次 | exposure signal batch | CultureExposureSignalBatch, culture_exposure_v1 |
信息或通信提供方在解决访问与解释之后产生的有界、带证据的报告,说明哪些 cohort 接触了某一文化目标代际;它在之后的边界准入。 |
| cohort 人口校准 | cohort headcount rebase | CohortHeadcountRebaseV1, cohort_headcount_rebase_v1 |
把 cohort 人口重置为所引用外部存量记录的规范化输入;输入准入时,该记录必须是当前版本。下一次 society 结算会按确定性的整数最大余数法,按比例重算每个分布。 |
| society 结算节奏 | society settlement cadence | SocietyPlugin::with_settlement_cadence, SocietyPlugin::DAILY |
决定 society 在哪些边界结算的 SystemCadence 类别:默认是 Daily,也可以由上层应用指定。转化速率每次结算生效一次,society 写入系统要应用的一切变化都等到带这个节奏的边界。节奏记录在插件描述中,所以恢复和重放必须使用同一节奏的插件。 |
| 转移结算模式 | transfer settlement | TransferSettlement、SocietyPlugin::with_transfer_settlement |
society 结算如何检查到期的 cohort 转移。批量结算(Batch,默认)把每笔到期转移都按结算开始时的状态检查,仍然成立的按准入顺序逐笔应用,每笔都在前面几笔留下的状态上执行;数量已经放不下的转移结算为 insufficient_source。逐笔结算(OneByOne)把每笔转移按同一次结算中更早的转移留下的状态检查,所以涉及同一个 cohort 的到期转移只有一笔完成,其余结算为 stale_source。模式是插件身份的一部分。 |
| 社群输入队列 | society ingress queue | SocietyIngressQueue、SocietyIngressBatch、society_ingress_queue_entries |
等待下一次 society 结算的人口校准、生命周期变化和压力修订所在的队列:一条很小的头记录,加上每个准入了输入的边界各一条批次记录,所以它的证据只随各边界准入的数量增长。队列已满时到达的输入以记录在案的 queue_full 结果被拒绝。 |
| 社群结果留存策略 | society outcome retention | OutcomeRetention、SocietyPlugin::with_outcome_retention |
cohort 交换账保留人口校准和生命周期变化结果的期限:整个运行期(Keep,默认),或只保留最近一次结算的(LatestSettlement:记录这类结果的结算先丢掉更早时间记录的结果)。转移结果(它让重发的转移保持幂等)和压力修订结果在两种策略下都保留。和结算节奏、转移结算模式一样,它是插件身份的一部分。不是模拟运行的请求结果保留期。 |
| cohort 类别 | cohort class | CohortClass、SocietyState::cohort_classes、MAX_COHORT_CLASS_TEXT_BYTES |
分类中带有同一个取值的全部 cohort,按分类的维度和编写时的取值(任意不超过 4,096 字节的文本)命名。群体间关系的两端都是 cohort 类别;cohort 及其分类在运行中从不改变,所以创建模拟运行时检查过的类别在整个运行期内都成立。 |
| 群体间关系 | intergroup relation | IntergroupRelationEdge、IntergroupRelations、intergroup_relation_revision_v1、load_intergroup_relations |
一个 cohort 类别对另一个 cohort 类别的有向、带类型的关系,可以限定在某个地区(领地、政府或领域实体),带有千分制的接纳、紧张和信任值、有界的证据和修订号。关系边存放在自己的记录 canwu.society:intergroup-relations 中,由场景编写,并通过公开数据包按预期修订号创建或修订;数据包在第 7 阶段整体应用,每次拒绝都是一条 society_intergroup_relation_rejected_v1 事件。关系边从不删除,结算既不读也不写它们,上层应用用 load_intergroup_relations 读取,角色通过应用发布的知识得知关系。 |
| 压力修订 | pressure revision | PressureRevisionDecision, revise_society_pressure, society_pressure_revision_v1 |
制度立场(InstitutionalAlignment)背后的机构作出的一项带版本的决定:在该立场影响的 cohort 范围内,修订由它签发的政策压力条目,以及其目标下影响边和组织节点的启用状态与触达范围。决定由 society 结算应用,不会新增或删除条目。 |
| 表决权重 | vote weight | ProcedureStageDefinition::seat_weights |
某席位的选票在程序阶段中所占的整数权重;未列出的席位权重为 1。quorum 与 threshold 都按权重合计;否决是席位权力,从不加权。 |
| 表决单元 | unit block | ProcedureStageDefinition::block_of_seat |
程序阶段中作为一个整体表态的一组席位,其立场取组内席位的加权多数;双方加权票数相等或没有计入选票的单元不表态。 |
| 单元门槛 | block threshold | ProcedureStageDefinition::block_threshold |
带表决单元的阶段除满足加权席位规则外,还须有多少个表决单元取 For 立场才能通过。 |
| 决定票席位 | casting seat | casting-seat:<seat> tie-break |
程序平局规则指定的席位:取 For 与 Against 的单元数相等时,该席位自己的 For 票可以增加一个 For 单元。该席位必须属于每个带表决单元的阶段;status-quo 平局规则则不增加单元。 |
| 征询阶段 | consultation stage | ProcedureStageKind::Consultation |
仅供咨询的程序阶段。其席位收到标注为 advisory 的票据,选票作为参与证据保存,但从不计入结果;阶段在截止时间完成,并开启下一阶段。 |
| 技术模拟扩展 | technology simulation extension | canwu-technology |
处理技术修订、证据、本地能力、实施、按用途采用和传播机会的可选通用扩展,不是全局科技树。 |
| 外部传播来源 | external transmission source | ExternalTransmissionSourceV1 |
模拟之外的实践传播来源,例如地图外的师傅;以初始场景中的内容记录和声明的可靠度代替实时能力记录,并由目的地开启传播机会。 |
| 历史研究插件 | historical research plugin | canwu-history-research |
记录研究者对证据所作有界评估的可选模拟插件,不会改变基础技术真值。 |
| 命令插件 | command plugin | register_command() |
注册带 schema 校验命令及其处理器的模拟插件。 |
| 边界系统 | boundary system | BoundarySystemContract |
在结算阶段运行,并声明读取、写入、资源与随机范围的系统。 |
| 领域 schema | domain schema | DomainRecordType |
插件所拥有领域数据的版本化结构契约;代码相邻的中文正文保留 schema。 |
| 领域记录 | domain record | DomainRecord |
由插件拥有并持久化,而非属于通用世界模型的类型化领域状态。 |
| 插件组件 | plugin component | PluginComponentRecord |
通过声明的键与可见性附加的插件自有组件状态。 |
| 插件语义环境 | plugin semantic environment | PluginDescriptor |
加载或精确重放时必须匹配的插件身份、版本和语义哈希集合。 |
| 参考内容包 | reference content pack | — | 由第一方或下游提供的版本化、带命名空间、可序列化领域定义、场景数据、本地化和来源信息包;它向领域扩展提供内容,不是内核子系统或求解器。 |
| 参考整合包 | reference integration | — | 使用对外 API 将通用领域能力映射到小型世界、生产、信息或社会模型的可替换实现;可以包含运行时插件和上层应用适配代码。 |
| 入门套件 | starter kit | — | 将兼容的参考内容包和参考整合包组合成完整纵向切片的可运行上层应用与组合示例;它是参考代码,不是特权引擎路径。 |
| 财政模拟扩展 | fiscal simulation extension | canwu-fiscal |
通用财政程序领域扩展;负责法规、地区采纳、核算、授权、减免、凭证、审计、核算周期、财政归档与持有人相对知识报告,不负责资源余额与转移。它的状态拆分成多条记录,一个边界只读写它的数据包涉及的记录。 |
| 范围明细 | scope ledger | FiscalScopeLedger、FiscalRecordKind::Ledger、fiscal_ledger_reference |
一个范围绑定的记录:绑定本身、它的采纳、每个常驻核算周期各一本核算周期账册、修订号与最近结果,以及周期水位线。针对某个范围的行动都以它为目标。 |
| 核算周期账册 | accounting cycle book | FiscalCycleBook、FiscalAction::CloseAccountingCycle |
一个范围在一个核算周期内的核算、减免、执行请求、凭证和审计结论,保存在它的范围明细里。打开的账册接受全部对象;关闭的账册只接受审计结论;已归档的账册已离开范围明细。账册中的每个对象都写明创建它的行动。 |
| 财政机构记录 | fiscal office | FiscalOffice、FiscalRecordKind::Office、fiscal_office_key |
一个机构的记录:它的权限绑定和审计绑定、任命政策和审计人提案、修订号与最近结果、能看到它的观察者,以及每个常驻周期的常驻账册数、分区键和已归档合计。它的标识是机构键(office key),即机构引用的摘要。 |
| 辖区记录 | jurisdiction record | FiscalJurisdiction、FiscalRecordKind::Jurisdiction |
一个目录地区的记录:各机制的范围数、各法规的采纳数、转型候选,以及修订号与最近结果。ApplyTransition 以它为目标。 |
| 观察者记录 | observer record | FiscalObserver、FiscalRecordKind::Observer、FiscalAction::RebindObserver、FiscalAction::RemoveObserver |
一个观察者绑定的记录:绑定本身(含它的粒度和报告节律)、报告的行布局、周期槽位和每个已发布分段的摘要,以及修订号。报告行由这条记录上的角色命名,所以改指或移除一个绑定不会移动其他绑定的报告行。 |
| 绑定目录 | binding directory | FiscalRecordKind::Directory |
4,096 条桶记录,把绑定、政策或提案 ID 映射到持有它的财政机构记录,准入只需一次局部读取就能从绑定 ID 找到机构。 |
| 范围索引页 | scope index page | FiscalRecordKind::Index、FISCAL_INDEX_PAGE_SCOPES |
只可创建的记录,按名次顺序列出一个机构或一个地区的范围,每页 1,024 个;随场景写入一次。 |
| 报告队列页 | report-queue page | FiscalRecordKind::ReportQueue、FiscalReportQueueEntry::due_at、FISCAL_REPORT_DRAIN_INGRESS |
保存欠观察者的报告工作的 4,096 条记录之一,每个条目都带到期时间:要发布的周期和分段,或整份报告。按间隔发布的观察者在这里始终有一个条目,到期时间是它的下一个到期时刻。一个边界发不完的留在队列里,边界安排内部的排空数据包,同一时刻的下一个边界继续发布。 |
| 报告节律 | report cadence | FiscalReportCadence、FiscalObserverBinding::cadence |
观察者的报告何时到期:按变化(OnChange,默认),即在改变了它所显示内容的那个边界到期;或者按报告间隔(report interval,Interval { every, offset },可用 FiscalReportCadence::staggered 错开)在对齐的时刻到期,即自 SimTime::EPOCH 起的 offset + k × every,由每个到期时刻当时或之后第一个运行报告系统的边界发布。按间隔发布的报告在两个到期时刻之间不显示任何变化;报告发布过之后,每个到期时刻都会重新发布摘要,所以没有消息绝不等于没有报告。节律由场景决定,改指绑定不改变它。 |
| 唤醒节奏 | wake cadence | FiscalPlugin::with_report_cadence、wake-fiscal-reports-on-cadence-v1 |
财政插件的唤醒系统运行所用的 SystemCadence 类别:这一类别中没有事件的边界上,它读根记录,有报告到期时就安排排空数据包,让事件驱动的报告系统在同一时刻的下一个边界运行。它是记入插件描述的插件选项,不是绑定的报告节律,后者决定一份报告何时到期。 |
| 报告日程记录 | report schedule | FiscalReportSchedule、FiscalRecordKind::ReportSchedule、FiscalRoot::earliest_due |
记录每个报告队列页最早的到期时间,以及含有被搁置条目的页;根记录保存所有页中最早的到期时间。在这个时间之前、又没有搁置条目的边界只读根记录;到了这个时间的边界只解码最早到期时间已到的页。 |
| 机构粒度 | institution granularity | FiscalReportGranularity::Institution、FiscalObserverBinding::granularity |
报告的一种行布局:可见的每个机构和每种机制各一行,事实是该机构在该周期、该机制下的常驻账册按单位和支付形态求和,再按观察者的置信度呈现。默认是范围粒度(scope granularity,Scope),即每个范围一行。机构行的分段引用机构记录的当前版本并记下求和的账册数,比范围分段引用范围明细版本的出处要弱。 |
| 报告份额 | report share | FiscalReportBudget、FiscalPlugin::with_report_budget |
财政报告系统在一个边界内可以使用的引擎发布预算(正文、条目、载荷字节),默认是 KnowledgeLimitsV1::CURRENT 的一半。财政实际发布的,是它的份额与它运行时剩余预算中较小的一方,其余等待排空。份额介于 FiscalReportBudget::MINIMUM(两个正文、两个条目、128 KiB)和引擎上限之间,自定义的份额写在报告系统的名称里,所以在插件描述中。文字中称“报告份额”,代码标识保留 budget。 |
| 搁置轮询 | parked rotation | FISCAL_PARKED_CHECKS_PER_BOUNDARY、FiscalRoot::parked_cursor |
报告系统重新检查持有人已死亡的观察者的方式:每次运行检查根记录游标之后的 16 个被搁置条目,按队列页和绑定 ID 顺序循环,所以恢复存活的持有人最多在 ceil(被搁置数 / 16) 次运行内收到欠它的报告,每次运行的开销固定。 |
| 行动目标 | action target | FiscalActionTarget、FiscalActionEntry::expected_revision、fiscal_target_revision |
一个行动写明修订号的那条记录:范围明细、财政机构记录、辖区记录或观察者记录。只有目标在签发者查看之后发生了变化,行动才算过期。 |
| 行动批次 | fiscal action batch | FiscalActionBatch、FiscalActionEntry |
apply_fiscal_action_v1 的载荷:一个权限绑定和最多 4,096 个条目,每个条目都是一个普通行动,有自己的 ID、预期修订号、结果和事件。某个条目不能准入时,准入拒绝整个批次并指出它的序号。 |
| 行动批次组 | fiscal action batch set | FiscalActionBatchSet、fiscal_action_set_command |
apply_fiscal_action_set_v1 的载荷:同一个命令签发者之下最多 64 个批次,每个批次都像批次命令那样准入,并各自排成一个结算数据包,所以几个机构的批次在一轮内结算。准入拒绝时拒绝整组,并指出是哪个批次。只有批次组还接受本人名义决策(decision in one’s own name):来源是某个角色、命令主体就是此人本人的决策,按此人直接签发处理,绝不按机构处理。 |
| 结果环 | outcome ring | FISCAL_RECENT_OUTCOMES、fiscal_recent_outcome |
一个行动目标保留的最近八个结果,连同结果下限(outcome floor),即最近被挤出的结果的结算修订号。两者只凭常驻状态就能拒绝重发的行动;每个结果都留在它的结算事件里。 |
| 周期水位线 | cycle watermark | FISCAL_CYCLE_ARCHIVED |
一个范围已归档的最大核算周期(范围水位线,scope watermark),或其机构已归档合计的最大核算周期(机构水位线,office watermark)。不在任何一条水位线及以下开立新账册,所以一个核算分区在整个运行中最多核算一次,而无需读取归档。 |
| 分区键 | partition key | MAX_FISCAL_PARTITION_KEYS |
账册或报告行中一条事实的单位和支付形态。一个机构在一个周期、一种机制下的账册最多使用四个。 |
| 财政归档 | fiscal archive | FiscalArchiveStore、prepare_fiscal_archive、enqueue_fiscal_archive、finalize_fiscal_archive_retention、archived_fiscal_record、FiscalArchiveKeyV1 |
由上层应用保存、按内容寻址的归档,存放已关闭的账册、各周期的机构合计和维护凭证,带有资源归档格式的累积查找索引。没有任何边界读取它;一次模拟运行可以做任意多次提交。辅助函数接收模拟运行本身,只读一次提交需要的记录;账册引用的证据如果比运行自己的封存切点(sealed_evidence_cursor;运行在创建或恢复之后尚未封存时没有封存切点,接续恢复也不算封存,此时不拒绝任何账册)更新就会被拒绝,所以会封存的上层应用在每次存档时都先封存。 |
| 报告周期槽位 | cycle slot | MAX_FISCAL_REPORT_CYCLE_SLOTS |
观察者报告中一个常驻周期占用的 64 个位置之一;槽位 s 的分段 p 对应报告行 1 + s * 1,024 + p。离开报告的周期把它的分段发布为空并释放槽位;槽位用完时的周期计入摘要的 omitted_cycles。 |
| 报告分段 | report part | FiscalReportRecord、FISCAL_REPORT_ROWS_PER_PART |
报告的一条知识记录:一个周期的 16 个相邻行(范围行或机构行),独占一条报告行,只在各行的摘要值变化时重新发布。第 0 行是摘要。 |
| 历史财政语境 | fiscal historical context | FiscalHistoricalContext |
用于判断活动时期和改革候选的显式历史年份与模式;只通过规范化输入改变,不会自动实施改革。 |
| 财政覆盖单元 | fiscal coverage cell | FiscalCoverageCell |
一个“时期 × 地区 × 机制”单元,通过确定性优先级解析为有支持、原型回退、明确未知或不适用。 |
| 财政执行凭证 | fiscal execution receipt | FiscalExecutionReceiptPacket |
引用精确类型化适配结果版本、并写明所结算请求所在范围的结算请求,通过 enqueue_execution_receipts 以每包最多 4,096 张提交;准入后的凭证从这些结果派生外部观察到的数量与处置。一个精确版本在它写明的每个范围内最多结算一张凭证,一个 (evidence kind, external_operation_id) 组合在一个范围的常驻账册内最多结算一张。结算不能接受的凭证会以事件被拒绝,绝不会让边界失败。凭证不拥有资源真值。 |
| 汇总执行证据 | aggregated execution evidence | FiscalExecutionEvidence::parts、FiscalExecutionEvidencePart |
一次执行跨多个范围的一条证据记录:本身不写范围和请求,而是列出最多 4,096 个证据分项(evidence part,字段 parts),每个范围一个,各写明一个请求和一个数量,合计等于记录的数量。每个范围的一张凭证引用这同一个版本,按写明该范围的分项及其数量结算。 |
| 代理角色 | acting actor | FiscalAuthorityBinding::acting_actor |
只有当权限依据仍是其记录的当前版本时,才可为某个权限绑定执行财政行动的第二个角色;常设角色不受影响。代理角色不能发起权限改绑;权限改绑可以更换或撤下它。 |
| 权限依据 | authority basis | FiscalAuthorityBinding::authority_basis, FiscalAuditBinding::authority_basis, MovementOrderRequestV1::authority_basis |
授予权限的精确应用记录版本,其记录种类须是所属插件会读取的种类。它可以授予财政权限绑定中的代理角色权限,可以授予审计绑定中的审计人权限,也可以授权一条移动命令(MovementOrderRequestV1)移动所有者以外的对象。核验时它必须是其记录的当前版本;该记录出现新版本或退役后,财政授权随之结束,直到一次改绑换上当前版本。 |
| 权限改绑 | authority rebinding | FiscalAction::RebindAuthority, FiscalRebinding |
一项已结算的财政行动,在一次提交内同时更换权限绑定的常设角色、代理角色和权限依据。它必须在被更换的绑定之下发起,发起者是该绑定的常设角色,或者以整体名义作决定的机构,代理角色不能发起。绑定会记下这次行动及其签发者。 |
| 审计绑定 | audit binding | FiscalAuditBinding, FiscalAction::RebindAudit |
为某个机构准入一名机构之外的审计人的财政绑定:审计人只能对该机构负责范围内的对象记录审计结论,不能发起其他财政行动,并且只在绑定自身的权限依据仍是当前版本时有效。由谁安装、更换和移除它,由被审计机构的审计任命政策决定;只有政策让该机构自己担任任命机构时,RebindAudit 才是它自己的直接决定。绑定说明结论由谁录入,它的 nomination 说明审计人由谁提名。 |
| 审计任命政策 | appointment policy | FiscalAppointmentPolicy、FiscalState::add_appointment_policy |
场景声明的政策,每个被审计机构一份,写明谁任命和罢免它的审计人。任命机构(appointer)是以 DecideAuditAppointment 作决定的机构;提名方(nominator)以 NominateAuditor 提出候选人;请议方(petitioner)以 PetitionAuditorRemoval 请求罢免某位审计人;appoints_without_nomination 和 removes_without_petition 决定任命机构能否不经提名或请求就直接行动。没有政策的机构只有随状态安装的审计绑定。 |
| 审计人提案 | auditor proposal | FiscalAuditProposal、FiscalProposalResolution、FiscalProposalRef |
被审计机构记录中一条待决的提名或罢免请求,记有提出它的一方,只结案一次:接受、驳回或被取代。一方在一份政策下最多有四条待决提案;每份政策保留最近 64 条已结案提案。 |
| 资源模拟扩展 | resource simulation extension | canwu-resource |
可选的守恒数量扩展,负责精确资源/单位版本、账户、受保护底线、需求、预留、分配、转移、验收交付、消费、损耗、履约和确定性凭证;不拥有货币或市场。 |
| 生产模拟扩展 | production simulation extension | canwu-production |
可选的生产资产扩展,负责工艺、地点、设施、产能、工单、在制品、执行、项目和产出结算;生产地点形态与要求是版本化数据,不是统一建筑等级。 |
| 资源能力阶段 | resource capability stage | ResourceCapabilityStage, ResourceCapabilityRevision |
带生效期的修订记录,把某项资源放在从潜在储量到交付验收之间的某个阶段:潜在、已观测或勘查、已探明、技术上可开采、在产地点、路线可达、已交付验收。每条修订都引用其模型卡。 |
| 受保护存量底线 | protected stock floor | ProtectedFloorPolicyRevision, ResourceProtectedFloorRequestV1::install |
把种子、口粮或应急库存排除在普通分配之外的版本化政策;只有另行授权的行动才能突破。政策版本可以由场景预先编写,也可以由账户的保管人在运行中以按内容寻址的版本安装;没有任何账户或需求引用的按内容寻址版本会被退役。 |
| 一步式完成租约 | single-step completion lease | ResourceCompletionOperationV1::SingleStepLease, SingleStepCompletionLeaseV1 |
四个建立步骤(申请、授权、准备、激活)在一个操作内同时生效、否则一个都不生效的完成租约:检查和激活凭证与四步路径相同,只留下一条操作结果和一条凭证。只有资源插件是租约唯一参与方时才能使用,并且只能通过完成租约输入进入,持有人命令不能携带它。 |
| 跳过的数据包 | skipped packet | RESOURCE_INGRESS_SKIPPED_EVENT、ResourceIngressSkipV1、ResourceIngressSkipReasonV1 |
因为可预期的原因(结果放不进资源记录、操作键已被占用或属于保留前缀、未通过结算检查)而无法结算的资源数据包:它什么也不改变,操作键保持空闲,由一个带稳定原因的 canwu.resource.ingress_skipped.v1 事件指明,所在边界照常提交。空间恢复后由发送方重发。可预期的拒绝绝不会让边界失败。 |
| 延后结算 | deferral | RESOURCE_DEFERRED_INGRESS、ResourceIngressSkipV1::deferred_until |
资源插件处理其他插件安排的工作(生产产出批次,或以后仍能作为同一步骤结算的完成步骤)的方式:当它放不进资源记录、但一次归档提交或租约释放能腾出空间时,插件把同样的工作排给自己,一分钟后到期,之后每次翻倍,最长 1,024 分钟;跳过事件写明延后到何时。 |
| 账户损耗 | account-level loss | ResourceOperationRequestV1::RecordLoss |
不经转移、直接从单个账户扣减并引用原因的损耗;计入守恒中的已准入损耗,不动用已预留存量,除非明确允许,否则遵守受保护底线。 |
| 转移部分损耗 | partial transfer loss | ResourceOperationRequestV1::RecordTransferLoss、ResourceTransferLossRequestV1 |
在途转移一部分托管量的损耗;转移保持原来的状态和其余托管量,这部分损耗计为已准入损耗。之后验收按实际验收的数量为需求记履约,所以损耗多少,需求就重新空出多少。 |
| 原子交换 | atomic exchange | ResourceOperationRequestV1::BeginExchange, ResourceExchangeTermsV1 |
两项转移的发起在同一个结果下一起准入或一起拒绝。每条交换腿的完成租约由其来源保管人持有,并绑定到双方约定条款的摘要;之后两项转移独立结算。 |
| 本地验收 | local acceptance | ResourceTransferDispositionV1::AcceptLocal |
当两个账户声明相同的地点范围时,不经运输执行即可结算尚未发运的转移,并引用精确的交接记录。 |
| 地点范围 | place scope | ResourceAccount::place_scope |
由上层应用在场景安装账户时声明的账户存量地点标识,此后只有上层应用可以更改(RescopeAccount);引擎从不推断它,未声明时不能本地验收。 |
| 账户改换地点 | account rescope | ResourceOperationRequestV1::RescopeAccount、enqueue_resource_account_rescope |
上层应用对账户地点范围的更改,须引用记载这次搬迁的那条记录的当前版本;持有人永远不能设置地点范围。 |
| 动用授权 | access grant | ResourceAccessGrantV1, ResourceDemandSourcePolicyV1::Granted |
授权保管人引用精确权限证据作出的记录化同意:被授权方可在有效期内、在上限以内动用授权方某一精确资源与单位版本的存量。每次扣减都由被授权方自己的完成租约授权,不会回退到其他账户。 |
| 活动根 | live root | ResourceLiveRootV1、resource:runtime:v1 |
持久化资源根时不含分桶记录的那条领域记录:未关闭的需求及其分配、进行中的转移、租约、报告授权、观察头,以及分别计数常驻终态记录和活动记录的两本账。每个结算资源工作的边界都会读它。 |
| 常驻终态记录 | hot terminal record | ResourceHotTerminalEntryV1、ResourceState::hot_terminal_records |
还没有通过归档提交离开资源根的终态记录(操作结果、已关闭的需求及其预留、已结算的转移、凭证)。它占用归档候选预算,每次恢复都要校验它。 |
| 常驻终态桶 | hot terminal bucket | ResourceHotTerminalBucketV1、resource:hot-terminal:{bucket}、resource_hot_terminal_bucket、ResourceBucketRecord |
保存常驻终态记录的桶记录之一,数量为归档候选预算的一半向上取整到二的幂(每桶约两条记录);每条记录按其标识的哈希落入一个桶。边界只写条目有变化的桶,归档提交对每个清空的桶只改写或删除一次。它与活动桶共用记录种类 canwu.resource bucket。 |
| 常驻终态账 | hot terminal ledger | ResourceHotTerminalLedgerV1、ResourceState::hot_terminal |
活动根里的一组计数(记录数、操作结果数、转移数、已应用的维护凭证数、需求请求方、底线政策、租约凭证申请、字节数)。所有规则都读这组计数而不读常驻终态记录本身,所以边界在它挂载的那部分记录上结算,与在整个根上结算的结果相同。 |
| 活动桶 | live bucket | ResourceLiveBucketV1、resource:live:{bucket}、ResourceLiveLedgerV1、ResourceRootReader::attach_live |
桶记录之一,数量在资源根的整个生命期内固定,按各自标识的哈希保存账户、动用授权、资源定义、单位版本和保管人索引条目,每桶约四条,由活动根里的活动账计数。边界挂载数据包点名的活动记录,只写它改动过的桶,所以结算一次操作的开销与账户数无关;发布构建会拒绝改写了未挂载活动记录的边界。 |
| 已读资源根 | kept resource root | KeptResourceRoot、ResourceRootReader::keep、ResourceRootReader::reattach |
上层应用的资源根读取方读到的内容,在两步之间保存下来而不借用运行:状态、已解码的记录、读取请求,以及运行自己持有的、它所读每条记录的那一份。重新挂载会在运行的当前资源根上重复这些请求,只解码运行已不再与之共享记录的桶,从不信任版本号;失败过的请求会被重复。它只存在于上层应用的内存中,从不保存,是对所有保管人的受信任的上层应用读取。不是移动域的在持预订。 |
| 保管人索引 | custodian index | ResourceCustodianAccountsV1、ResourceRootReader::attach_custodian_accounts、ResourceState::refresh_custodian_index |
活动桶中列出某个保管人名下全部账户的条目。它只在保管人新增账户时改变,所以读取方点名持有人就能挂载它的存量;校验会拒绝不在其保管人索引中的账户。直接向状态插入账户的测试夹具,在应用操作之前要先刷新索引。 |
| 消费批次 | consumption batch | ResourceConsumptionBatchRequestV1、ResourceOperationRequestV1::ConsumeBatch、resource_consumption_batch_item_key、ResourceState::consumption_batch_can_fit、ResourceLimitsV1::max_batch_items_per_boundary |
在同一份完成租约下结算的最多 256 笔精确分配腿消费,经提供方的适配器输入进入,每一项在它预留的键下配一条类型化的消费意图。每一项要么单独被拒绝,要么带自己的结果完成消费;多项可以动用同一个账户;批次结果汇总已消费数量,被拒绝的数量记为余量;租约只完成一次。结果放不进资源根的批次整批跳过、什么也不记录;超出本边界条目上限的批次延后到同一时刻的下一个边界。 |
| 运输关联历史 | link history | ResourceTransfer::link_history、ResourceTransferLinkV1、MAX_RESOURCE_TRANSFER_LINKS |
转移在推进中按顺序记下的运输关联,各带其证据,最多 16 条(在途的最多 14 条),归档时也随转移一并保存。转移未结束时,这是它运输证据的唯一副本。 |
| 中间路段 | intermediate leg | TransferProgressV1::InTransit |
同一运输执行中之后的路段或交接,在转移保持在途时,以从 InTransit 到 InTransit 的推进记录下来;它的路段序号不小于当前路段。 |
| 外部流入入账 | external inflow credit | ResourceCreditSourceV1::ExternalInflow |
保管人以证据为依据,把来自模型账户之外的价值入账,与外部流出相对应;作为带请求标识的命令时,只能在恰好绑定这笔入账的租约下进行。它的结果保留所引用的记录版本。 |
| 租约操作绑定 | lease operation binding | CompletionOperationBindingV1、EligibilityEnvelopeV1::operation_binding、EligibilityEnvelopeV1::bound_to |
可选的记录,写明完成租约所授权的唯一一项不可逆操作(种类、数量,终态转移处置还可以指定是哪一种),由租约的签发方写进资格信封,持有人不能写;把租约用于别的操作会被拒绝。 |
| 归档查找索引 | archive lookup index | ResourceArchiveLookupPageV1, ResourceArchiveIndexDirectoryV1::lookup_root |
每次归档提交都会续写的累积索引,按内容寻址。检查某个键是否已归档时,只需读取归档头目录,再沿索引每层读一个经过认证的页,与模拟运行已经做过多少次归档提交无关。资源归档、生产归档、财政归档和参考包归档都使用这种格式的索引,各有自己的命名空间。恢复、精确重放或派生分支需要沿途每个归档头的索引页。 |
| 在制品 | work in progress | WorkInProgress |
已进入尚未完成的生产执行,并绑定精确工艺、设施、资源和证据的投入;既不是可用库存,也不是已结算产出。 |
| 实际产出 | realized output | realized_output_per_mille, realization_evidence |
生产执行完成时以工艺名义产出的千分比表示的产出,按向下取整缩放后进入产出结算;任何非名义比例都需要工艺版本声明种类的精确证据记录。 |
| 移动生命周期扩展 | movement lifecycle extension | canwu-movement, MovementPlugin |
负责运输记录生命周期的可选扩展:准入移动命令、在到期时结算路段、让路段在出发前和途中滞留、分配运力池,并发布持有人相对的移动报告。事故、危险及其随机抽样仍属于应用系统。 |
| 军事模拟扩展 | military simulation extension | canwu-military |
可选的交战引擎:在宿主安装的战斗规则册上负责部队、按战斗步推进的交战、围城、渡河作战和交战报告;不是通用战斗模型,也不拥有控制或占领。 |
| 交战 | engagement | EngagementStateV1, OpenEngagement |
宿主地点上双方之间按战斗步推进的一场战斗,由命令开启,结束时收束为一份总结。 |
| 战斗步 | engagement step | StepV1, EngagementStepsV1 |
战斗步公式的一次结算;每个战斗步的证据。 |
| 战斗规则册 | combat rulebook | CombatRulebookV1, InstallRulebook |
宿主带版本、带哈希的参数,每个战斗步都读取它。 |
| 战斗步结算器 | step resolver | StepResolver, ParametricStepResolver |
从战斗步输入和抽样到战斗步结果的确定性函数;可以是本 crate 的参数化结算器,也可以是宿主自己的。 |
| 围城 | siege | SiegeStateV1, InvestSite |
对宿主地点的合围、火炮就位、破城、攻城、出城反击、援军解围和陷落。 |
| 渡河作战 | contested crossing | CrossingStateV1, OrderCrossing |
分批渡河,经受拦截,登岸建立滩头。 |
| 战斗条件输入 | condition input | ConditionInputV1, SupplyInput |
宿主为每一方提供、战斗步读取的数值,并引用它们所依据的宿主记录。 |
| 战前预判 | pre-battle forecast | ForecastV1, ForecastBandId |
依据规则册的分档线得出的开战比值所在档位。 |
| 定时战斗步 | timed step | timed_step_ingress, MILITARY_TIMED_STEP_INGRESS |
上层应用作为插件输入排入、在指定时刻到期的战斗步;该时刻的边界结算到期的工作,所以每天推进一步的上层应用不必增加边界;该边界准入的命令在它之后生效。 |
| 加入围城 | siege join | JoinSiege |
把地点上空闲的部队加入某场围城的围城方或守军,以及正在进行的攻城或出城反击的命令。 |
| 撤出围城 | siege release | ReviseSiegeV1::release |
围城修订中把部队从围城一方撤出、使其可以重新布置的部分。 |
| 交战时限 | engagement time limit | OpenEngagementV1::max_minutes, EngagementStateV1::max_minutes |
一场战斗在无人溃退时最多进行多久,到时以 Stalled 结束:取其种类规则的时限,或上层应用开战时指定的更短时限。 |
| 军事补给参考消费者 | force-supply reference consumer | canwu-force-supply-reference |
可替换的整合包,证明军事后勤可以消费公共资源 API,同时只拥有军队本地需求、战备、短缺后果和征发 saga;不是通用战斗模型。 |
| 本地稀缺度投影 | local scarcity projection | LocalScarcityProjection |
脱离式、持有人绑定的读取模型,解释可观察供给、需求、缓冲、路线可达性、安全与政策;不声称存在价格。 |
| 价格压力投影 | price-pressure projection | PricePressureProjection |
只有存在合格的价格证据和版本化解释规则时才生成的脱离式读取模型;既不形成市场,也不结算交易。 |
证据、随机性与持久化
Section titled “证据、随机性与持久化”| 中文规范写法 | English | 代码或 API | 含义与使用位置 |
|---|---|---|---|
| 事件 | event | SimEvent |
权威证据中的可序列化因果记录,不是 UI 通知。 |
| 因果关系 | causality | CauseRef |
解释事件或变化为何发生的已记录关系。 |
| 相关标识 | correlation ID | correlation_id |
将同一权威因果根产生的记录归为一组的稳定标识。 |
| 随机流 | random stream | RandomStreamKey |
由已声明机制拥有的具名、版本化确定性随机来源。 |
| 抽样证据 | draw evidence | RandomDrawRecord |
一次确定性随机抽样所记录的流、范围、操作和结果。 |
| 随机决策策略 | random decision policy | DecisionPolicyKind::Random |
由声明过的边界系统使用可重放抽样证据结算的有界票据选择器,不是通用世界事件生成器。 |
| 决策选项权重 | decision option weight | DecisionOptionWeight |
将一个有界抽样映射到票据既有选项的规范 option ID 与非负整数权重。 |
| 操作定址随机抽样 | operation-keyed random draw | random_sample_for_operation, random_draw_for_operation, RandomOperationDraw |
按稳定 cause、operation ID、目标、occurrence、purpose 和随机流身份定址的抽样,使重试与重放不会消费另一份结果。random_draw_for_operation 还会返回这次抽样的证据 ID;完全相同的重试由操作定址抽样明细回答,不论当初引用的证据是否仍被保留。首次抽样引用的操作证据必须不受封存影响:同一边界内的证据、日志计数器能证明的序号证据,或记录的当前版本或初始场景版本。 |
| 操作定址抽样明细 | keyed-draw ledger | KeyedDrawEntry、ContinuationCheckpoint::keyed_draws |
模拟运行抽过的每个操作地址的持久记录,无论其抽样证据仍保留还是已封存,记有抽样 ID、证据、上界、用途和值。边界提交时续写,边界失败时恢复,封存和派生分支共享它,每次恢复只重建一次;每个地址保留一个条目直到该抽样退役,随机流未声明定址抽样退役期时保留到运行结束。 |
| 定址抽样退役期 | keyed-draw retirement | KeyedDrawRetirement、BoundarySystemContract::keyed_draw_retirement |
某个随机流的操作定址抽样在抽样所在边界之后,在操作定址抽样明细中保留多久:由拥有该随机流的边界系统声明的正时长,属于插件描述。抽样时间加这个时长之后的第一个边界,在任何系统运行之前把它丢弃。不是已退役请求结果(命令请求),也不是已清退条目(知识条目)。 |
| 已退役定址抽样 | retired keyed draw | — | 过了退役期的定址抽样:不再被回答;同一地址的请求是一次新的抽样,用新的抽样 ID(上界和用途相同时值也相同),原抽样记录作为证据留在抽样日志里。 |
| 评估轨迹 | evaluation trace | EvaluationTraceRecord, BoundaryDirective::RecordEvaluationTrace |
有界的边界证据,逐项说明某条应用规则如何为一个对象得出一个整数结果。它不属于状态;持有人只能通过 CanwuViewer::evaluation_traces 读取关于自身实体的轨迹,或者在轨迹评估之前其账本就已得知的对象的轨迹。 |
| 资源预留 | reservation | ReservationRequest |
分配前对守恒资源池提出的声明式申请。 |
| 需求来源策略 | demand source policy | ResourceDemandSourcePolicyV1 |
在稀缺资源分配前选择合格供给账户:匹配资源池中的账户、由申请者保管的有界精确账户列表,或在动用授权下列出的授权方账户。只有 Granted 形式带有跨保管人的权限,且仅限于该授权。 |
| 资源分配 | allocation | ReservationAllocation |
在供给约束下确定性结算竞争申请的结果。 |
| 可见性 | visibility | StateVisibility |
控制状态和证据可以到达哪些读取者的策略。 |
| 快照 | snapshot | SimulationSnapshot |
恢复时必须完整校验的持久化状态映像。 |
| 检查点 | checkpoint | SimulationCheckpoint |
可与后续日志证据衔接的已验证紧凑基础状态。 |
| 检查点日志 | checkpoint journal | CheckpointJournal |
检查点和后续证据的组合,用于紧凑持久化与恢复。代码相邻正文可直接使用类型名。 |
| 分页检查点 | paged checkpoint | PagedSimulationCheckpoint、prepare_paged_checkpoint |
检查点按内容寻址的形式,以状态页保存,每个新检查点只增加发生变化的页。恢复时需要截至该检查点的连续证据前缀。分页根还绑定了哪些证据已经封存,因此不是状态标识:从已封存日志段恢复后,检查点哈希不变,分页根却不同。判断状态是否相同应比较检查点哈希。最大 512 MiB 的记录以记录值分块分页保存,知识账本按记录正文和持有人账本分页,紧凑检查点正文也分块保存,所以没有哪一部分受限于单页;每次恢复都受恢复预算约束。 |
| 恢复预算 | restore budget | PagedRestoreBudget、PagedRestoreBudget::new、PagedRestoreBudget::DEFAULT、ErrorCode::RestoreBudgetExceeded |
上层应用为每次分页恢复必须提供的上限,限制恢复从页中组装出来的字节数:每条记录值、知识记录正文、持有人账本、紧凑检查点正文和热决策状态都先计入预算再分配内存,超出预算的值在读取它的任何分块之前就以 RestoreBudgetExceeded 被拒绝,什么也不恢复。它限制的是组装出来的字节数,不是堆内存;DEFAULT(2 GiB)是上层应用自己的检查点的上限,来源不可信的页应使用接近预期大小的预算,并先认证根页。 |
| 组装字节数 | assembled bytes | PagedSimulationCheckpoint::assembled_bytes |
诚实地恢复一份分页检查点时从页中组装出来的精确字节数,写在描述记录里;上层应用恢复自己的检查点时就用它作为预算。描述记录声明的数目超过预算时,恢复在读取任何页之前就拒绝;与页实际组装出来的数目不一致时也拒绝。 |
| 记录值分块 | record-value chunk | STATE_PAGE_VALUE_CHUNK_BYTES、MAX_PAGED_RECORD_BYTES |
分页检查点中,长度超过 1 MiB 的领域记录被切成的每个按内容寻址的 1 MiB 页。记录的叶页按顺序列出它的分块,没有变化的分块不会再存一次,最大 512 MiB 的记录都能分页;更长的记录会让准备分页检查点以 value_out_of_range 失败,绝不会让边界失败。 |
| 接续检查点 | continuation checkpoint | ContinuationCheckpoint、continuation_checkpoint、CompactedCanwu::from_continuation_checkpoint_verified |
不带证据历史就能继续运行的存档:当前状态、接续闭包、操作定址抽样明细、请求索引、时间索引、边界账,以及可续写的日志承诺。在同一个切点上,无论运行是否封存过,它都逐字节相同;不需要任何证据日志段就能恢复成 CompactedCanwu,并按上层应用保存的 continuation_hash 校验。它包含真值,不能交给玩家、智能体或远程客户端。 |
| 接续闭包 | continuation closure | PinnedEvidenceRecords、UnadmittedEvidence |
仍在进行中的工作可能还要读取载荷的证据:待处理输入及其有依据事实、待处理工作的原因、需要保留载荷的依赖,以及尚未准入的尾部。它只取决于当前状态和切点,与运行何时封存无关;封存把它作为固定证据(pinned evidence)保留在封存切点之下。 |
| 有依据事实 | provenance fact | PluginIngressProvenanceFact |
封存为一条待处理或已声明的输入记录保留的、ID 之外的信息:产生它的边界及其签发者、目标插件、数据包类型和状态(待处理、已准入或已撤回),或者“不是任何边界产生的”。记录封存之后,plugin_ingress_matches 和撤回读取这条事实,所以封存过的运行与未封存的运行回答一致。 |
| 最新日志 | journal frontier | JournalFrontiers、JournalFrontier |
一条日志的可续写 BLAKE3 承诺可导出的状态:条目数、字节长度、链接值和未完成的分块,最多约 2.8 KB。接续检查点带着五条,所以恢复后的运行续写同样的承诺流,之后每个边界都得到相同的检查点哈希。 |
| 运行句柄契约 | run handle contract | canwu_api::CanwuRun、typed_domain_record |
Canwu 和 CompactedCanwu 都实现的上层应用 trait:当前状态读取、按种类读取记录(domain_records_of_kind)、运行自己持有的那一份记录(domain_record_shared,即 domain_record 读到的那份,每次写入都会换成新的一份)、任意持有人的当前知识记录(knowledge_heads、knowledge_current_records)、不受封存影响的记录版本、日志计数器、边界账、待处理输入和规范化输入。扩展的上层应用辅助函数接受任何 CanwuRun,所以带归档的运行或从接续检查点恢复的运行与完整历史的运行用同样的调用驱动。它不结算任何内容,它的读取都是受信任的上层应用读取。 |
| 精确重放 | exact replay | replay_from_journal() |
从已记录输入与证据重建并验证同一次运行,不重新调用外部选择。 |
| 平行现实 | alternative reality | — | 从共同的先前状态选择不同的输入形成新的平行现实,不是精确重放。 |
| 派生分支 | fork | fork() |
从现有时点复制出的独立模拟,可接收新输入;指 API 时保留 fork。 |
| 状态承诺 | state commitment | CommitmentRoots |
绑定权威状态或证据、供校验使用的密码学承诺。 |
| 语义哈希 | semantic hash | semantic_hash |
描述插件行为的稳定值,用于拒绝不兼容的加载或重放环境。 |
| 精确领域记录版本 | exact domain-record version | DomainRecordVersionRef, domain_record_version() |
同时绑定领域记录身份、版本和建立来源;当前记录更新后,历史证据仍保持原有含义。 |
角色、知识与决策
Section titled “角色、知识与决策”| 中文规范写法 | English | 代码或 API | 含义与使用位置 |
|---|---|---|---|
| 角色 | actor | PersonId |
其知识和权限会约束视图或行动的人物或世界内主体。 |
| 人物可用性 | person availability | PersonAvailability |
某个人物的核心生存状态与人身状态,只能由声明过的边界系统修改。未存活、被拘押或被俘的人物不能签发命令、作出决策,也不能作为控制者的权限人物;没有记录时视为存活且自由。 |
| 生存状态 | life state | LifeState |
Alive、Dead 或 Missing;人物可用性的一部分。 |
| 人身状态 | custody state | CustodyState |
Free、Detained、Hostage、Captive、Hiding 或 Exile;人物可用性的另一部分。默认只有 Detained 和 Captive 会阻止准入。 |
| 人物创建 | person creation | BoundaryDirective::CreatePerson, PersonDraft, PersonPlacement, BoundaryCreatedPerson |
第 7 阶段根据应用草稿和来源证据创建人物、由引擎分配 ID 的指令。草稿可以带一个在 WorldSnapshot 投影中的落位(所属政府和所在地域),也可以不带。回执把该 ID 绑定到提出创建的插件、系统和相关标识;新人物从下一边界起可见。 |
| 无定位人物 | unplaced person | PersonDraft::placement, PersonPlacement |
创建时不带落位的人物:它在实体注册表中有身份,有人物可用性和创建回执,但在 WorldSnapshot 投影中没有 Person 记录。它的属性由上层应用保存在自己的记录里;内置的移动、信件和军队报告路径只读投影,所以不会涉及它。 |
| 角色知识 | actor knowledge | ActorKnowledge |
某一角色知道的内容及来源、可信度和时间,与真值分开保存。 |
| 报告 | report | EventKind type "report_dispatched" |
在更新角色知识前,在角色之间签发或送达的信息。 |
| 持有人相对知识 | holder-relative knowledge | KnowledgeHolderRef, KnowledgeReadCut |
在精确读取切面上从某个人、机构、官署或其他持有人账本读取的事实,不能改读全知状态。 |
| 当前知识记录 | current knowledge records | SimulationView::knowledge_heads、KnowledgeHeads、HolderLedger::current_records、HolderLedger::current_record_views、Canwu、CompactedCanwu 和 CanwuRun 上的 knowledge_heads 与 knowledge_current_records |
持有人在某一 schema 种类下的当前记录,即没有被该持有人任何条目在 supersedes 中指名的条目。发布知识的系统按类型化主体筛选,读取它们的全局 ID,用来指明下一条记录要取代哪些记录。读取来自已提交状态的索引和正在结算的边界,所以实时、封存、恢复和重放的运行结果一致,开销也不随持有人账本的大小增长。上层应用也可以从运行句柄上读到同样的内容:得到的是全局 ID,或是按发布顺序、最新在前的持有人相对视图,不需要读取切面,也不对持有人的历史做哈希;这是对任意持有人的受信任的上层应用读取。 |
| 知识记录正文 | knowledge record body | KnowledgeRecordBody |
知识记录中与持有人无关的部分,无论几个持有人持有都只保存一份:schema、主体、载荷、时间、置信度和来源。没有任何持有人持有时,正文离开账本。 |
| 持有人条目 | holder entry | HolderEntry、HolderPublication |
一个持有人对一个记录正文的持有:它的持有人本地记录号,以及它自己的取代和矛盾列表,列表只指向同一持有人、同一 schema 种类的条目。一条 KnowledgeRecord 就是一个记录正文配上一个条目。 |
| 持有人本地记录号 | holder-local record ID | HolderKnowledgeRecordId、HolderEntry::local、HolderLedger::local_of |
持有人看到的自己某条记录的编号,来自持有人自己的计数器,随条目保存。它不会改变、不会重新开始,也不会指向别的持有人的记录,所以读取方无法据此推断其他持有人有多少记录。 |
| 共享发布 | shared publication | KnowledgePublicationGroup、KnowledgeSupersession |
一条 PublishKnowledge 指令把同一批草稿发给一组中的每个持有人:每个正文只保存一份,每个持有人各得一个条目。Explicit 下,草稿的关联只作用于组内唯一的持有人;CurrentOnSubjects 下,引擎为每个持有人找出该持有人在草稿种类下、带有草稿全部主体的当前记录,并写进该持有人的条目。 |
| 发布预算 | publication budget | KnowledgePublicationBudget、SimulationView::knowledge_publication_budget、KnowledgeRecordDraft::payload_bytes |
到某个系统运行时,边界还能为知识花多少:记录正文、持有人条目和载荷字节,扣去更早阶段和本阶段更早系统已经用掉的部分,并附带每条指令的上限。每个发布方都先读它,放不下的推迟;超出它的发布会让边界失败。 |
| 知识留存策略 | knowledge retention | KnowledgeRetention、PluginKnowledgeSchema::retention、KnowledgeQueryResult::retention |
schema 规定条目何时离开持有人:整个运行期间保留(Keep),或在同一持有人的新条目取代它时清退(RetireWhenSuperseded),清退发生在发布时的同一次提交中,实时运行和重放一致。它是插件描述的一部分。 |
| 已清退条目 | cleared entry | — | 按 schema 的留存策略离开了持有人的条目:指向它的每个关联都被去掉,没有持有人再持有时它的记录正文离开账本,而边界证据仍保留当时发布的原样。不写作“退休”,术语表中“退休”指文化目标。 |
| 发布预留 | publication reservation | KnowledgePublicationReservation、PluginRegistrar::reserve_knowledge_publication、KnowledgeReservedPlugin、PluginDescriptor::knowledge_publication_reservation |
为一个插件保留的每个边界发布预算的份额:凡是该插件写知识的系统到期的边界都保留这一份额,其他插件的系统看不到、也拿不走它,与调度顺序无关。插件仍通过同一个 knowledge_publication_budget() 读取自己的份额,超出份额仍会让边界失败。它记在插件描述里,因而是模拟运行身份的一部分。不是针对资源池的资源预留。 |
| 委托账 | delegation ledger | DelegatedAuthority、DelegatedAuthorityLedgerPayload、DelegationExpiry、delegated_authority_reference |
canwu-information 为每个命令授权保存的一条带版本的记录,存放该授权下仍然有效的委托,并带一个到期索引。之后以委托权限进行的解读按这本账检查,而不是按命令检查,所以封存归档了命令也没有影响;expires_at 已到的委托不再授权任何事,并在下一个生命周期边界离开账本;准入时已经过期的委托声明不会记入。 |
| 法律提供方索引 | legal provider index | LegalRuntime::provider_packets、LawBudgets::max_provider_packets、DEFAULT_PROVIDER_PACKETS |
法律协调分片中记录的、边界准入过的每个已编译提供方数据包:输入 ID、插件、数据包类型,以及到期时间与载荷的哈希。信号或公开引用只有指向已记录的数据包才算数,可以在当时或之后任何边界引用,所以封存过的运行与其精确重放判断一致。索引保留最新的 max_provider_packets 条(默认 256;每保留一条,每个法律边界多花约 9 微秒),先忘掉最早的;引用已被忘掉的数据包会被拒绝。 |
| 持有人规划快照 | holder planning snapshot | planning_snapshot_from_holder_knowledge, KnowledgeReadCutDigest |
只用某个持有人账本在读取切面上声明的端点和连接构建的路由 PlanningSnapshot,同时返回读取集摘要,证明规划读取了什么。 |
| 通信 | correspondence | CorrespondenceOperation |
把定向通信需求与信息投递,以及必要的物理或信号运输组合起来的流程。 |
| 受托承运人 | delegated carrier | delegate_carrier_v1, InitiateCorrespondenceRequest::carrier_delegation |
发送者以外、以自己的委托命令接受承运的承运人;其声明指明发送者,并覆盖每次派发。规划读取承运人的账本,引擎不会把承运人的任何知识发布给发送者。 |
| 承运人扣押 | carrier seizure | CorrespondenceIncidentKind::CarrierSeized |
承运人连同信件被他人夺走的事故。与截取不同,它会终止投递尝试:终态扣押交接之后,运输执行只能由其所有者关闭,只有承运持有人会收到尝试报告;报告发布时承运人已不接受知识的,报告不发布。 |
| 知识种子拒收 | seed refusal | KnowledgeSeedRefusal、KnowledgeSeedReceipt::refusal |
知识种子未发布任何内容的原因:持有人不接受知识、一次发布装不下,或它陈述了规划网络不接受的连接。记在种子的回执上;种子键已被占用。 |
| 真伪判定 | authenticity finding | AuthenticityFinding |
解读信息的持有人作出的判断,绑定到所解读 representation 的精确版本,说明是否接受其声称的来源,并附依据和置信度。伪造被识破的概率仍由应用抽样决定。 |
| 改道 | reroute | ItineraryRevision |
因灾害或路线知识变化,为同一个投递尝试建立后继行程。 |
| 外部条件 | external condition | ItineraryRevisionReason::ExternalCondition |
引用应用所有的条件记录精确正数版本及应用标签的改道原因;运输只记录引用,不解释条件本身。 |
| 周期性班次 | recurring departure | TraversalModel::Recurring、TraversalModel::next_departure、MAX_RECURRING_OFFSETS |
一种通行模型:从纪元起每隔一个 period,在列出的每个偏移时刻各发一班,每班耗时相同。六小时一班的渡船只需一个模式,不必为每次航行写一个班次。某时刻之后的下一班按整数分钟精确算出,连接的可用窗口限定航季。 |
| 连接条件 | edge condition | EdgeConditionOverlay、EdgeConditionSet、EdgeConditionEffect、RoutingIndex::plan_route_with_conditions、RoutePlan::edge_conditions_digest |
上层应用提供的、作用于一条连接的时间窗口:封闭这条连接,或按比例调整它的时长和资源成本并替换其风险。规划路线时按出发时刻应用,不必重建网络。校验过的条件集随快照一起按查询传入,同一连接上的封闭合并、调整不重叠,计划记录条件集的摘要。它不同于改道所引用的应用记录,即外部条件。 |
| 路由索引 | routing index | RoutingIndex、RoutingIndex::reobserve、RoutingCache::index_key、RoutingNetwork::digest |
按网络版本编译一次的规划快照:只校验一次,网络只哈希一次,稠密邻接表放在 Arc 后共享。上层应用为每个网络版本保留一个索引,用 reobserve 把它移到新的读取切面(版本不符会被拒绝),通过它规划的耗时约为冷启动 plan_route 的百分之一;在同一快照上,它给出的计划和摘要与 plan_route 完全相同。 |
| 投递重试 | delivery retry | DomainReference 角色 "previous_attempt" |
终态失败后新建的后继投递尝试,不是对旧 attempt 的改道。 |
| 移动命令 | movement order | MovementOrder, MovementOrderRequestV1 |
一条已准入、不可变的意图:沿规划路线把一个或多个移动主体从起点移到终点。canwu-movement 通过其 Order 操作准入移动命令,并创建对应的运输执行;移动所有者以外的主体需要权限依据。 |
| 人员群体 | persons group | MovementSubjectRole::PersonsGroup |
作为一个整体移动的一群人所对应的移动主体,以正数人数作为数量;其身份通常是应用领域记录。 |
| 扣押交接 | seizure handoff | HandoffKind::Seizure |
行程之外的主体夺取保管权时形成的交接,记录夺取方身份。终态扣押以失败路段同时作为起止路段,保管权离开行程,此后运输执行只能由其所有者关闭。背后的事件和权限仍属于应用系统;其余交接均为计划交接。 |
| 运力池 | capacity pool | TransportCapacityPoolV1 |
由一个持有人提供、在时间窗口内可以互换的运输能力数量,例如渡船班次或驿马。已确认和已消耗的预订占用它;每次变化都会推进其修订号,便于分配证据引用。 |
| 预订分配 | booking allocation | allocate_capacity_bookings, CapacityBookingAllocationEvidenceV1 |
针对某一运力池修订、结果与输入顺序无关的纯函数分配:按优先级、窗口开始时间、平局决胜键、准入序号和预订标识依次处理请求,每项预订要么全额确认,要么记录原因后失败。它从不抢占已确认的运力。 |
| 路段滞留 | leg hold | MovementOperation::DelayLeg、MovementLegHoldV1、MovementOrderRecordV1::hold |
对当前路段的滞留:由移动命令的所有者或操作者用 DelayLeg 设置,或由引用当前版本证据的事故设置,把尚未出发路段的出发、或已出发路段的到达,推迟到一个不早于被取代的排定时刻的绝对时刻,不产生行程修订。之后的滞留可以延长、缩短或解除它,只保留最新的一次;到期结算之前,只有所有者和操作者能看到它。不要单用“延误”,它在正文中泛指任何迟到。 |
| 排定时刻 | scheduled due | MovementLegHoldV1::scheduled_at |
滞留所取代、且滞留不会早于它结束的到期时刻:已出发路段的实际出发时间加计划时长,或路段首次被滞留时待处理的出发时刻。解除滞留就是把 until 设回这个时刻。 |
| 行程顺延量 | schedule shift | MovementOrderRecordV1::schedule_shift、MovementReportDetailV1::schedule_shift、DelayLeg::retime_later_legs |
生效行程中尚未出发的各路段因重新排时的滞留(retime_later_legs)而落后于计划时间的量;它顺延这些路段的计划出发和预订窗口,只在重新排时的滞留结束时增长,改道会把它清零。 |
| 预订撤销 | booking revocation | MovementOperation::RevokeBooking、CapacityBookingStatus::Revoked、CapacityBooking::revocation |
运力池保管人(或应用事故)撤回一项已确认的预订,记下时间和原因;运力回到运力池,预订未被先行替换时,路段出发时失败。 |
| 预订替换 | booking replacement | MovementBookingRequestV1::replaces |
同一路段的一项新预订取代一项更早的预订,只能替换一次;待处理或已确认的原预订被取消或释放,原预订随即离开运输执行。 |
| 在持预订 | kept booking | MovementLimitsV1::bookings_per_execution、bookings_per_runtime |
运输执行因其仍与某个路段有关而继续保留的预订:已申请或已确认的、正在途中的路段消耗掉的,或尚未出发的路段已失去且尚未替换的。只有在持预订计入预订上限。 |
| 已了结预订 | closed booking | — | 不再与任何路段有关的预订:已释放、已取消或已被替换的,被已到达或已失败的路段消耗掉的,或所属路段已失败、已被取代或所属运输执行已关闭而失去的。它在了结它的那一步离开运输执行,其绑定也离开运行时;已消耗的运力仍由运力池计入。 |
| 投影 | projection | — | 不暴露权威领域状态而生成的角色范围物化表示。 |
| 权限 | authority | CommandAuthority |
发出命令或执行动作的已验证权利;authoritative state 应译为“权威状态”。 |
| 签发者 | issuer | Issuer |
命令声明的来源身份;权限验证决定该身份是否可以行动。 |
| 控制者 | controller | DecisionControllerBinding |
绑定到席位、负责作出决策的实体或过程;代码相邻正文可附 controller。 |
| 席位 | seat | seat_id |
可以绑定控制者的稳定决策角色。 |
| 决策策略 | policy | DecisionPolicy |
从当前选项中作出选择的人类、外部服务、LLM 或确定性评估器。 |
| 前置规则效用策略 | guarded utility policy | GuardedUtilityPolicy |
组合策略:有序前置规则可以选择、推迟或排除选项;加权效用为其余选项评分;可选的随机平局决胜处理分数接近的最高选项。其语义哈希把配置绑定到控制者。 |
| 决策阶段 | decision stage | DecisionStage |
组合策略中产生决定的阶段(Guard、Utility 或 Random),与触发的前置规则一起记录在决策轨迹上;它与结算阶段无关。 |
| 随机平局决胜 | random tie-break | DecisionOutcome::PendingRandom |
控制者须显式启用的路径:前置规则效用策略只列出分数接近的最高选项,再由边界系统以一次均匀的操作定址随机抽样从中选择。 |
| 决策票据 | decision ticket | DecisionTicket |
请求一个控制者从带版本的当前有效选项中选择的持久化对象。 |
| 前序票据 | parent ticket | DecisionTicket::parent_ticket |
新票据所接续的终态票据:可以是同一决策者的票据(例如为另一控制者重新开启的已取消票据),也可以是经席位继任接续的票据。该关联会复制到新票据的决策轨迹上。 |
| 席位继任 | seat succession | DecisionControllerBinding::seat_id, DecisionTicket::parent_ticket |
从终态票据到新票据的接续关系:新票据的指定控制者与原票据的控制者绑定同一个非空席位,因此继任者可以接续前任的决策,而不必是同一决策者。 |
| 席位改绑 | seat rebinding | rebind_seat, SeatRebindingRequest |
上层应用输入,在运行继续时把运行的席位交给另一个已有人物。从准入它的结算边界起,席位相关的检查跟随新人物,该席位上代表旧人物行事的控制者的开启票据以 seat_rebound 取消。 |
| 决策选项 | decision option | DecisionOption |
决策票据提供的一个候选选择。 |
| 决策尝试 | decision attempt | DecisionAttemptRecord |
一条已准入决策请求的权威记录,写明该请求被接受还是被拒绝。请求可以是注册控制者,也可以是开启票据、替换票据选项、为票据展期、改派票据、解决票据或取消票据。 |
| 展期 | deadline extension | DecisionMutation::ExtendDeadline |
在票据 ID 不变的前提下把开启票据的截止时间推后,按票据版本校验。 |
| 改派 | ticket reassignment | DecisionMutation::Reassign |
把开启的票据改派给另一个已注册的控制者,此后只有它能结算该票据;决策者和前序关系不变。 |
| 选项偏置 | option bias | WeightedUtilityEvaluator::with_option_bias、DecisionOption::bias、DecisionOptionEvaluation::bias |
对某个选项的整数偏好,不加权地加到该选项的加权得分上,并与各因子行分开记录:策略的固定偏置加上票据写在该选项上的偏置。 |
| 票据选项偏置 | ticket option bias | DecisionOption::bias |
票据起草者写在某个选项上的偏置:属于票据内容,不在策略身份之内,与策略对该选项的偏置相加,所以偏置各不相同的票据共用同一个控制者。 |
| 准入批次 | admission batch | DecisionState::tickets_opened_in_batch、SimulationView::decision_tickets_opened |
最近一个边界准入的决策 Open 所创建的票据,按准入顺序排列;属于持久化的决策状态,纳入决策根的承诺。 |
| 决策轨迹 | decision trace | DecisionTrace |
用于解释和重放的评分、证据、策略身份、所选选项与结果。 |
| 规范写法 | 已弃用或受限替代写法 | 范围与迁移说明 |
|---|---|---|
| 模拟内核 / simulation core | kernel |
受限:产品和接入文档使用 模拟内核 与 simulation core;kernel 可继续用于架构和内部实现说明。 |
| 上层应用 / host application | 主机程序 / host program | 已弃用:嵌入参伍的游戏、服务、客户端、研究工具或智能体系统统一使用 上层应用 与 host application。 |
| 对外 API / public API | public facade | 已弃用:接入边界和整体 API 表面统一使用 public API。 |
| 模拟插件 / simulation plugin | 运行时模拟插件 / runtime simulation plugin;模拟规则插件 / domain plugin | 受限:仅在区分运行时插件与 Agent 工具,或说明插件领域角色时使用长写法;它们不是独立插件类别。 |
| 结算边界 / boundary | transaction, settlement boundary | 已弃用:参伍的验证单元英文统一使用 boundary,与 settle_boundary 和 BoundaryPhase 一致;中文规范写法仍为 结算边界。 |
| 边界账 / boundary ledger | 日边界账 / day boundary ledger | 已弃用:0.14.0 把 0.13.3 按天读取的 boundaries_on_day 换成了按时间窗口读取;请使用 边界账 和 boundaries_between。 |
| 平行现实 / alternative reality | 反事实分支 / counterfactual branch;branch(因不同输入形成新因果运行时) | 已弃用:不同输入形成的新因果现实统一使用 平行现实 与 alternative reality;API 操作和复制出的模拟继续使用 fork。 |
| 权限 / authority | permission(指 CommandAuthority 时) |
受限:已验证的行动权统一称为 权限 与 authority;独立的运行策略上下文继续使用 permission profile。 |
| 无定位人物 / unplaced person | 未落位人物 | 已弃用:0.16.0 更改了中文写法;英文写法和 PersonDraft::placement 不变。 |
| 当前知识记录 / current knowledge records | 知识头记录 / knowledge heads | 已弃用(指文字写法):统一使用 当前知识记录 与 current knowledge records;代码标识仍是 knowledge_heads 和 KnowledgeHeads。 |
| 边界耗时明细 / boundary profile | 边界耗时剖面 | 已弃用:0.16.0 更改了中文写法;BoundaryProfile 不变。 |
| 排定时刻 / scheduled due | 排定到达时刻 / scheduled arrival | 已弃用:0.20.0 把路段滞留扩展到尚未出发的路段,滞留取代的到期时刻可以是出发;MovementLegHoldV1::scheduled_at 取代 scheduled_arrival_at。 |
| 一步式完成租约 / single-step completion lease | 单步完成租约 | 已弃用:0.16.0 更改了中文写法;SingleStepLease 不变。 |
| 已清退条目 / cleared entry | 退役知识记录 / retired knowledge record;退休记录 | 已弃用:留存策略从持有人那里移除的条目统一使用 已清退条目 与 cleared entry;退休目标 / retired target 仍是文化术语,RetireWhenSuperseded 仍是代码标识。 |
| 报告份额 / report share | 报告预算 / report budget | 受限:财政在发布预算中的份额,文字中统一使用 报告份额 与 report share;FiscalReportBudget 和 with_report_budget 保留 budget。 |
| 委托账 / delegation ledger | 委托权限记录 / delegated authority record | 已弃用:0.18.0 把每条委托命令一条的只可创建记录换成了每个命令授权一本带版本的账;DelegatedAuthority 仍是记录名。 |
| 已退役请求结果 / retired request outcome | 已退役请求 / retired request;退休请求 | 已弃用:超过保留期的带请求标识的命令请求统一使用 已退役请求结果 与 retired request outcome;退休目标 / retired target 仍是文化术语,已清退条目 / cleared entry 仍是知识术语,RequestOutcomeRetired 是代码标识。 |
新增或重命名公开概念时,应在同一改动中更新仓库术语表和本页的中英文版本。只有在对应的专题页面已经存在时才添加链接;在此之前,本术语表本身就是该词的公开定义。