Skip to content

Latest commit

 

History

History
131 lines (113 loc) · 47.4 KB

File metadata and controls

131 lines (113 loc) · 47.4 KB

Pineapple llmdoc 索引

本索引是 Pineapple 持久化文档的全局导航,按分类列出所有稳定文档及其检索路径。

must/

  • llmdoc/must/conventions.md — 跨代码库约定:算子命名、JSON 作为 Apple DSL 与各运行时之间的契约、各运行时副作用注册(Go blank-import / Java static init / C++ PINE_REGISTER_OPERATOR_T)、版本同步(含 pine-cpp kVersion)、codegen 新鲜度、codegen 单向对齐方向(Go 是 source of truth、pine-java/pine-cpp 单向对齐)、测试规范、外部 I/O 安全默认值(LimitReader、全局副作用归属判断、goroutine 与 C++ graceful shutdown 生命周期、pine-cpp 网络客户端必须 MSG_NOSIGNAL)、cross-validate 入口指针、跨引擎能力等价审计维度(含消费点追踪:值存了谁读、读了产生什么可观测输出)、禁止硬编码定量描述(含用户可见文档不写性能倍数、百分比、毫秒绝对值,只写定性判据 + 可复现 benchmark 入口)、InputFieldSpec 三态模型(Nullable/Strict/Defaulted)、operator-level debug 三态继承。

overview/

  • llmdoc/overview/project-overview.md — Pineapple 是什么、系统边界在哪里,以及 Apple DSL 声明层 + Go / Java / C++ 三运行时拆分的设计决策(含 pine-python 运行时已于 v0.9.7 后移除、资源数据型/句柄型区分、pine-go Lua 后端 build-tag 选择默认 wangshu/-tags=lua_gopher opt-in gopher-lua);包含各运行时 CLI/HTTP 入口点(含 pine-cpp server timeout / max-body-size / dag-pool-size / shard-pool-size flag)。

