Skip to content

[CACHING-SESSION-REVOKE-AFTERCOMMIT-DEL-01] Hard-化 + Revoke caller-in-tx guard #1615

Description

@ghbvf

源自 PR #1613(#796)内置 review。

F3(Medium→Hard 路径):CACHING-SESSION-REVOKE-AFTERCOMMIT-DEL-01 当前 Medium(archtest type-aware callee 解析 + AST 位置包含判断「cache 写仅许在 RegisterAfterCommit hook 内」;有 helper-one-level / TypesInfo==nil 盲区)。Hard-化路径 = sealed construction,使「Revoke 体内 out-of-hook 的 cache 写」在 type system 层不可表达(如 CachingSessionStore 的 cache 字段只暴露一个「仅可在 after-commit hook 内调用」的 sealed handle)。

D2(Revoke caller-in-tx guard):CachingSessionStore.Revoke 经 RegisterAfterCommit 要求 ambient RunInTx,否则 panic(kernel-sanctioned programmer-error,loud 非 silent)。当前唯一生产 caller = sessionlogout(in-tx)。新增 archtest 验证所有 session.Store.Revoke 生产 caller 在 RunInTx closure 内,把 runtime panic 提前到 CI(Medium,caller-allowlist 或 data-flow)。

触发:CachingSessionStore.Revoke 出现第二个生产 caller 时优先级升 P2。

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-tooling元数据治理/archtest + codegen/工具链backlogBacklog item — automation trigger 入 projectpri-p3Priority P3type-feat新功能

    Projects

    • Status
      In review

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions