AI 软件开发实战教程(十四):让出行信息按规则结束

发布时间:2026/8/29 5:09:53

AI 软件开发实战教程(十四):让出行信息按规则结束
系列第 14 篇实现编辑、截止、关闭、取消、满员和过期并处理“状态失效但已经披露的联系方式不能撤回”这一真实边界。发布、候选和交换完成后信息不会永远有效。用户会改时间、停止找人、取消行程也可能因站内确认或站外安排而满员。后台任务还可能晚几秒运行。K6 的目标不是增加几个状态按钮而是让页面、服务、查询和定时扫描对每个状态说同一种语言。编辑权限取决于是否已经交换首次交换前发布者可以修改影响匹配的时间和路线。服务增加信息修订版本让旧候选失效后按新内容重算。这一步发现 K3 的唯一约束缺少修订版本。如果唯一键只有“车主信息、乘客信息、规则版本”编辑后即使旧候选失效数据库仍不允许产生新候选。最终唯一事实改为车主信息 乘客信息 车主修订版本 乘客修订版本 匹配规则版本旧解释不被改写新候选能准确指向修改后的两份信息。发生联系方式交换后日期、时间窗口和路线被锁定。因为对方已经依据旧内容获得联系方式静默修改会破坏双方对同一件事的理解。此时仍允许修改尚未到达的匹配截止和合法座位数路线真的变化应取消后重新发布。满员必须记录来源系统因双方确认达到座位数而满员可以在配对取消或增加座位后自动恢复。车主在站外已经安排满员则不能被站内取消动作重新打开。因此状态之外还保存system或manual来源。手动满员重新开放时车主必须明确填写当前可用座位而且截止和出发时间都还没到。关闭、取消和过期是终态不能把旧信息直接恢复为有效。继续寻找必须新建信息避免已经分享出去的链接在不同出行之间反复复用。不等待后台任务才能保证正确大厅查询本来就会排除截止和出发时间已到的信息。K6 再增加幂等扫描把数据库状态和事件补齐到匹配截止产生一次结果事件到出发时间把有效或满员信息落为过期等待双方反馈的配对到较早出发时间落为确认超时已确认配对不会被超时扫描覆盖。扫描运行两次事件键和状态都保持唯一。即使 Worker 晚运行实时查询和操作仍按服务器时刻拒绝过期行为后台任务负责补全持久化事实不是权限正确性的唯一依赖。已披露的微信号不能被页面撤回关闭或取消会让候选失效但双方在此前已经合法看到微信号。软件无法让对方忘记也不应该让页面假装历史交换从未发生。实现中把候选查询拆成两类有效候选允许新的联系方式交换 参与者历史候选允许双方查看已经发生的交换结果浏览器旅程中车主在“我的信息”关闭发布后乘客刷新交换结果仍能看到此前的加密快照。新的候选和交换则已经停止。一次测试失败纠正了错误前提浏览器测试最初期待双方确认后信息显示“座位已满”。失败页面清楚显示车主发布了两个座位只确认了一名乘客正确状态本来就应是“正在寻找”。测试随后修正前提而不是把实现改成确认一人就满员。这类失败很有价值TDD 不代表测试永远正确失败时仍要回到产品事实判断哪一边错了。本节点结果99 个非浏览器测试通过1 个 PostgreSQL 专属测试明确跳过分支覆盖率 88.55%静态、类型、迁移和 Django 检查通过4 条 Chromium 旅程通过编辑修订、状态来源、截止、过期、超时和历史披露都有自动证据外部提醒、PostgreSQL 并发、WebKit 和微信真机仍未宣称通过结果只形成本地提交不推送。下一篇进入 K7业务事件已经存在后怎样通过数据库待办可靠调用喵提醒区分明确失败和结果未知并避免短时间内连续轰炸用户。关键代码与操作下面的简化测试把生命周期扫描执行两次确认终态和业务事件都不会重复deftest_lifecycle_sweep_is_idempotent(expired_trip,pending_pairing):sweep_trip_lifecycle(nowNOW)sweep_trip_lifecycle(nowNOW)expired_trip.refresh_from_db()pending_pairing.refresh_from_db()assertexpired_trip.statusTripPost.Status.EXPIREDassertpending_pairing.statusPairing.Status.TIMED_OUTassertBusinessEvent.objects.filter(event_typetrip.matching_closed).count()1assertBusinessEvent.objects.filter(event_typepairing.timed_out).count()1验证命令make bugfix TESTtests/trips/test_lifecycle.py::test_sweep_is_idempotent_for_deadline_expiry_and_pairing_timeout后台任务可以晚到或重跑但同一个截止事实不能因此产生两次。本篇验证摘要联系方式交换前可以修订时间和路线交换后会锁定影响双方理解的字段关闭、取消和过期是终态继续寻找必须创建新信息实时查询按服务器时间排除失效信息不依赖后台扫描准时运行幂等扫描负责补齐截止、过期和确认超时事件不重复改变已完成状态信息结束后禁止新的交换但参与者仍能查看此前合法披露的联系方式。附录相关工具与仓库gstack仓库garrytan/gstack地址https://github.com/garrytan/gstackdev-harness仓库Dev-Wiki/dev-harness地址https://github.com/Dev-Wiki/dev-harnessUI UX Pro Max Skill仓库nextlevelbuilder/ui-ux-pro-max-skill地址https://github.com/nextlevelbuilder/ui-ux-pro-max-skill

相关新闻

Excel怎么合并单元格?点哪里、怎么操作,一步步说清楚

Excel怎么合并单元格?点哪里、怎么操作,一步步说清楚

2026/8/29 5:09:52