architecture/

  • llmdoc/architecture/dag-engine.md — 核心引擎架构:配置编译流水线、DAG 推导规则(三标记 + auto-inject 模型:ConsumesRowSet/MutatesRowSet/AdditiveWritesRowSet 标记与 item 字段自动注入)、调度模型、DataFrame 语义(含 InputFieldSpec 三态模型:Nullable/Strict/Defaulted)、算子类型约束、行集依赖行为,以及引擎级 option / 根级配置注入(含 debug nullable 三态继承)、Server struct 生命周期与 context 传播、服务端 reload 集成与 HTTP middleware 包装边界、双通道运行时观测、ExecutionError/PanicError 因果链(三运行时 cause chain parity)、资源数据型(snapshot 导出)/句柄型(borrow 借用,如 redis_connection)区分、Pine-Java 完整功能对等描述、接受的跨引擎设计差异归档(如 issue #91 Lua VM pool 上限/GC 回收语义不对等:指标层 5 元组对等 + 端到端 calibrated 持平 + 生产无 OOM 痛点 + 跨语言机制无可移植近似 → 接受差异,重启触发条件为生产 RSS 单调爬升数据;issue #169 Java routeHandler 抛/返回二分 vs Go 统一 err 传 Egress)、跨运行时 operator-visible input 排除集合契约(值访问、init 字段名元数据、debug/trace 快照三个消费面,issue #174)。
  • llmdoc/architecture/apple-compiler.md — Python DSL 架构:Flow 声明 API、SubFlow 契约声明与编译期强制(common_input/common_output/item_input/item_output 在 issue #78 落地为 subtree-scoped 字段覆盖 + 死代码校验,未声明契约的 SubFlow 自动继承外层;required_resources 沿用 issue #37 校验)、编译流水线(含 step 8b _validate_subflow_contracts)、校验规则(含 validate_write_without_readAdditiveWritesRowSet 算子的同字段豁免,issue #72)、控制流降级(含 _rename_field Lua _G[] 语法处理)、资源声明处理、根级配置字段扩展路径(如 storage_modelog_prefixdebug),以及 row-set 标记三元组(consumes_row_set / mutates_row_set / additive_writes_row_set)通过 apple_generated/markers.py 表填充 OpCall、True-OR widen 合并语义、_apply_add_op 的刻意非对称(仅 consumes_row_set 暴露给 DSL 调用点)。
  • llmdoc/architecture/pine-cpp-runtime.md — Pine-C++ 运行时架构:作为标杆运行时的定位、错误/fixture parity 契约、CLI 与 HTTP 入口(含 HTTP/1.1 keep-alive / read-header-timeout / idle-timeout / max-body-size / middleware / graceful shutdown / 客户端断连取消 eventfd 零延迟唤醒 / custom Route 与 Watch 的"黑盒行为对等、实现结构自由"决策——不做 Go/Java 嵌入 API、可测校验逻辑抽 socket-free routes.cpp)、codegen 入口(-schema-json schema 导出 + -output 发射完整 Apple DSL 产物集与 Go/Java 字节级一致 + -doc-dir 发射算子文档 markdown 与 pine-go byte-equal、OperatorSchema.metadata 字段显式声明、format_g 对 |d| > LLONG_MAX 的 UB 守卫与 Ryu/Grisu 路由点、ResourceSchema 全局注册表与 reset_resource_schema_registry/reset_all_resource_registries 拆分语义)、metrics::Providerresource::Manager 对等(ResourceValue 数据 Variant XOR 句柄 shared_ptr<void> 双通道,数据型走 snapshot()、句柄型走 borrow(),RAII 拆除)、Frame 多态基类 + ColumnFrame/RowFrame 双物理实现(C++23,per-call 锁形态与 Go/Java 对齐、pine::SharedMutex 备件)、Column 类型层级、PINE_REGISTER_OPERATOR_T 注册模型、ValidateOutput 类型约束、NaN/Inf 校验、PanicError stacktrace、外部 stop_token 取消、ready-queue DAG 调度器(双隔离线程池 + in-degree 原子追踪)、observe_log/pine-debug 日志、Redis client 失败收敛与 SIGPIPE 守卫(MSG_NOSIGNAL + AUTH/SELECT close fd)+ per-command 指标 run_command<T> 模板(错误类型分层 known follow-up)、OperatorOutput 缓冲区复用(node_bodythread_local 而非对象池——ready-queue 不迁移半完成节点故省掉 Get/Put 记账;acquire 与 node body 尾部两侧都 reset,承重的是尾部那次(在 try/catch 之外、成功与抛异常都覆盖),acquire 侧现为 defence in depth;reset()clear() 保住 heap capacity 并对超 kRetainLimit 的容器释放;spine 上限不含元素 payload,issue #122)。

guides/

  • llmdoc/guides/standard-workflow.md — 标准工作流程:llmdoc 加载、plan mode 对齐、任务跟踪、逐步验证、文档同步、review-driven scope expansion 接受、并行 worker 改动收集(worktree diff→apply 收集模式 + 新公开入口/状态机修复需重扫整个状态机:可达性、并发交错、发布顺序 + 新公开入口上线后审计既有全局状态的归属:sync.Once/静态 CAS/System property/全局 setter 在多实例下该属于谁) + 示例代码的契约要求:examples/ 受全部生产契约约束、文档命令须真实执行过、冒烟覆盖负空间(含正面案例:pine-go/benchmarks/ 是独立 module,实测才拦住 cd pine-go && go test ./benchmarks/ 这条错误复现命令)、示例纳入默认构建防 rot;另含三条硬规则:临时改动/mutation 期间禁用一切 git 恢复只用文件级备份 cp(取代并加强旧建议 git checkout <base> -- <file>,同型事故第二次)、git add <file> 是单域隔离纪律的粒度漏洞(同一文件承载多域改动时先做完一件再提交,混了用 reset --soft + 备份逐次施加补救)、动长期无人维护的文件要预期承担整文件既存 lint 债(pre-commit 是 staged-file 粒度非 diff 粒度,清理单独 commit)。
  • llmdoc/guides/ci-quality-baseline.md — CI 工程质量基线:lint(含 Java checkstyle failOnViolation=true + OneStatementPerLine;C++ cpp-lint job 实际只做 -Werror 严格构建 + whitespace/tab/结尾换行卫生 + 相邻字面量拼接排查,clang-format 无 CI job、纯本地约定)/ test / coverage / fuzz / differential-fuzz(含新增 fuzz 维度必须验证信号到达比对面:有效可见率 vs 形状出现率、flow_contract 投影盲区教训、red-before/green-after 验证配方、mutation 验证两步判据:先证明 mutation 真的改变了被测语义再判断测试有没有牙,「测试没红」的第一解释是 mutation 无效——vector = {}operator=(initializer_list)assign() 从不缩容、与 clear() 容量语义等价,须用真移动赋值) / daily sanitized-fuzz(ASan/TSan 深度诊断,与 nightly Release 10k 轮吞吐互补,--time-budget-seconds 内层 pacing + 外层纯 hang 保护两层 timeout 设计) / cross-validate / nightly cross-runtime benchmark / release-gate 架构与接入约定(含 pine-cpp 的 4 个 CI job 与 cross-validate cpp 二进制注入路径),统一任务入口 Makefile 体系(顶层 + pine-go/ Makefile 封装跨四语言 fmt/lint/test/bench/codegen/版本管理,CI 与本地共用同一命令序列、make bench 默认 pine_bench tag),CI apt 依赖安装约定(scripts/ci-apt-install.sh 重试 wrapper + 包清单瘦身,防慢镜像单发击穿,历史 #125/#164),以及本地 .githooks/ 体系(pre-commit staged-only 格式 gate + pre-push 工程级 lint + 自包装 CI watch)、differential-fuzz artifact triage playbook:末端错误常是下游放大点、从 pipeline 尾部向前截断定位真实 frame 分歧 op。
  • llmdoc/guides/investigation-to-fix-testing.md — 从调查到修复的测试策略:按缺陷类型选择测试层、最小修复面原则、跟进上游 issue 与临时止血方法论(跨 issue 根因归属不顺 follow-up 措辞、临时止血阈值用 probe 实测标定)。
  • llmdoc/guides/cross-layer-validation.md — 跨层语义校验:JSON 边界类型枚举、codegen 语义验证(含跨引擎 markdown / Python 产物 byte-equal gate)、边界值 E2E、隐含 metadata 契约检测、扩展点对等验证(能力等价 + 编程扩展点的 demo-routes 黑盒验证模式 + 执行路径可观测副作用增量比对 + 可选测试臂 fail-closed)、fixture 比对器语义决定该层能钉住的属性(值级对等 vs 类型身份的分层边界,层边界应显式写下)。
  • llmdoc/guides/benchmark-hygiene.md — Benchmark 噪声卫生:跑前/跑后 load 与残留进程检查、同日同机对照纪律、±5-7% 二进制布局噪声与 perf stat 交叉验证、calibrated stddev 33-36ms 来源校准(DAG 调度抖动 + LuaJ JIT warmup + 网络抖动主导,GC pause 非主要源)、fixture 代表性(calibrated 为性能决策唯一裁判)、合成 guardrail fixture 与 calibrated 的分工(transform_heavy_1000 钉死 storage_mode: column 补列存批量列访问路径无 nightly 守护者的缺口,只守「整体崩了」量级、细粒度回归归 BenchmarkStorageAB_TransformHeavy_*,其 delta 不得作为收益声明;issue 标题措辞不是规格——#160 标题误写 calibrated)、把 in-process microbench 形状搬成 e2e fixture 要重查投影/序列化段(空 item_outputprojectMap 投影成 {}、抹掉序列化成本、transform 链变死写入)、microbench 访问模式戒律、逐 op 删除归因法、测量路径对称性(PureVM vs CallOnly vs Boundary 不可互推)、用户可见文档不写性能倍数只写定性判据 + 可复现入口。

reference/

  • llmdoc/reference/operator-contract.md — 算子开发参考:接口、Schema 注册契约、批量列访问 API 契约(ItemColumn/itemColumn/item_column 三引擎对照、与逐元素 Item() 含 defaults 语义一致、只读/仅当次 Execute 有效、扫描型热循环优先批量)、批量列写 API 契约(SetItemColumnFloat64/setItemColumnDouble/set_item_column_double、stage 2b 顺序语义列写覆盖逐元素写、整列或全无、NaN 批量校验消息对等、列存 adopt 零拷贝/行存 scatter、所有权转移)、可选的 metadata/debug/logger/metrics/stats 钩子、算子日志规范(LoggerAware 三引擎入口 + 引擎实例级 log_prefix + 用户可控字符串绝不拼进 printf 格式串)、类型/输出限制、保留 JSON 键、命名规范、网络调用安全约束(SSRF 防护、LimitReader、fail_on_error 模式)、Redis 算子句柄型资源借用契约(transform_redis_get/transform_redis_setresource_name 借用 redis_connection、借用失败静默降级;redis_connection cascade-safety 五参数:{dial,read,write,pool}_timeout_ms + pool_size、Jedis socketTimeout 折叠 max(read,write)、cpp pool_timeout_ms no-op;metrics_name 资源级指标开关;failed-path 静默降级审计契约——新增 client/资源失败路径必须走完 fail_on_error=false → connected()==false 链路)、Lua bridge 标量分派必须用真实类型标签而非 coercion 谓词(luaj is* = coercion vs gopher-lua/wangshu = 标签,issue #175)、Lua pool baseline reset 仅覆盖字符串键 globals 契约(wangshu godoc 权威表述、三运行时一致、issue #177 修 Java snapshotKeys coercion 谓词残留)。
  • llmdoc/reference/apple-control-template-syntax.md — Apple DSL 控制流条件参考:if_ / elseif_ 需要使用 {{field_name}} 模板语法显式标记字段引用,编译器据此提取依赖并在发射 Lua 前去掉模板标记。
  • llmdoc/reference/metrics-observability.md — 可插拔观测参考:跨运行时 Provider 契约(pine-go 规范 + pine-cpp/pine-java 对等)、引擎/调度器/Lua pool 指标注入、/stats 组合响应(含 /stats.http/stats.resources 子树 schema)、内置 HTTP metrics middleware(各运行时 default-on)、资源级指标 fan-out(Tee)路由与 Collector 契约(4 个连接池/探针指标 + 2 个 per-command 指标 pine_redis_command_*、status taxonomy ok/timeout/pool_timeout/error、lifecycle 命令过滤、cpp 错误类型分层 known follow-up)、Prometheus 适配边界。
  • llmdoc/reference/dag-visualization.md — DAG 可视化参考:RenderDAG / WithCollapse API、SubFlow 折叠规则、GET /dag 参数与 DOT/Mermaid 输出约定。
  • llmdoc/reference/admin-pprof-disclosure.md — pine-go 可选 admin server 的 pprof 暴露面、默认关闭契约、五条 /debug/pprof/* 路径的信息泄漏内容、运维约束(网络层隔离/认证反代/诊断窗口)与跨 runtime 对等(pine-cpp/pine-java 不实现 admin pprof)。
  • llmdoc/reference/lua-backend.md — pine-go Lua 后端选择参考:build-tag 极性(默认 !lua_gopher = wangshu / opt-in lua_gopher = gopher-lua,wangshu 下限 v0.2.0)、Backend/Pool/Engine 三层抽象、wangshu 双向 pin 所有权边界 API(返回值方向 CallInto/dst 复用契约 + 入参方向 SetGlobal/NewTable 灌复合值必须 Release,否则随 QPS 线性泄漏)、内存模型与 GC 触发点(safepoint 仅 opcode 路径 / 宿主 API 不触发 GC、auto-GC pacing 缺口与 host-triggered collect(#100/wangshu#9 已解,v0.2.0-rc3 MaybeCollectNow 替代旧 cadence-sweep workaround,maintainer 推荐 direction 2 因 direction 1 对 host 不安全)、arena 高水位形态分两 case(#105/wangshu#11 partial:collector sweep 完自动 Arena.Compact() 把 cap 缩到 max(bump, 64 KiB),transient peak 自愈;但 bump 不回退、GCRef 不 remap、sustained-fat live set 仍 latch、full copy-compact 留作 follow-up 不会在 v0.2.0 系列到来;InitialArenaBytes/MaxArenaBytes dead-param 与 State.ArenaCapKB() 真高水位 API 均已激活)、三/四态内存判据(pin 单调增=真泄漏 / arena 字节滞后=可自愈 / (c1) backing slab transient peak=Compact 自愈 / (c2) sustained-fat latch=不自愈需 drop)、GCCountKB=bump−freeBytes 活跃量语义陷阱(非高水位、注释口径分叉、v0.2.0-rc3 起 drop 判据应用 ArenaCapKB 真高水位 sweep 后采样)、drop-fat-state 止血契约(判据从 GCCountKB 迁移到 ArenaCapKB、post-MaybeCollectNow 采样超 arenaDropThresholdKB 则不回池让 runtime 回收 fat backing slab、判据迁移副产品是旧"采样必须早于 sweep"顺序耦合天然消失、阈值 1024 KB = 16× 64 KiB initial 含义从活跃量代理变为 post-Compact cap、dropFatCount 内部计数器))、非字符串 key 错误对等(fromValue/tableToGo 返回 (any,error)、与 gopher-lua 字节级一致、cross-validate Section 5 断言)、pool 5 元组计数器与不变量(borrow_count == reuse_count + (create_count - 1))、双层 warm/sync.Pool 复用模型、baseline 重置契约(含 closed-branch 跳过例外)、Arena 列轨 ABI(已评估未采用的零拷贝备选边界通道 + makeArrayTable 顺序 append(wangshu#10 已修 v0.2.0-rc3:根因是 arena LARGE freelist 单链 first-fit 而非 rehash 风暴,修复为 power-of-2 size-class buckets + NewArrayTable/Preallocate 辅助 API;下游 makeArrayTable 已切 NewArrayTable、空数组 fast-path 走 NewTable))、scripts/bench-lua-backends.sh 后端对比入口。

memory/(顶层文件)

memory/ 下有 reflections/decisions/ 两个子目录(各自分节列在下方),以及下列直接位于顶层的文件:

  • llmdoc/memory/doc-gaps.md — 跨任务累积的文档与质量检查缺口跟踪(已确认存在、不属任何单次任务、需单独排期决策的条目;与 reflections「单次任务教训」和 decisions「已定下的取舍」分工):clang-format 无 CI job(cpp-lint 只做 -Werror + 卫生检查 + 字面量拼接排查,格式仅由可绕过的本地 pre-commit hook 守,待决策是否加 fmt-check job 并锁版本)、projectMap 空列表投影语义在 fixture 编写视角无落点(同一陷阱已三次现身,待决策是否给 reference/ 加独立契约条目)、issue #179 storage_mode 非法值兜底跨运行时分歧(已知分歧,未修,待决策修还是归档为 accepted difference)。

memory/reflections/

  • llmdoc/memory/reflections/bugfix-six-items.md — 六项缺陷修复与测试补齐的复盘,记录 llmdoc 的有效导航点、缺失信息与可提升为稳定文档的候选项。
  • llmdoc/memory/reflections/fix-output-projection-semantics.md — 输出投影语义修复复盘,记录 None→[] 编码、projectMap 空列表语义、pre-1.0 兼容性立场。
  • llmdoc/memory/reflections/fix-three-small-defects.md — 三项小缺陷修复的复盘,补充控制流校验、source 语义与相关文档检索线索。
  • llmdoc/memory/reflections/ci-quality-lint-coverage-fuzz.md — CI 质量基线补齐的复盘,涵盖 lint、覆盖率产物、fuzz 入口选择与 codegen 目录边界。
  • llmdoc/memory/reflections/fix-empty-trace-on-dag-abort.md — DAG 中止时 trace 空条目修复复盘,记录预分配零值过滤、文档同步经验。
  • llmdoc/memory/reflections/fix-control-field-pollutes-redis-key.md — if_ 控制字段污染 Redis key 修复复盘,记录两层过滤策略与 design_doc 假设验证。
  • llmdoc/memory/reflections/fix-ci-lint-v2-release-gate.md — CI lint v2 迁移与 Release 触发机制两轮修复复盘:从复制检查到 workflow_run 依赖,记录 workflow 隔离模型认知演进。
  • llmdoc/memory/reflections/bench-lua-vs-go-performance.md — Lua vs Go 原生算子 benchmark 复盘,记录端到端测试下 VM 开销被引擎框架稀释的发现,以及预估偏差反思。
  • llmdoc/memory/reflections/isolated-bench-and-resource-ops.md — 隔离 benchmark 与资源消费算子复盘,记录引擎框架稀释效应量化、BuildOperator 暴露、inventory 幻觉教训。
  • llmdoc/memory/reflections/dag-visualization.md — DAG 可视化功能复盘,记录模块放置、OperatorType 编译时填充依赖、文档同步经验。
  • llmdoc/memory/reflections/resource-config-hot-reload.md — 资源配置热加载复盘,记录原子替换 Manager 策略、跨包测试 helper 导出教训、所有权区分简化。
  • llmdoc/memory/reflections/dag-viz-transitive-reduction-and-layout.md — DAG 可视化传递性归约与纵向布局复盘,记录渲染层归约策略(已被执行图归约取代)。
  • llmdoc/memory/reflections/execution-graph-transitive-reduction.md — 执行图传递性归约复盘,记录归约从渲染层下沉到 Build() 阶段的决策、测试直接边断言的教训。
  • llmdoc/memory/reflections/column-store-dataframe.md — 列存 DataFrame 实现复盘,记录 Frame 接口抽象、[]any 设计选择、benchmark 数据与适用场景分析(其"持平"结论已被 column-vs-row-parity-investigation.md 深化解释)。
  • llmdoc/memory/reflections/apple-dsl-storage-mode.md — Apple DSL storage_mode 支持复盘,记录根级配置扩展模式与文档同步教训。
  • llmdoc/memory/reflections/control-op-explicit-naming.md — 控制算子显式命名复盘,记录从 transform_by_lua_HASHif_1/else_N 的改进动机与实现。
  • llmdoc/memory/reflections/fine-grained-frame-concurrency.md — Frame 并发自治复盘,记录调度器全局锁下沉到 Frame 内部、双锁→单锁回退决策、cache line 膨胀教训。
  • llmdoc/memory/reflections/remote-pineapple-operator.md — transform_by_remote_pineapple 算子实现复盘,记录同包 helper 重名、工作流遗漏、测试 API 误用教训。
  • llmdoc/memory/reflections/data-parallel-framework.md — 算子级数据并行框架复盘,记录 Transform-only 设计收敛、common_output 禁止决策、上下文管理教训。
  • llmdoc/memory/reflections/apple-dsl-data-parallel-validation.md — Apple DSL 侧 data_parallel 编译期校验复盘,记录保留字段提取、校验接入、哈希命名漂移教训。
  • llmdoc/memory/reflections/concurrent-safe-opt-in.mddata_parallel 并发安全模型改为 ConcurrentSafe 显式 opt-in,记录能力检查下沉到 Go 引擎实例层、Apple 仅保留结构校验,以及 blocklist 漂移问题的收敛。
  • llmdoc/memory/reflections/test-coverage-server-transform.mdpkg/serveroperators/transform 测试覆盖率补齐复盘,记录 handler 直测、原子指针注入、miniredis 模式与不测边界。
  • llmdoc/memory/reflections/review-driven-resource-lookup-fixes.md — 评审驱动的 resource_lookup 修复复盘,记录 JSON 边界类型枚举、codegen 语义验证、跨层 E2E 与隐含 metadata 契约检查的缺口。
  • llmdoc/memory/reflections/recurring-errcheck-ci-failure.md — errcheck CI 失败复现复盘,记录已有警告未生效根因与标准工作流强化方案。
  • llmdoc/memory/reflections/global-log-prefix.md — 全局日志前缀功能复盘,记录 root-level log_prefix 扩展路径、标准库全局 logger 约束,以及首版遗漏 Lshortfile 的教训。
  • llmdoc/memory/reflections/nested-subflow-multi-skip-design-gaps.md — nested SubFlow multi-skip 设计缺口复盘,记录单路径思维、IR 原地变异非幂等性、声明期/编译期字段名漂移三类遗漏根因与防范方法。
  • llmdoc/memory/reflections/deep-risk-audit-post-v061.md — v0.6.1 后深度风险审计复盘,记录 server reload 一致性、Lua pool 生命周期、data_parallel 可重入等运行时操作健壮性缺口。
  • llmdoc/memory/reflections/buildinput-sparse-fix.md — BuildInput 稀疏语义修复复盘,记录 missing vs explicit-nil 边界、row/column parity 与文档纠偏点。
  • llmdoc/memory/reflections/security-audit-fixes.md — 安全与正确性审计修复复盘,记录 Lua 沙箱白名单、PanicError 信息分级、Registry 严格参数、HTTP 超时加固、控制流声明期校验等决策。
  • llmdoc/memory/reflections/medium-severity-audit-fixes.md — 第二轮中等严重度审计修复复盘,记录 Server struct 重构、watchConfig 生命周期、SSRF 防护模型、LimitReader 安全默认、Redis 错误透传模式。
  • llmdoc/memory/reflections/pine-java-full-implementation.md — Pine-Java 从零到 Schema 独立的完整实现复盘,记录双独立源决策、cancelLatch 模式、命名延迟成本、三层交叉验证架构。
  • llmdoc/memory/reflections/pine-java-audit-parity-rounds-3-4.md — Pine-Java 第三/四轮 Go-parity 审计复盘,记录 CancellationToken、DebugAware/MetricsAware 注入、NopProvider、Lua pool 目标清理策略、"accepted design difference"流程教训。
  • llmdoc/memory/reflections/pine-java-audit-round5-fixes.md — Pine-Java 第五轮(最终)Go-parity 审计复盘,记录 34 项差异处理(20 fix Java/3 fix Go/9 accepted/5 platform)、Lua pool baseline snapshot 策略演进、GoFormat 跨算子抽象、独立重审发现第四轮回归的教训。
  • llmdoc/memory/reflections/pine-java-audit-round6-fixes.md — Pine-Java 第六轮 Go-parity 审计复盘,记录 19 项差异处理(14 fix Java/3 fix Go/2 accepted)、GoFormat 统一为跨算子格式化单一事实源、ResourceRegistry codegen-time 模式、前轮"已验证"项回归教训。
  • llmdoc/memory/reflections/pine-java-parity-rounds-7-8.md — Pine-Java 第七/八轮 Go-parity 审计复盘,记录 CancellationToken parent-child 层级隔离、ResourceAware 编译期注入、GoFormat 1e6 阈值修正、Throwable 结构化包装四项核心修复与注入时机设计教训。
  • llmdoc/memory/reflections/pine-java-parity-round-9.md — Pine-Java 第九轮 Go-parity 审计复盘,记录 OperatorException checked 边界(error vs panic 映射)、CompletableFuture 事件驱动调度器、GoFormat 边角(Infinity/List/小数阈值)、Server 响应体对齐,以及 fixture-based 格式化验证缺位的教训。
  • llmdoc/memory/reflections/pine-java-parity-round-10.md — Pine-Java 第十轮 Go-parity 审计复盘,记录约定引入未全扫描导致的清扫轮、IEEE 754 -0.0 符号位跨运行时差异、JSON key 排序确定性、验证消息类型信息缺失教训。
  • llmdoc/memory/reflections/pine-java-parity-round-11.md — Pine-Java 第十一轮 Go-parity 审计复盘,记录 applyOutput 错误分类 cargo-cult 简化、wire format 警告前缀与 item 索引遗漏、debug 日志计数对象错误,以及 parity gap 收敛信号(仅 4 项)。
  • llmdoc/memory/reflections/pine-java-parity-round-12.md — Pine-Java 第十二轮 Go-parity 审计复盘,记录类型违规 OperatorException 边界遗漏、ParallelExecutor 错误归属占位符、Registry.buildOperator 错误包装缺失、ValidateOutput 格式对齐,以及 OperatorException 迁移长尾效应的再次验证。
  • llmdoc/memory/reflections/pine-java-parity-round-13.md — Pine-Java 第十三轮 Go-parity 审计复盘,记录 TransformResourceLookup OperatorException 遗漏(迁移四轮未清)、GoFormat sprint -0.0 多路径盲区、TransformRemotePineapple handleError 路由语义差异、Engine debug 日志对齐。
  • llmdoc/memory/reflections/pine-java-parity-round-14.md — Pine-Java 第十四轮 Go-parity 审计复盘,记录 GoFormat -0.0 三轮命中全部三条路径(formatG→sprint→formatFloatF)、OperatorException 迁移第五轮仍发现 IllegalArgumentException、Engine.applyOutput 双重包装(简化重构引入新 bug)。
  • llmdoc/memory/reflections/pine-java-parity-round-15.md — Pine-Java 第十五轮 Go-parity 审计复盘,记录 GoFormat.formatFloatF NaN/Infinity 显式守卫(同模块 edge case 第四轮重复验证)、TransformNormalize 错误消息格式对齐,以及审计收敛信号(0 HIGH/2 MEDIUM deferred)。
  • llmdoc/memory/reflections/pine-java-parity-round-16.md — Pine-Java 第十六轮 Go-parity 审计复盘,记录 TransformByLua pool.borrow() null 返回模式(Go error return 映射)、Engine.renderDAG ValidationError 类型迁移,以及 OperatorException 迁移七轮长尾总结与审计正式收敛。
  • llmdoc/memory/reflections/pine-java-parity-round-17.md — Pine-Java 第十七轮(最终轮)Go-parity 审计复盘,记录 6 项 LOW 错误消息措辞对齐(首个零 M/H 轮次),标志 parity 审计从行为修复完全过渡到措辞打磨,审计正式完结。
  • llmdoc/memory/reflections/pine-java-parity-rounds-18-19.md — Pine-Java 第十八/十九轮 Go-parity 审计复盘(最后两轮),记录 8 项 LOW 修复(common-mode CancellationToken 遗漏、错误消息类型/值/引号对齐、trace 微秒精度截断),确认 rounds 1-19 全量审计完结,总计约 90 项差异关闭。
  • llmdoc/memory/reflections/monorepo-restructure-and-java-infra.md — Monorepo 重构(Go→pine-go/ 子目录)与 Pine-Java 工程基础设施补齐(P0-P3 路线图)复盘,记录 llmdoc 路径批量失效教训、module path 破坏性变更影响、路线图驱动基础设施建设的有效性。
  • llmdoc/memory/reflections/p2-refactor-cross-validate-scripts.md — P2 重构 + 跨验证框架扩展 + 开发者脚本基础设施复盘,记录 fixture 路径再次失效、定量描述过时、重构累积效应、工具文档入口缺失四项教训。
  • llmdoc/memory/reflections/pine-python-and-v07-dag-overhaul.md — Pine-Python 第三运行时上线、v0.7 DAG 语义重构(ConsumesRowSet/MutatesRowSet/AdditiveWritesRowSet)、Cross-validate 11 层扩展复盘,记录文档未覆盖新运行时、术语重命名后引用未清理、版本同步范围和跨验证层数硬编码再次过时。
  • llmdoc/memory/reflections/audit-extensibility-blindspot.md — Parity 审计结构性盲点复盘:19 轮审计+11 层交叉验证全部聚焦"函数等价"(已知路径输出一致),从未验证"能力等价"(下游可用的集成模式是否一致),导致 Java middleware 无法拦截未注册路径的问题在下游项目才暴露。
  • llmdoc/memory/reflections/extensibility-parity-tests-and-java-prefix-fix.md — 扩展性 parity 测试与 Java 前缀匹配修复复盘,记录 HttpServer 前缀语义二次修复、cross-validate 12 层扩展、深层路径测试发现 bug 的验证价值。
  • llmdoc/memory/reflections/v072-074-llmdoc-update.md — v0.7.2-v0.7.4 llmdoc 大面积过时复盘,记录 21 commit 跨度下硬编码层数第四次过时、并发模型描述陈旧、CI 参数重复、新能力缺失的系统性原因与防范策略。
  • llmdoc/memory/reflections/dag-implicit-row-set-fix-v080.md — v0.8.0 DAG 隐式行集依赖修复复盘,记录 auto-inject 机制(三标记模型的第四机制)、6 算子 ConsumesRowSet 清理、dag-differential-fuzz 基础设施、文档中"三标记模型"与"可选 ConsumesRowSet"描述过时。
  • llmdoc/memory/reflections/pine-cpp-mvp-to-full-runtime.md — pine-cpp 从 MVP 文档化到完整第四运行时的 34 commit 累积期偏差复盘,记录 MVP 措辞时效性、引擎数量第五次失效、累积心理模型与新核心概念发现路径缺失。
  • llmdoc/memory/reflections/pine-cpp-p1-p2-buildout.md — pine-cpp P1/P2 全运行时建设阶段(18 commit)复盘,记录"上一轮 reflection 未落地是放大器"、跨运行时观测契约表格缺失、CLI flag 作为用户契约的同步要求。
  • llmdoc/memory/reflections/pine-cpp-p3-series-buildout.md — pine-cpp P3-A to P3-D 阶段复盘,涉及 LuaVM StatePool 隔离、StatsProvider/MetricsAware 基建与 remote pineapple SSRF 保护接入。
  • llmdoc/memory/reflections/cause-chain-and-stats-http.md — /stats.http 四方对齐与 cause-chain parity 复盘(9 commits),记录跨语言状态辨识盲区、std::rethrow_if_nested footgun、R2 审计反向修正机制、cross-validate 第二种验证模式(probe binary stdout 对比)。
  • llmdoc/memory/reflections/p2-perf-and-review-driven-fixes.md — P2 性能优化批次与审查驱动修复周期复盘(22 commits),记录 CRTP 注册宏、OperatorOutput 向量化、zero-copy window view、Redis idle bound、progress.md 遗漏增量发现、数据结构级变更需文档同步的教训。
  • llmdoc/memory/reflections/r3-audit-and-fuzz-enhancement.md — R3 parity audit(26+5 项)+ differential fuzz 增强(11 新维度 + 4 引擎接入)复盘(34 commits),记录 Frame 多态化架构变更、C++23 采纳、HTTP/1.1 keep-alive、fuzz 50-round smoke 立即暴露 17 divergence + RawValue 泄漏的 ROI 验证、dual-impl 等价测试覆盖。
  • llmdoc/memory/reflections/differential-fuzz-discoveries.md — 30k-round differential fuzz 发现与修复复盘(7 commits),记录 IEEE 754 -0.0 跨语言 hash/equality 差异、C++ item_defaults 投影时机缺陷、并行 recall+paginate 非确定性的生成器规避策略、cross-validate set comparison 防护。
  • llmdoc/memory/reflections/v090-nullable-strict-apple-desync.md — v0.9.0 Nullable→Strict 翻转后 Apple DSL 契约脱节复盘,记录 JSON 键名 nullable_*strict_* 翻转时 Apple DSL 侧未同步、Strict 模式声明能力丧失、unique_name hash 包含失效字段三项缺口,以及"声明→生效"端到端校验缺失的根因。
  • llmdoc/memory/reflections/dag-ready-queue-scheduler.md — v0.9.2 DAG ready-queue 调度器重写复盘,记录双隔离线程池架构、seed loop 竞态根因(读取 mutable atomic 而非 immutable preds)、eventfd 零延迟唤醒、跨运行时 benchmark 工具链建设,以及 C++ 比 Go 快 60-80% 的吞吐结果。
  • llmdoc/memory/reflections/benchmark-infra-and-cross-runtime-perf.md — Benchmark 基础设施建设与跨运行时性能优化战役复盘(56 commits),记录 fixture-driven benchmark 工具链、四运行时 bench stub 算子设计、C++ PERF-9~18 优化系列(FlatMap/Variant/RapidJSON/jemalloc/arena/bitmap)、Go/Java lazy proxy + bitmap + GOGC=400 优化、profiling 驱动 ROI 验证、Section 8 端口残留修复。
  • llmdoc/memory/reflections/redis-resourcemanager-migration-and-pine-python-removal.md — Redis→ResourceManager 句柄型资源迁移 + pine-python 运行时下线 PR 收尾复盘,记录"难而正确"归属判据(可共享/可声明/配置驱动→ResourceManager,算子私有→Closer)、"Python"双义陷阱、llmdoc baseline 先 fetch 教训、clang-format commit 阶段无 gate、ruleset 无 required_status_checks 核查路径、pre-push 自包装 hook 行为。
  • llmdoc/memory/reflections/resource-metrics-fanout-stats.md — 资源级指标 fan-out 与 /stats.resources 复盘,记录 fan-out(Tee)路由相对 Collector-only/现状的三选一决策、resources 恒存在键作为跨运行时强断言、探针 probe-once-then-tick 便于测试,以及"scope 靠路由而非过滤"两条教训。
  • llmdoc/memory/reflections/bench-lock-optimization-campaign.md — Bench 归因与 Frame 锁优化战役复盘(9 commits),记录 merge_dedup O(N²)→O(N) 修复、op-attribution 归因脚本、fixture 代表性错误(large_5000 误导 vs calibrated 真实场景)、zombie 进程污染整天 bench 数据、microbench 访问模式失真、二进制布局噪声、SharedMutex v1 失败三根因与 v2(Go 协议)备件化、Frame 维持 per-call 锁形态与 Go/Java 对齐的最终决策。
  • llmdoc/memory/reflections/review-driven-build-input-error-ordering.md — 评审驱动的 build_operator_input 报错顺序回归修复复盘,记录锁优化 eab4415validate_strict_items 移出锁窗口致 strict_item 被提到 common 之前、翻转跨运行时首错优先级的静默回归,沉淀"校验顺序/首错优先级属字节级对等契约""error fixture 需覆盖多违反优先级""perf 改动触及校验路径需复核 error-parity"三条教训。
  • llmdoc/memory/reflections/wangshu-backend-callinto-and-default-flip.md — wangshu 后端引入、CallInto 反馈闭环(issue #8 上游 30 分钟采纳)与默认翻转(!lua_gopher = wangshu)复盘,记录测量路径不对等(PureVM 9x vs Embedded 慢 1.7x)、复刻后端漏复刻 backend-specific pool 计数器测试套、calibrated 端到端持平但 boundary-dominated 隔离负载明确胜出的决策模式、refreshLoop counter 前置递增 flaky 根因。
  • llmdoc/memory/reflections/wangshu-pin-table-input-leak-fix.md — wangshu SetGlobal 入参方向 pin-table 泄漏修复复盘(v0.10.0→0.10.1),记录 NewTable 占 pin 槽 / SetGlobal 只拷 GCRef 不接管所有权、cb58e08(返回值方向)与 477dacd(入参方向)是同一 footgun 两面、5 元组计数器不变量钉不住资源泄漏(须直接采样 GCCountKB)、safepoint 仅 opcode 路径致 arena 延迟归还、复刻后端审计须逐边界过资源所有权方向。GCCountKB 在本篇被作为"真实资源量代理"使用的表述已由第三/四篇 reflection 纠偏(实测语义为 bump − freeBytes 活跃量、v0.2.0-rc3 起 drop 判据应用 ArenaCapKB)。
  • llmdoc/memory/reflections/wangshu-rss-growonly-issue105-drop-fat-state.md — wangshu RSS 单调爬升(#105 grow-only latch)与 drop-fat-state 下游止血复盘(wangshu 内存系列第三篇):跨 issue 根因独立判定(#105 与 #100 同源不同根、新提 wangshu#11 而非追评 #9)、GCCountKB 语义陷阱(活跃量非高水位、注释口径分叉)、两 workaround 顺序耦合脆弱点、临时止血阈值用 probe 实测标定。:本篇"backing slab latch 不自愈"笼统判据与"两 workaround wangshu#11/#9 落地后整体移除"论断已由第四篇 reflection 纠偏(v0.2.0-rc3 partial fix 下分 transient peak 自愈 / sustained-fat latch 两子情形、cadence-sweep 真拆但 drop-fat-state 只迁移判据)。
  • llmdoc/memory/reflections/wangshu-borrow-optimization-survey.md — wangshu borrow/边界优化空间调查复盘(纯调查+原型量化,未改生产代码),记录 borrow 层刻意对称是设计、Arena 列轨 ABI 边界口径 -22%(N=100)~-46%(N=3000) 但端到端会稀释+落地破四引擎 parity、makeArrayTable SetIndex 顺序 append O(N²) 建表(已提 wangshu #10)、Boundary 微基准≠calibrated 裁判的口径纪律、非单调性是红旗须先查根因。
  • llmdoc/memory/reflections/wangshu-v020rc3-upgrade-and-workaround-refactor.md — wangshu v0.2.0-rc3 升级与两 workaround 重构 / 拆除 / 判据迁移复盘(wangshu 内存系列第四篇):上游一次回应 #9/#10/#11 三 issue(#9 真等价解 MaybeCollectNow 等三选一 API;#10 真根因解为 arena LARGE freelist 单链 first-fit→power-of-2 buckets,纠正前篇"rehash 风暴"错误推断;#11 partial:Arena.Compact() 解 transient peak、bump 不回退、sustained-fat latch 留作 follow-up),下游 cadence-sweep 真拆 / drop-fat-state 判据迁移(GCCountKBArenaCapKB)/ makeArrayTableNewArrayTable,沉淀两条 rc 升级方法论(必读 issue close comments、workaround 拆除分 root-cause/proxy 判别);本篇覆盖纠偏第三篇 reflection 与稳定文档多处。
  • llmdoc/memory/reflections/redis-cascade-safety-and-observability.md — Redis cascade-safety 五参数({dial,read,write,pool}_timeout_ms + pool_size)三引擎对齐 + pine-cpp Client 失败收敛与 SIGPIPE 守卫 + codegen markdown 跨引擎 byte-equal + per-command Redis 指标(pine_redis_command_* 4-state status)的 PR 复盘(13 commits / 3 轮 review),记录 codegen 单向对齐方向(Go 是 source of truth)、failed-path 静默降级审计契约、单元测试不能替代 byte-equal gate、review-driven scope expansion 接受、cpp 错误类型分层 known follow-up 五条教训。
  • llmdoc/memory/reflections/jdk25-upgrade-and-zgc-investigation.md — 2026-06-26 评估 pine-java 升 JDK 25 + 切 ZGC 的 A/B/C 路径复盘,记录"性能假设要测不要猜"与 deployment-shape vs GC-shape 匹配检查的教训,含 G1/ZGC GC log 实测数据点(G1 max STW 12.82ms 证伪 stddev=GC 假设、ZGC 2C cgroup 下 concurrent 6.7% CPU 偷窃致 −5~7% QPS)。
  • llmdoc/memory/reflections/sanitized-fuzz-time-budget-graceful-stop.md — daily-sanitized-fuzz.yml ASan pass 连续 8/10 天被内层 timeout 杀死复盘,记录 all-or-nothing 全损结构缺陷(不管差多少轮,超时即全部作废)、预算标定须用观测窗口内 worst 实测而非快日均值标定(快慢日方差达 55%)、长时任务 timeout 应分内层 pacing(--time-budget-seconds 优雅降级、保留 Results: 部分覆盖信号)/ 外层纯 hang-protection 两层、"若 X 再现则走 Y"式观察窗口决策树若无 owner 跟进执行则形同虚设四条教训。
  • llmdoc/memory/reflections/column-vs-row-parity-investigation.md — 列存 vs 行存性能持平调查复盘(2026-07-07,pine-go 调查 + 同日三引擎实现 fbf2ef7/bf7ce0b/95a3000),记录三层根因(逐元素 Item() 接口税 27x 第一性、ColumnFrame 三处行主序热路径、负载形状由列存劣势操作构成)、A/B 数据(BuildInput 列存 53μs→3.9μs、transform-heavy e2e 列存 +30%)、三引擎批量列访问 API 形式对照与验证结果(cross-validate + 120 轮 fuzz 零 divergence + coverage 背书)、实现阶段教训(spec 裸指针生命周期、覆盖要量化不要感觉、flaky divergence 先排环境、样板对齐不等于逐行照抄、翻译残留死代码)与 row/column 使用判据;含第二阶段 typed columns 实现记录(issue #156 / PR #162)与第三阶段批量列写实现记录(issue #157 / PR #163,写侧 profiling 归因 ~24% 过闸门、列存 allocs -66%、Go 批量路径 any 装箱税教训、新写路径六消费点清单)。
  • llmdoc/memory/reflections/ci-apt-resilience-and-dead-weight-packages.md — 修复 apt 慢镜像二次击穿 CI(#125→#164)复盘,记录单发安装+整段超时结构性缺陷需重试层而非更大超时数值(判据:失败模式重试后是否大概率自愈)、死重包(cmake/ninja-build/build-essential)放大慢镜像暴露面 10 倍(15.7 MB vs 实需 ~1.5 MB)、依赖断言(cmake --version)比隐式依赖预装更健壮、go native fuzz "context deadline exceeded" 且无 crash corpus 文件即为 coordinator flake(应 rerun 而非误判为真实发现)四条教训。
  • llmdoc/memory/reflections/wangshu-v020-stable-bump-dual-module-miss.md — wangshu rc5→v0.2.0 正式版 bump(PR #166)复盘,记录手工 go mod tidy 漏掉 pine-go/benchmarks/ 独立子 module(应走 make tidy 双 module 封装入口,绕开手工命令即绕开该保护)、CI 失败后应先扫 PR review bot 评论再挖日志(bot 诊断早于且更完整)两条教训;rc→stable 升级审计三件套(逐 commit 审上游 diff / go.mod 哈希对比证模块定义等价 / 双 tag 测试)本次做对,作正面对照记录。
  • llmdoc/memory/reflections/upstream-serverplus-custom-routes.md — 下游 serverplus 上游化复盘(issue #169 / PR #170,跨运行时自定义路由 / Watch 开关 / 嵌入 API),记录 demo-routes 黑盒验证模式、错误文案设计期锁定、C++ 有意不做嵌入 API、Java 错误模型二分接受四项决策,以及 worktree 改动搬运误判、新入口暴露旧状态机 bug(stop 后 acquireSnapshot 自旋)、mvn 诊断链三坑等教训;含第二轮深度 code-review 修复记录(8 项问题:body limit 绕过、ServeMux pattern 陷阱、Addr 默认值回归、stop/reload 竞态、C++ stats 旁路、fail-open 测试臂等)与第三轮增量审查修复记录(C++ 锁窗口回归、Java skip 绕过、文档事实纠错、数量硬编码再犯)及第四轮竞态检查有效性修复(check [10] 须证明请求/reload 重叠而非假设、共享配置文件的跨臂计数污染)。
  • llmdoc/memory/reflections/per-engine-log-prefix.md — log_prefix 从进程全局改为引擎实例级复盘(issue #172 / PR #173),记录三引擎三种错误形态(Go sync.Once first-engine-wins / Java property 无消费者 / C++ 成员无消费者)的消费点审计盲区、LoggerAware 三引擎注入设计、Go calldepth 逐层推导与 Java printf 格式串注入两处 review 命中缺陷;第四轮补 multi-pipeline 嵌入示例 6 项生产契约遗漏(错误映射/body 上限/精确路由/SIGPIPE/JSON 转义/文档命令)教训。
  • llmdoc/memory/reflections/lua-type-tag-dispatch-and-fuzz-blindspot.md — issue #175 复盘:luaj coercion 谓词 vs 真实类型标签分派、fuzzer flow_contract 投影盲区(值级 bug 对差分比较不可见)、有效可见率 vs 形状出现率、fixture 比对器分层边界、snapshotKeys 预存问题待开 issue。
  • llmdoc/memory/reflections/cpp-output-pool-and-storage-mode-guardrail.md — issue #122(pine-cpp OperatorOutput thread_local 复用 + 两侧 reset 与容量上限的多轮收敛过程)+ issue #160(合成列存护栏 fixture transform_heavy_1000storage_mode 用户文档)联合复盘,另修三处 nightly benchmark 接线缺陷(报表路径不匹配致 artifact 长期为空但 job 全绿 / --modes 空转 / bench-compare 列数过期)。核心教训:mutation 没红的第一解释应是「mutation 无效」而非「测试没牙」(vector = {}assign() 不缩容,与 clear() 容量语义等价)、mutation 期间禁用 git 恢复只能用文件备份 cp(同型事故第二次)、同一文件多域改动时 git add <file> 是单域隔离漏洞、clang-format 在 CI 里没有对应 job(真实覆盖缺口)、用户文档不写性能倍数只写定性判据 + 可复现入口、microbench 形状搬 e2e fixture 须重查投影/序列化段。issue #179(storage_mode 非法值兜底跨运行时分歧)仅记录未修。
  • llmdoc/memory/reflections/skip-field-lazy-input-and-pool-baseline-keys.md — issue #174 + #177 联合复盘:lazy proxy vs materialized input 在跨运行时 skip 契约上的实现分裂(pine-go/pine-java BuildInput materialize-time 剔除 vs pine-cpp OperatorInput proxy 读路径 gate excluded_common)、Lua pool baseline 仅覆盖字符串键的四运行时一致契约(wangshu godoc 权威表述、非 bug 而是文档化负空间)、TransformByLua.java 最后一处 coercion 谓词清理(snapshotKeysisstring() 迁移到 type() == TSTRING)、fuzz artifact triage playbook(末端错误误导、需从 pipeline 末端向前截断定位真实 frame 分歧 op)。

memory/decisions/

  • llmdoc/memory/decisions/perf-evolution-roadmap.md — 引擎侧性能演进路线决策:两个校准事实(per-item VM 边界主导、VM 层加速被端到端稀释,含 itemlua 第二证据点)、三步路线(typed-ColumnFrame/arena(typed 列已于 2026-07-07 在 pine-go/pine-java 实现——PR #162,含精确类型派发与 pine-cpp 数值折叠的刻意分歧论证;剩余演进为字符串 arena)→ common-mode 列内核负载迁移(含 2026-06-13 wangshu Arena 列轨 ABI 边界量化数据点,-22%~-46% 但端到端稀释+破 parity,不立即落地)→ 第三步 VM 适配层可插拔已于 2026-06-13 触发,wangshu 翻默认)、明确不做项(VM 直摸 Go heap、简单脚本负载上的 VM 优化)、翻默认三条 AND 闸门(calibrated 不劣化 + 受影响场景显著胜出 + 双 tag 全绿)、按切换范围分档的语义闸门。
  • llmdoc/memory/decisions/pine-java-gc-choice.md — pine-java GC 选型决策:4G 堆 / 2C cgroup / throughput-bound 形态下保持 JDK 21+ 默认 G1,不切 ZGC/Shenandoah/Parallel;含 2026-06-26 ZGC A 实验 QPS 表与 G1/ZGC GC log 实测、根因(G1 已无长 pause 痛点 + ZGC 小核 cgroup 下 concurrent CPU 偷窃倒贴 + stddev 主导源与 GC 无关)、重启触发条件(堆 ≥16G / 核 ≥8C / P99 ≤10ms / G1 STW max >50ms 任一)、与 perf-evolution-roadmap 互补的层次关系。
  • llmdoc/memory/decisions/user-docs-no-perf-multipliers.md — 用户可见文档口径决策:README.md / doc/guide_*.md 描述性能相关配置选择时完全不写倍数、百分比与毫秒绝对值,只写定性判据 + 指向可复现 benchmark 入口(storage_mode 落点是 doc/guide_pipeline{,-en}.md 的「Flow 级配置」节 + README 判据摘要与链接);理由是同一 transform-heavy 实验已存在 ~30%~37% 两个互相打架的口径且绝对值也不同、Go microbench 与三运行时 HTTP e2e 口径不可混排、数字随 #155/#156/#157 三轮优化移动而判据三轮未变;是 must/conventions.md「禁止硬编码定量描述」的具体应用,需引数字时落点为 decisions 或 reflection 的带机器/口径/日期标注的实验记录段。