diff --git a/docs/04-current-state.md b/docs/04-current-state.md index 57c7ffc6..001e1965 100644 --- a/docs/04-current-state.md +++ b/docs/04-current-state.md @@ -7,7 +7,7 @@ Inalpha 是 AI agent 编排与多 Python kernel 的量化实验框架。D-12 与 E2 闭环代码已落地,**完整 E2 工程验收与真实正向生产验收都尚未完成**,不新增 Phase 完成结论。 - **E1 已生产跑通审批→生成→刷新读取**:真实候选与种子适应度相同,验证段零成交,未证明改善。见 [正常 owner 执行回执](validation/evolution-approval-execution-lineage-2026-10-10.json)。 -- **E2 当前不选择启动资产**:最近可靠 owner 免费矩阵采样为 `2026-10-14T04:05:43.619Z`,BTC / ETH / SOL 独立事件上界为 **3/8、0/8、1/8**。未提交费用审批或付费搜索。匹配对照、FDR 和研究结果未评估。见 [owner 预检](validation/e2-owner-post-confirmation-2026-10-14.json)。 +- **E2 当前不选择启动资产**:最近可靠 owner 免费矩阵采样为 `2026-10-14T07:55:26.260Z`,BTC / ETH / SOL 独立事件上界为 **3/8、0/8、0/8**。未提交费用审批或付费搜索。匹配对照、FDR 和研究结果未评估。见 [owner 预检](validation/e2-owner-free-matrix-followup-2026-10-14.json)。 - **执行阻断已修复并合并,线上仍待发布**:PR #242 的 `a275f8be` 补 campaign 调度使用身份;357 项本地测试通过、1 跳过,精确 head/main CI 与七镜像成功。自动 CR 的1项MEDIUM已按完整消费者核对回应,独立复核无确认新增阻断。发布被活跃连接守卫拦截,原 Evolver `c55a5efe` / image `25874208` 保持 healthy、内部投影仍缺该字段;服务器仓库更新和镜像缓存不等于服务已替换。见 [发布与守卫回执](validation/e2-campaign-identity-release-2026-10-14.json)。 - **同镜像两项完整 Evolver 隔离检查已通过**:已保存响应在强杀后复用、未知响应在充足预算下拒绝自动重发。采用正式业务镜像、本地 AMD64 架构模拟和外围 HTTP/provider 夹具,不能替代正常 owner、完整外围服务栈或生产恢复证据。 @@ -19,11 +19,11 @@ Inalpha 是 AI agent 编排与多 Python kernel 的量化实验框架。D-12 与 |---|---:|---:|---| | BTC | 21 | 3 / 8 | 不启动搜索 | | ETH | 0 | 0 / 8 | 不启动搜索 | -| SOL | 1 | 1 / 8 | 不启动搜索 | +| SOL | 0 | 0 / 8 | 不启动搜索 | -上述数字只对应04:05采样的正常建议窗口;截止时点推进会移动自然60/20/20分段,不能直接与旧窗口作回归或因果比较。最新闭合1h末根开盘03:00、收盘04:00,与要求末根差值0;采样时收盘墙钟年龄343.619秒,不能说年龄为0。 +上述数字只对应07:55采样的正常建议窗口;截止时点推进会移动自然60/20/20分段,不能直接与旧窗口作回归或因果比较。最新闭合1h末根开盘06:00、收盘07:00,与要求末根差值0;这不表示墙钟年龄为0。SOL选择段变为10/09 06:00至10/11 18:00,此次0/8不能归因于数据回退。 -BTC旧监管质量提示在这次响应中消失,但语义准确性未评估。原文数量、事实版本、24小时独立上界与实际匹配对照是不同口径;上界达到8也只具备必要条件。 +[04:05采样回执](validation/e2-owner-post-confirmation-2026-10-14.json)中BTC旧监管质量提示消失,07:55未展开质量面板复核;语义准确性仍未评估。原文数量、事实版本、24小时独立上界与实际匹配对照是不同口径;上界达到8也只具备必要条件。 - v3抽取器已修复ban误命中bank等缺陷;历史v2保持不可变。可信Research→Data审核已逐条实测一条跨类型纠正和两条BTC同类确认,原哈希、证据与有效时间保留,纠正按数据库当前可见时间追加。不是全部历史事实审核通过,普通owner无全局事实写权限。见 [单条纠正](validation/event-fact-single-production-2026-10-14.json) / [BTC确认](validation/event-fact-btc-confirmation-2026-10-14.json)。 - 运行版本曾有OCI标签与tag不一致;三Python业务包200源码文件的独立比对范围不含共享包、依赖或客户端bundle,不能据标签认定整个镜像可复现。见 [运行源码核对](validation/e2-runtime-source-parity-2026-10-14.json)。 @@ -39,6 +39,8 @@ BTC旧监管质量提示在这次响应中消失,但语义准确性未评估 | 在途响应未知时退出 | 已有费用/响应回归 | 同镜像重启及再次重启均停在`LOOP_PROPOSAL_RESPONSE_UNCONFIRMED`;调用总数2,未知预留0.0340608保持,额度1充足 | 未取得真实供应商对账与生产未知费用恢复证据 | | 其他故障、交接与一次性holdout | 已有相关状态机与自动化 | 部分源码进程/受控数据库证据;完整矩阵待补 | 生产恢复、冠军与长期正向链路未完成 | +同镜像双进程补充:旧应用SIGSTOP后租约自然过期,新应用接手并拒绝未知响应重发;恢复旧应用、释放离线响应后连续20秒观察费用预留、零非空响应、零提案及阶段均未变化。未直接采样旧SDK成功收包或旧complete()调用,不能区分心跳取消与写入fencing;仍不视为整个旧worker矩阵完成。见 [暂停worker接手回执](validation/e2-paused-worker-takeover-2026-10-14.json)。 + 同镜像回执:[已知响应恢复](validation/e2-same-image-response-recovery-2026-10-14.json) / [未知响应阻断](validation/e2-same-image-unknown-response-2026-10-14.json)。无效DSL使用既有回退,成功实现数不代表有效变异或改善;两项都是临时探索脚本,尚非CI维护套件。前期失败与观察端超时保留在回执,不删除审计库。 已有中文/英文桌面UI证据见 [owner语言与参数检查](validation/e2-owner-matrix-language-2026-10-14.json)。工具读取超时和Mac锁定只限定观察范围,不能记为产品通过或失败。 diff --git a/docs/validation/e2-owner-free-matrix-followup-2026-10-14.json b/docs/validation/e2-owner-free-matrix-followup-2026-10-14.json new file mode 100644 index 00000000..cf2b20a1 --- /dev/null +++ b/docs/validation/e2-owner-free-matrix-followup-2026-10-14.json @@ -0,0 +1,92 @@ +{ + "date": "2026-10-14", + "sampled_at": "2026-10-14T07:55:26.260Z", + "status": "normal_owner_free_matrix_all_inputs_insufficient", + "access": "Existing logged-in Chrome owner session through native CUA; no hidden credentials read or fabricated. This is the existing owner account, not a separate ordinary non-admin account isolation test.", + "suggested_to": "2026-10-14T07:00:00Z", + "assets": [ + { + "asset": "BTC", + "timeframe": "1h", + "target_id": "8ec05df8-522b-48b6-9dc5-fdd45aba0205", + "suggested_from": "2026-09-30T10:00:00Z", + "bars": [ + 199, + 67, + 67 + ], + "selection_from": "2026-10-08T18:00:00Z", + "selection_to": "2026-10-11T12:00:00Z", + "selection_facts": 21, + "independent_upper_bound": 3, + "required_threshold": 8, + "upper_bound_by_type": { + "exploit": 1, + "other": 2 + }, + "snapshot_fact_versions": 123, + "first_snapshot_available_at": "2026-09-30T10:36:41.860008Z", + "latest_bar_open": "2026-10-14T06:00:00Z", + "required_bar_open": "2026-10-14T06:00:00Z", + "lag_vs_required_seconds": 0 + }, + { + "asset": "ETH", + "timeframe": "1h", + "target_id": "33ef02a0-dcf7-47a3-a708-9d4ca1433860", + "suggested_from": "2026-09-30T10:00:00Z", + "bars": [ + 199, + 67, + 67 + ], + "selection_from": "2026-10-08T18:00:00Z", + "selection_to": "2026-10-11T12:00:00Z", + "selection_facts": 0, + "independent_upper_bound": 0, + "required_threshold": 8, + "upper_bound_by_type": {}, + "snapshot_fact_versions": 13, + "first_snapshot_available_at": "2026-09-30T10:36:41.887149Z", + "latest_bar_open": "2026-10-14T06:00:00Z", + "required_bar_open": "2026-10-14T06:00:00Z", + "lag_vs_required_seconds": 0 + }, + { + "asset": "SOL", + "timeframe": "1h", + "target_id": "7c09cdb0-cd8a-43b6-8e66-787eb9f7aaed", + "suggested_from": "2026-10-01T14:00:00Z", + "bars": [ + 183, + 61, + 61 + ], + "selection_from": "2026-10-09T06:00:00Z", + "selection_to": "2026-10-11T18:00:00Z", + "selection_facts": 0, + "independent_upper_bound": 0, + "required_threshold": 8, + "upper_bound_by_type": {}, + "snapshot_fact_versions": 7, + "first_snapshot_available_at": "2026-10-01T14:37:01.079456Z", + "latest_bar_open": "2026-10-14T06:00:00Z", + "required_bar_open": "2026-10-14T06:00:00Z", + "lag_vs_required_seconds": 0 + } + ], + "selection": { + "selected_asset": null, + "reason": "All three normal suggested windows fail necessary independent-event upper-bound threshold 8; no paid experiment requested." + }, + "production_model_calls": 0, + "approval_submissions": 0, + "limitations": [ + "UI observations only; no provider or evaluation calls.", + "Natural suggested-window partitions moved; changes are not same-window regression or causal evidence.", + "Latest required bar gap is zero; this is not zero wall-clock age.", + "No mobile or separate-owner authorization rejection was tested.", + "Initial navigation showed an offline/previous-frame placeholder; subsequent loaded view became realtime and matrix succeeded. It is not a persistent backend outage." + ], + "cleanup": "Only the task-created Chrome tab was closed after acceptance; original user tabs retained." +} diff --git a/docs/validation/e2-paused-worker-takeover-2026-10-14.json b/docs/validation/e2-paused-worker-takeover-2026-10-14.json new file mode 100644 index 00000000..2acb0d0f --- /dev/null +++ b/docs/validation/e2-paused-worker-takeover-2026-10-14.json @@ -0,0 +1,169 @@ +{ + "database": "inalpha_container_audit_d07a6eca8383400288522717b23ecdda", + "result": "partially_passed", + "scope": "full actual Evolver application lifespan and dispatchers; provider SDK HTTP transport replaced, synthetic local signer/Dashboard/Data; actual fixed business image, local AMD64 emulation, not real owner/production", + "initial_health": { + "status": "ok", + "service": "inalpha-evolver", + "event_evolution": "enabled" + }, + "sigstop_completed_at": "2026-10-14T08:01:16.561224+00:00", + "fault": "SIGSTOP old application; wait natural lease expiry; second application claims", + "before": { + "status": "replaying", + "active_generation": 1, + "lease_token": "1615e279-c5dd-4972-8638-3f5074552cd3", + "lease_expires_at": "2026-10-14 08:01:40.500046+00:00", + "locked_candidate_id": null, + "forward_sandbox_id": null, + "holdout_consumed_at": null, + "failure_code": null, + "observed_at": "2026-10-14 08:01:16.587397+00:00", + "proposal_count": 0, + "stored_response_count": 0, + "response_count": 2, + "succeeded": 0, + "ledger": { + "spent_usd": "0", + "reserved_usd": "0.0340608", + "max_cost_usd": "1", + "attempts": 2 + }, + "expired": false + }, + "expired_lease_observation": { + "status": "replaying", + "active_generation": 1, + "lease_token": "1615e279-c5dd-4972-8638-3f5074552cd3", + "lease_expires_at": "2026-10-14 08:01:40.500046+00:00", + "locked_candidate_id": null, + "forward_sandbox_id": null, + "holdout_consumed_at": null, + "failure_code": null, + "observed_at": "2026-10-14 08:01:40.936093+00:00", + "proposal_count": 0, + "stored_response_count": 0, + "response_count": 2, + "succeeded": 0, + "ledger": { + "spent_usd": "0", + "reserved_usd": "0.0340608", + "max_cost_usd": "1", + "attempts": 2 + }, + "expired": true + }, + "second_application_started_at": "2026-10-14T08:01:40.942875+00:00", + "restart_health": { + "status": "ok", + "service": "inalpha-evolver", + "event_evolution": "enabled" + }, + "second_application_claim": { + "status": "replaying", + "lease_token": "24ea512f-570a-4d78-b7e8-ccfb4fea5c3a", + "lease_expires_at": "2026-10-14 08:02:30.464836+00:00", + "updated_at": "2026-10-14 08:02:00.464845+00:00", + "observed_at": "2026-10-14 08:02:01.023633+00:00" + }, + "after": { + "status": "failed", + "active_generation": 1, + "lease_token": null, + "lease_expires_at": null, + "locked_candidate_id": null, + "forward_sandbox_id": null, + "holdout_consumed_at": null, + "failure_code": "LOOP_PROPOSAL_RESPONSE_UNCONFIRMED", + "observed_at": "2026-10-14 08:02:01.550045+00:00", + "proposal_count": 0, + "stored_response_count": 0, + "response_count": 2, + "succeeded": 0, + "ledger": { + "spent_usd": "0", + "reserved_usd": "0.0340608", + "max_cost_usd": "1", + "attempts": 2 + }, + "expired": null + }, + "offline_provider_calls": [ + "before", + "before" + ], + "local_peripheral_requests": [ + "snapshot", + "local-fixture-grant", + "credential", + "snapshot", + "local-fixture-grant", + "credential" + ], + "old_application_resumed_and_fixture_released_at": "2026-10-14T08:02:01.746428+00:00", + "after_old_worker_return": { + "status": "failed", + "active_generation": 1, + "lease_token": null, + "lease_expires_at": null, + "locked_candidate_id": null, + "forward_sandbox_id": null, + "holdout_consumed_at": null, + "failure_code": "LOOP_PROPOSAL_RESPONSE_UNCONFIRMED", + "observed_at": "2026-10-14 08:02:21.732057+00:00", + "proposal_count": 0, + "stored_response_count": 0, + "response_count": 2, + "succeeded": 0, + "ledger": { + "spent_usd": "0", + "reserved_usd": "0.0340608", + "max_cost_usd": "1", + "attempts": 2 + }, + "expired": null + }, + "late_response_observation_seconds": 20, + "purpose": "Observe paused-worker resume after lease takeover: no state or cost changes during 20 seconds; SDK receipt, stale write attempt and heartbeat-versus-write-fencing mechanism are not independently demonstrated", + "old_worker_cleanup_exit_code": 0, + "observer_transient_failures": [], + "cleanup_exit_code": 0, + "env_file_removed": true, + "owned_container_removed": true, + "image": "ghcr.io/mirror29/inalpha-evolver:a275f8be7679578e4aef62cffb3ff5c6f13a988e", + "runtime": "local Docker AMD64 emulation on ARM host; CPUs2/memory4GB; no production container restarted", + "entrypoint_shim_sha256": "36614d333dbae8accddc8cdec7622bb60a6c90c5281067d9c3da868672093966", + "business_sha": "a275f8be7679578e4aef62cffb3ff5c6f13a988e", + "new_production_model_calls": 0, + "production_e2_searches_started": 0, + "observation_limits": [ + "Old application resumed and provider fixture release marker set; this probe did not directly sample successful SDK receipt or an attempted stale complete() call. Heartbeat cancellation and write fencing cannot be separated from this observation.", + "Twenty seconds of unchanged database observations do not prove all late-response races.", + "Isolated synthetic baseline and local signer/credential/Data HTTP fixtures; not normal-owner authorization or production fencing acceptance.", + "No provider invoice exists for offline fixture calls; known spend zero is not evidence that unknown real calls would be free.", + "Audit database retained; owned containers absent in a separate successful Docker listing, and temporary environment file removed.", + "Current probe is exploratory and not a maintained CI suite." + ], + "harness_sha256": "b4e35d878e980d418e28ba52c9b80b2d358d9b62d79f61b63fa0f5570f411a86", + "timing_scope": "sigstop/start/resume anchors use local UTC; expiry and claim timestamps use PostgreSQL clock_timestamp()/updated_at in the isolated database. Claim updated_at observed with a new token after old lease expiry; proposal-response table briefly locked only in isolated DB to hold recovery while observing the claim, then released.", + "prior_attempts": [ + { + "database": "inalpha_container_audit_4d31c92f69b44889ada7870701cc1cc7", + "result": "passed", + "limits": "No explicit expiry/claim time anchors; preserved as prior exploratory observation." + }, + { + "database": "inalpha_container_audit_1db7f2b473ca4e33a5366b98eb925cae", + "result": "failed", + "error_type": "TimeoutError", + "scope": "Authorization-table observation lock prevented second app startup health; probe setup issue, not production failure. Both containers cleaned, environment file removed, audit database retained." + } + ], + "probe_assertions_result": "passed", + "not_demonstrated": [ + "successful old SDK receipt of the released provider payload", + "an attempted old-token complete() write and its explicit rejection", + "separation of heartbeat cancellation from write fencing", + "full old-worker fencing acceptance" + ] +}