合并单元格是Excel里最常用、但也最容易被用出问题的功能之一。它确实能让表格看起来整洁、标题醒目,但如果用不对地方,后续的排序、筛选、公式计算都会给你找麻烦。这篇文章把合并单元格的常用方法、注意事项和替代方案整理了一下,希望对你有…

Ubuntu 26.04安装与配置实战:从VMware到MySQL/Redis及Qwen模型部署

Ubuntu 26.04安装与配置实战:从VMware到MySQL/Redis及Qwen模型部署

2026/8/29 4:59:52

这几年 Ubuntu 的发版节奏一直很稳,24.04 LTS 刚成为很多服务器的默认选择,26.04 的开发版和预发布消息就已经开始刷屏了。很多读者关心的点其实非常一致:Ubuntu 26.04 怎么安装、硬件要求高不高、虚拟机能不能跑、装完输入法怎么配、MySQL 8…

ViT OOD检测实战:SVD与Typicality Maps识别分布外样本

ViT OOD检测实战:SVD与Typicality Maps识别分布外样本

2026/8/29 4:59:52

部署一个视觉 Transformer(ViT)模型到真实业务里,通常要面对的难题不一定是 Top-1 准确率差了几个点,而是模型在遇到“从来没见过的输入”时,依然会给出一个置信度很高的错误预测。比如在工业质检场景中,训…

DFlash模型下载指南:HuggingFace模型库5个实用技巧

DFlash模型下载指南:HuggingFace模型库5个实用技巧

2026/8/29 7:50:00

DFlash模型下载指南:HuggingFace模型库5个实用技巧 【免费下载链接】dflash DFlash: Block Diffusion for Flash Speculative Decoding 项目地址: https://gitcode.com/GitHub_Trending/df/dflash DFlash 是一个用于推测解码(Speculative Decodin…

gogcli Gmail自动回复:6个技巧用一行命令配置假期与自定义autoreply

gogcli Gmail自动回复:6个技巧用一行命令配置假期与自定义autoreply

2026/8/29 7:50:00

gogcli Gmail自动回复:6个技巧用一行命令配置假期与自定义autoreply 【免费下载链接】gogcli Google Workspace in your terminal. 项目地址: https://gitcode.com/GitHub_Trending/gogcl/gogcli gogcli 是一款在终端里操作 Google Workspace 的命令行工具&a…

Semantica Quickstart避坑指南:新手最常犯的5个错误及解决方案

Semantica Quickstart避坑指南:新手最常犯的5个错误及解决方案

2026/8/29 7:50:00

Semantica Quickstart避坑指南:新手最常犯的5个错误及解决方案 【免费下载链接】semantica Graph-Native Infrastructure for Context and Accountable AI Systems 项目地址: https://gitcode.com/GitHub_Trending/sema/semantica Semantica 是一个开源的&qu…

CubeSandbox一键部署脚本install.sh全流程解析:每行命令都在做什么

CubeSandbox一键部署脚本install.sh全流程解析:每行命令都在做什么

2026/8/29 7:50:00

CubeSandbox一键部署脚本install.sh全流程解析:每行命令都在做什么 【免费下载链接】CubeSandbox Instant, Concurrent, Secure & Lightweight Sandbox for AI Agents. 项目地址: https://gitcode.com/GitHub_Trending/cu/CubeSandbox CubeSandbox 是一个…

Hermes Agent 性能优化实战:3步把响应时间从10秒压到1秒

Hermes Agent 性能优化实战:3步把响应时间从10秒压到1秒

2026/8/29 7:50:00

Hermes Agent 性能优化实战:3步把响应时间从10秒压到1秒 【免费下载链接】hermes-agent The agent that grows with you 项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent 给 Hermes Agent 发一条消息,光标闪了 10 秒,…

MediaCrawler实战:多平台爬虫框架部署与数据采集指南

MediaCrawler实战:多平台爬虫框架部署与数据采集指南

2026/8/29 7:40:00

1. MediaCrawler 是什么:一个多平台数据采集框架1.1 爬虫开发为什么这么费劲如果你做过内容平台的数据采集,大概率经历过下面这些事:网站页面由 JavaScript 动态渲染,直接请求 HTML 拿不到数据。请求频率稍高,立刻弹出…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/27 11:10:02

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/27 7:25:23

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/28 7:34:42

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

四款热门降AI工具测评:研究生和本科生怎么选?

四款热门降AI工具测评:研究生和本科生怎么选?

2026/8/29 0:09:39

马上要交论文了,最近真的被论文ai率折磨的够呛。 明明查重都没问题了,但是ai率就是居高不下,崩溃了,明明都是我自己写的,天杀的,明明都是我亲生的啊 改来改去,终于给我搞出一套完美的降ai方案…

论文降AI率免费攻略:自查、提示词与工具推荐

论文降AI率免费攻略:自查、提示词与工具推荐

2026/8/29 0:09:39

马上要交论文了,最近真的被论文ai率折磨的够呛。 明明查重都没问题了,但是ai率就是居高不下,崩溃了,明明都是我自己写的,天杀的,明明都是我亲生的啊 改来改去,终于给我搞出一套完美的降ai方案…

北京GEO优化服务商推荐:预算型企业如何选北京GEO优化服务商?

北京GEO优化服务商推荐:预算型企业如何选北京GEO优化服务商?

2026/8/29 0:09:39

前言:预算有限的企业更关心投入能否形成可持续的品牌资产。评估北京GEO优化服务商时,不能只比较单篇内容或单月报价,还要看是否能够把问题词、官网、信源和监测串成完整链路。本期重点放在预算配置、试点范围和交付边界,帮助企业先…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/28 7:35:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/28 7:34:51

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/28 7:34:35

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…