f79f824
为每台 Agent 增加本地、可持久化的“采集间隔”设置。采集任务实际结束后,Agent 先可靠提交或持久化结果,再等待配置时间;间隔结束后主动检查下一条采集任务,降低连续采集造成的页面状态不稳定,同时保持采购任务可正常执行。
0~600
15
0
completed
completed_partial
failed
nextTask
第一阶段制作小范围 Agent 原型,复用 #100 已确认的 390×844 深色四 Tab 基线,不覆盖历史原型:
prototypes/<本工单号>/v1/index.html
3164675
prototypes/102/v3/index.html
fc52ec5
15~15
0~0
[最短秒数, 最长秒数]
15~15 秒
15~30
本阶段只完成工单、行为契约和设计证据,尚未修改 Android、Server 或数据库生产代码。
6a8edc0c191a826306a7f38f
prototypes/102/v1/index.html
8c51754
PASS
python dev_scripts/harness.py check --strict
git diff --check
当前仍为待审核设计,没有已实现长期事实,按工单约定跳过 Wiki。
状态:等待用户审核 #102 v1;审核通过后才实施 Android 设置、冷却状态机和调度测试。
用户于 2026-08-26 明确确认 #102 v1 原型通过验收,授权开始生产实施。实施范围保持为 Android 本地设置、独立采集间隔状态机、调度与状态反馈;不修改 Server、数据库、采购流程或支付边界。
:collection-cooldown
main
android\\gradlew.bat testDebugUnitTest
.\\scripts\\verify.ps1 -Component android
android\\gradlew.bat assembleRelease
已先更新线上 Wiki 并回读 revision,再完成本地镜像同步与 sync --check:
sync --check
d234ec2be1a4f6d01a9a46a90a901abdebd229be
c31d953495bb18ebfb1c7de0015e987c42dd43e4
Agent API 没有变化,因此未更新 API 契约。
尚未安装到真机,也未创建采集或采购任务。请在设备空闲时覆盖安装后重点验收:
状态:待用户验收,工单保持打开。
2026-08-27 真机安装记录:
adb install -r
0.8.0 (versionCode 12)
http://192.168.0.224:8010
工单继续保持待验收。
已按用户 2026-08-27 的明确要求直接修改 #102,不另建工单。
变更结论:
prototypes/102/v2/index.html
本次只更新设计证据,尚未修改 Agent 生产代码。
b6e4283
file://
请先审核 v2 原型;审核通过后再进入代码实施。
用户要求继续精简 #102 设置页:
v2 已作为审核证据提交,本次生成 prototypes/102/v3/index.html,不覆盖 v2;仍只更新原型,不修改 Agent 生产代码。
已按本轮反馈精简设置页:
设计证据:
请审核 v3,确认后再继续实施。
collection_interval_seconds
.\scripts\verify.ps1 -Component android
cd android && .\gradlew.bat assembleRelease
cd android && .\gradlew.bat test
sync
800b2e0845f8cc69759246d33083793df4cbef7f
a75499ddf3d238810d1f845050cdd4b46e49297e
gitea.zip
工单保持开启并处于待验收。
PKG110
0000
Success
cn.ilapage.goauto.agent
0.8.0
12
2026-08-27 09:36:08
本次只完成安装和包信息回读,未自动启动采集/采购任务,未修改地址、创建订单或支付。设置页显示、随机间隔、重启恢复和 WakeLock 仍等待真机验收。
用户于 2026-08-28 明确确认本工单验收通过。按项目流程记录验收结论并关闭工单;本次仅更新工单状态,无新增长期文档事实,不重复同步 Wiki。
No dependencies set.
The note is not visible to the blocked user.
所属与来源
f79f824实施并完成自动化验证、Wiki 更新与镜像同步,现处于待验收;用户明确验收前工单保持开启。真机覆盖安装、界面检查和连续采集尚未执行。当前事实
目标
为每台 Agent 增加本地、可持久化的“采集间隔”设置。采集任务实际结束后,Agent 先可靠提交或持久化结果,再等待配置时间;间隔结束后主动检查下一条采集任务,降低连续采集造成的页面状态不稳定,同时保持采购任务可正常执行。
已确认方案
设置
0~600,默认15。0表示不等待。调度语义
completed、completed_partial和failed。nextTask、采集领取和开始,不阻止心跳、结果补交、历史同步、采购任务检查或采购执行。0时保持现有“任务结束后立即检查”的行为。手动入口与反馈
与15秒自动返回、亮屏的关系
非目标
原型要求
第一阶段制作小范围 Agent 原型,复用 #100 已确认的 390×844 深色四 Tab 基线,不覆盖历史原型:
prototypes/<本工单号>/v1/index.html,资源相对且可离线浏览。设计验收
0的含义和保存动作清晰。后续生产验收
验证计划
风险
文档影响
需求变更:随机采集间隔范围(2026-08-27)
变更来源
3164675与 v1 原型保留为历史基线,不回退、不覆盖;随机范围最终确认原型为prototypes/102/v3/index.html(提交fc52ec5),用户已于 2026-08-27 审核通过。更新后的设置契约
0~600的整数,默认值为15~15,以兼容现有固定 15 秒行为。0~0表示不等待;当范围包含 0 时允许本次随机到 0 并立即继续现有调度。更新后的随机与恢复契约
[最短秒数, 最长秒数]内等概率随机一次整数秒;领取前失败、配置/认证错误、结果未安全提交和采购任务结束均不随机。v3 原型要求(已通过)
15~15 秒;不显示“最短”“最长”,两个输入仍有“范围起始值 / 范围结束值”的无障碍描述。15~30的保存成功反馈。0~600的就近错误提示。prototypes/102/v3/index.html,资源相对、可离线浏览;用户已于 2026-08-27 明确审核通过。更新后的生产验收
15~15,可保存并在重启后读取;两个值均只接受0~600整数且最短不大于最长。0~0保持立即检查,范围包含 0 时允许抽到 0。文档影响
#102 v1 小范围原型已完成,等待审核
本阶段只完成工单、行为契约和设计证据,尚未修改 Android、Server 或数据库生产代码。
设计证据
6a8edc0c191a826306a7f38fprototypes/102/v1/index.html8c51754原型覆盖
验证
PASS;4个界面、100个组件、10条交互连线,无运行时错误和不支持组件。python dev_scripts/harness.py check --strict:通过。git diff --check:通过。文档影响
当前仍为待审核设计,没有已实现长期事实,按工单约定跳过 Wiki。
状态:等待用户审核 #102 v1;审核通过后才实施 Android 设置、冷却状态机和调度测试。
用户于 2026-08-26 明确确认 #102 v1 原型通过验收,授权开始生产实施。实施范围保持为 Android 本地设置、独立采集间隔状态机、调度与状态反馈;不修改 Server、数据库、采购流程或支付边界。
Agent 可配置采集间隔与任务结束冷却(先行原型)to Agent 可配置采集间隔与任务结束冷却生产实现完成,等待用户验收
实现
:collection-cooldownWakeLock;采购接管或服务停止时释放,采购结束且原间隔未到期时恢复。设计与代码
6a8edc0c191a826306a7f38fprototypes/102/v1/index.html3164675(已推送main)验证
android\\gradlew.bat testDebugUnitTest:通过。.\\scripts\\verify.ps1 -Component android:通过(Debug/Release 单测及 Debug APK)。android\\gradlew.bat assembleRelease:通过。python dev_scripts/harness.py check --strict:通过。git diff --check:通过。长期文档
已先更新线上 Wiki 并回读 revision,再完成本地镜像同步与
sync --check:d234ec2be1a4f6d01a9a46a90a901abdebd229bec31d953495bb18ebfb1c7de0015e987c42dd43e4Agent API 没有变化,因此未更新 API 契约。
未验证与验收建议
尚未安装到真机,也未创建采集或采购任务。请在设备空闲时覆盖安装后重点验收:
:collection-cooldownWakeLock 到期或停止服务后释放。状态:待用户验收,工单保持打开。
2026-08-27 真机安装记录:
3164675对应 Debug APKadb install -r:Success0.8.0 (versionCode 12)http://192.168.0.224:8010,当前连接失败,因此本次只完成安全覆盖安装,尚未进行 #102 连续采集/倒计时真机验收,也未触发采购、创建订单或支付工单继续保持待验收。
Agent 可配置采集间隔与任务结束冷却to Agent 可配置随机采集间隔与任务结束冷却已按用户 2026-08-27 的明确要求直接修改 #102,不另建工单。
变更结论:
15~15,兼容当前固定 15 秒实现;两值相等表示固定,0~0表示不等待。3164675保留为基线,不覆盖、不回退。prototypes/102/v2/index.html;用户审核 v2 前不继续修改 Android 生产代码。v2 原型已完成,等待审核
本次只更新设计证据,尚未修改 Agent 生产代码。
6a8edc0c191a826306a7f38fprototypes/102/v2/index.htmlb6e4283prototypes/102/v1/index.htmlv2 覆盖范围
15~15秒。0~0表示不等待”。15~30秒,并显示“已保存,下次采集任务结束后生效”。0~600。验证与文档
python dev_scripts/harness.py check --strict:通过。file://页面;已由 QuantUX 导出验证和静态完整性检查覆盖。请先审核 v2 原型;审核通过后再进入代码实施。
原型调整要求(2026-08-27)
用户要求继续精简 #102 设置页:
v2 已作为审核证据提交,本次生成
prototypes/102/v3/index.html,不覆盖 v2;仍只更新原型,不修改 Agent 生产代码。v3 原型已更新,等待审核
已按本轮反馈精简设置页:
设计证据:
prototypes/102/v3/index.htmlfc52ec5请审核 v3,确认后再继续实施。
v3 原型审核通过
prototypes/102/v3/index.html6a8edc0c191a826306a7f38ffc52ec5实施完成,等待验收
实现
15~15,两端均校验0~600,左侧大于右侧时就近提示且不保存。collection_interval_seconds自动读取为相同起止值;首次保存范围后原子写入两个新字段并移除旧字段。0~0和包含 0 的范围允许本次不等待。验证
.\scripts\verify.ps1 -Component android:通过。cd android && .\gradlew.bat assembleRelease:通过。cd android && .\gradlew.bat test:通过。0~0、范围包含 0、随机上下边界、每次只调用一次随机源、倒计时、过期和时间回拨;没有概率性测试。git diff --check:通过。python dev_scripts/harness.py check --strict:通过。sync和一次sync --check:通过。文档
800b2e0845f8cc69759246d33083793df4cbef7fa75499ddf3d238810d1f845050cdd4b46e49297e提交与未验证项
f79f824(已推送main)gitea.zip保持未修改。工单保持开启并处于待验收。
真机安装补充
PKG110(ADB 序列号已脱敏记录为尾号0000)Successcn.ilapage.goauto.agent0.8.0(versionCode12)2026-08-27 09:36:08本次只完成安装和包信息回读,未自动启动采集/采购任务,未修改地址、创建订单或支付。设置页显示、随机间隔、重启恢复和 WakeLock 仍等待真机验收。
用户于 2026-08-28 明确确认本工单验收通过。按项目流程记录验收结论并关闭工单;本次仅更新工单状态,无新增长期文档事实,不重复同步 Wiki。