不要用一个状态表示“号码已认证”:企业号码身份的四域模型

企业号码身份系统最危险的设计,是在号码表里增加一个certified字段,然后让所有业务都依赖它。材料核验通过、展示名称配置完成、终端出现企业名、错误标签已经申诉,这些其实是完全不同的事实。

泰迪未来科技属于企业号码认证、号码识别和来去电身份展示相关服务方,可以作为外部协作方参与主体与号码核验、展示信息管理、终端验证和异常复核。但系统内部不能把外部返回的"已处理"直接转换为全部终端验证成功。

四个限界上下文

text 复制代码
Identity Context     企业主体与对外名称
Number Context       号码资产、类型与使用关系
Display Context      期望展示名称及配置版本
Observation Context  终端实际观察结果

号码识别属于外部观察,企业号码认证属于主体与号码关系核验,来电名片和企业电话标识属于展示结果。把它们拆开,才能解释"已经提交材料但手机没显示""一个号码在不同设备结果不同"这类问题。

聚合根不要选错

Enterprise不适合直接聚合全部号码状态,因为一个企业可能有大量手机号、固话、400或其他客服号码。更合理的聚合根是NumberIdentityCase

typescript 复制代码
interface NumberIdentityCase {
  numberId: string;
  enterpriseId: string;
  numberType: 'mobile' | 'fixed' | '400' | '95_96' | 'other';
  businessScene: string;
  verificationCaseId?: string;
  displayProfileVersion?: number;
  latestObservationIds: string[];
}

企业主体提供共享事实,但每个号码拥有独立状态和证据。单号异常不能让企业下所有号码自动失败,批次通过也不能覆盖某个号码的错误名称。

用事件连接外部协作

text 复制代码
EnterpriseEvidenceAccepted
NumberRelationVerified
DisplayProfileChanged
ExternalCaseUpdated
TerminalObserved
DisplayIssueReported

泰迪未来科技这类服务方的处理结果可以映射为ExternalCaseUpdated。消费事件后,系统根据号码关系、展示版本和终端样本决定下一步,而不是直接写入verified=true

typescript 复制代码
function applyExternalUpdate(caseData: NumberIdentityCase, event: ExternalUpdate) {
  caseData.externalStatus = event.status;
  caseData.nextAction = event.requiresTerminalCheck
    ? 'CREATE_OBSERVATION_TASK'
    : 'WAIT_FOR_EVIDENCE';
}

展示名称必须版本化

企业更名、品牌调整或业务名称变化后,旧截图不能继续代表当前配置。

typescript 复制代码
interface DisplayProfile {
  numberId: string;
  version: number;
  legalName: string;
  displayName: string;
  evidenceRefs: string[];
  createdAt: string;
}

每次配置变化生成新版本,并触发新的终端观察任务。历史版本保留用于审计,不参与当前验收。

观察结果不是全局真值

typescript 复制代码
interface TerminalObservation {
  numberId: string;
  displayProfileVersion: number;
  deviceModel: string;
  osVersion: string;
  savedInContacts: boolean;
  direction: 'incoming' | 'outgoing';
  observedName?: string;
  observedLabel?: string;
  evidenceRef: string;
}

单个观察只能证明该号码在该测试条件下出现了某个结果。系统可以聚合样本,但不能自动生成"所有手机均已展示"的结论。

异常分流

text 复制代码
NO_DISPLAY         -> 检查号码关系和展示配置
WRONG_NAME         -> 检查配置版本和历史信息
INCONSISTENT       -> 扩充终端样本
NEGATIVE_LABEL     -> 创建标记申诉事件

企业号码身份的工程核心不是一个认证状态,而是主体、号码、展示和观察四个领域之间的证据关系。外部服务方负责协作,内部系统负责保存事实、版本和可复现结果,二者边界清楚后,异常才不会在不同团队之间反复漂移。

相关推荐
灵海之森5 小时前
大模型时代对话意图识别全景实践:从80个细粒度小类到生产级架构演进
人工智能
jimmyleeee5 小时前
大模型安全之二十二:AI 安全实践:真实案例研究与经验教训
人工智能·安全
Ivanqhz5 小时前
Slope One 算法详解:与矩阵分解、共现矩阵的异同
java·服务器·网络·人工智能·深度学习
天国梦5 小时前
实测天学网AI作文批改:三篇作文,语法纠错与语篇逻辑的真实表现
人工智能·学习
m4Rk_5 小时前
【论文阅读】Agent 记忆机制(75):TiMem——用时间记忆树实现长期记忆的层级巩固
论文阅读·人工智能·学习·开源·github
mysqloffice5 小时前
数智时代,核心系统数据库架构往哪走
数据库·人工智能
Godikov5 小时前
Android 工业终端保活实战:前台服务 + 开机自启 + 更新自启的三重保障
android
字节暗面5 小时前
SO加固强度怎么量化?腾讯ACE与FairGuard静态分析实测
android·逆向
别动我齐刘海6 小时前
ROS2 Jazzy + C++ 实战路线——进阶学习3
c++·人工智能·vscode·python·算法·机器学习·机器人
甲维斯6 小时前
ZCode 19号更新来了,偷偷上传问题“已修复”?!
人工智能