Yummy PLAN
2026-09-23AUDIENCE: INTERNAL只出方案 · 不改生产

我们在卖的所有东西:一份清单,和把它补进后台的计划

「后台」= Directus,公司内部管理系统,网址 admin.yummy-future.com。今天打开它只看得见 5 样周边,机器、订场、团餐这些真赚钱的一条都没有。这份文档先把在卖的东西数清楚,再说怎么让后台也看得见。

0 · 清单:我们现在到底在卖什么The catalogue

一共 六条线。「后台看得见吗」这一列问的是:Jack 打开 admin.yummy-future.com,能不能查到这样东西和它的价钱。

① 商城周边 —— 网上直接能买

东西价钱定了吗后台看得见吗
House Blend 咖啡豆 12oz$18占位价✅ 看得见
Yummy Future T恤(S/M/L/XL)$30占位价✅ 看得见
马克杯 12oz$22❌ 我提的,等 Jack❌ 插不进去
帆布袋$18❌ 我提的,等 Jack❌ 插不进去
机器人贴纸包$8❌ 我提的,等 Jack❌ 插不进去
Future Arm 钥匙扣$12❌ 我提的,等 Jack❌ 插不进去
来源:生产库 products 表现查 5 行(2026-09-23);后 4 样是本会话做好的货架,代码已推、库里还进不去

② 机器 —— 不在网上卖,人对人报价

东西价钱定了吗后台看得见吗
Future Max$1,999/月起,超过 300 杯/天那部分每杯 $1✅ 已拍板❌ 后台没有这个数
Future Bar没有公开价,逐单报❌ 没定❌ 没有
Future Kiosk没有公开价,逐单报❌ 没定❌ 没有
Future Arm没有公开价,逐单报❌ 没定❌ 没有
Future Fridge没有公开价,逐单报❌ 没定❌ 没有

⚠ Max 这笔账目前算不平:$1,999/月 × 12 个月 × 100 台 = $240 万,但已拍板的全年目标是 $300 万,每台每年差 $6,012。要靠「每天卖到约 317 杯」的超杯收入补上,而这跟「我们专打低杯量场景」的定价逻辑互相打架。四个选项在 Max GTM 那份文档里摆着,等 Jack 选。

来源:docs/prd/max-gtm-tactics.html v1.0(2026-09-12);产品名单出自 site/js/lead-forms.js 的报价表选项

③ 门店服务 —— 在店里卖

东西价钱定了吗后台看得见吗
订场(包场办活动)每位 $20✅ 已拍板,但页面上不公开这个数❌ 藏在一个环境变量里
订场 · 学生社团 / 公益组织每位 $10✅ 2026-09-22 拍板❌ 只写在计划文档里
团餐(把饮品送到你的活动上)没有任何价格❌ 没定❌ 没有
我们自己办的活动第一版全部免费,不卖票✅ 2026-09-21 拍板✅ events 表里有 3 条
桌边扫码点单的饮品跟着门店菜单走✅ 沿用现有菜单❌ 在另一套系统(点单 app)里
来源:拍板台账 2026-09-21 / 09-22 各条;团餐页面和订场页面实查,一个价格字样都没有

④ 合作 —— 没有标价,一单一谈

帮你在你的场地开一家、和你一起开一家、你自己开我们供机器:三条路都走报价表,没有价目表。后台里这些线索落在 leads 表,按 product / franchise 分类,但「卖的是什么、多少钱」这件事后台没有记录

⑤ 投资人权益 —— 不是卖,是欠

后台 perk_obligations 表里有 8 条在跑的义务(例如「app 里 100 颗星,约 $100 饮品额度」)。这些是我们已经收过钱、要兑现的东西,不该跟"在卖的东西"混在一张表里,但清点家底时不能漏。

⑥ 后台今天的实际状况

后台里的表装什么现在多少条
products网上能买的商品和价格5 条(豆子 1 + T恤 4)
orders商城订单4 单
leads所有询价线索,含机器买家
events我们自己办的活动3 条
shop只是导航里的一个分组名,背后没有数据不是表
来源:2026-09-23 用后台服务账号实查 25 张表 + 直连生产库列表复核
1 · 问题框定 · Problem framing

一句话问题:我们在卖的东西散在五个地方(数据库、代码里的常量、环境变量、计划文档、另一套 app),后台只看得见其中最小的一块,想回答「我们卖什么、多少钱」得翻五个地方。

成功标准
  • 后台有一个地方,列着每一条在卖的线和它的价钱
  • 没定价的东西明明白白标「未定」,不拿占位价冒充已定
  • 商城那 14 样在后台查得到(先只对自己人可见)
  • 每一行都写着「这个数是谁哪天定的」,不用再去翻聊天记录
边界(不做)
  • 不替 Jack 定任何价钱
  • 不碰收款流程,不碰订单表
  • 不把点单 app 的菜单搬过来,那是另一套系统的事
  • 不改机器定价本身,那是 Max GTM 文档的待办
约束(实测出来的,不是猜的)
  • 我们的数据库账号改不动 products 这张老表:它归 postgres 账号管,加一个新品类要更高权限
  • 但我们能建自己的新表,新表归我们自己管,加字段加规矩都随意
  • Supabase 控制台的 SQL 编辑器是唯一能改老表的地方,要人手动粘一次
约束三条都在 2026-09-23 直连生产库实测过:ALTER products 被拒(must be owner),CREATE TABLE 通过(新表主人 = directus);探针全程在事务里并已回滚

2 · 方案对比Options

方案 A · 只把商城那 9 样新品补进现有的 products 表最小
核心理念
不建新东西,把机器和纪念品当成两种新商品塞进现有那张表
优点
货架代码已经写好了,改完一条 SQL 当天就能看到 14 样
风险
回答不了「我们卖什么」:订场、团餐、合作还是查不到;而且要等人去控制台粘 SQL,我们自己动不了
方案 B · 新建一张「在卖的东西」总表,商城那张表保持原样推荐
核心理念
后台加一张新表,一条线一行(商城周边、Future Max、订场、团餐……),写清楚卖什么、多少钱、定没定、谁哪天定的、在哪儿卖。商城的 products 表继续管「网上能买的每一个具体商品」,两张表各管一层,不抢活
优点
我们自己就能建,不用等任何人授权;一页看完全部家底;没定价的东西第一次有了正式的落脚点
风险
多一张要维护的表;如果没人更新就会变成一份过期的清单。靠「每行必须写谁哪天定的」和一条每月检查来兜
方案 C · 不建表,在后台首页挂一块写死的清单最省事
核心理念
把这份清单做成后台里的一块说明板,人工维护
优点
半小时能上,零数据库改动
风险
写死的东西必然过期,而且改价钱要改代码,这正是今天这个毛病的成因

为什么选 B:Jack 问的是「后台有没有我们在卖的东西的清单」,A 只覆盖最小的一块、还得等人手动操作;C 治标不治本。B 是唯一能自己动手做完、又真正回答问题的。放弃了什么:B 不做「改了价钱自动同步到网站」,那要接一堆线,先让后台看得见,能不能是下一步的事。

3 · 分解树Decomposition

P0
Jack 在 Supabase 控制台粘一次 SQL,把商城那道「只认咖啡豆和 T恤」的限制放宽
依赖:无。文件已写好:supabase/migrations/20260923130000_shop_machine_souvenir_types.sql只有 Jack 能做这一步,我们的账号权限不够
完成 = 我能把 9 行新品插进去且不报错
P0
把 9 样新品插进商城表,先只对自己人可见
依赖:上一块
完成 = 后台 products 有 14 行;网址带 ?mode=test 能看到完整货架;普通访客看到的还是原来 5 样
P0
建「在卖的东西」总表,把上面清单里六条线全录进去
依赖:无,可以跟前两块并行。我们自己建得了
完成 = 后台导航里多一项,点进去一页看完所有在卖的线;没定价的行明确写着「未定」和「等谁定」
P1
把散在各处的数搬进这张表:订场每位 $20 / 社区价 $10、Max 的 $1,999
依赖:上一块
完成 = 这三个数在后台查得到,且标着来源日期;代码里那份仍是收款时的准数,表里这份是给人看的
P1
Jack 定纪念品出哪几样、各多少钱,我改数字并翻成正式上架
依赖:前两块 + Jack 回话
完成 = 访客在 yummy-future.com/shop 上真能买到纪念品
P2
每月一次自动对账:表里的价钱跟代码/环境变量里的对不上就报到 Slack
依赖:P1 两块
完成 = 故意把表里的数改错,下一次检查能报出来

4 · 未知项Unknowns

我们的数据库账号能建自己的新表,也能给自己建的表加规矩
已知:2026-09-23 直连生产库实测,新表主人是我们自己;探针已回滚,库里没留东西
同一个账号改不动 products 这张老表
已知:同一次实测,数据库原话 must be owner of table products
?
新表建好后,后台能像其它表一样正常显示(中文标签、下拉、权限)
验证方式:照 ops/directus/ 里已有的几个建表脚本抄一遍,建完跑一次现成的体检脚本 audit-views.mjs 打分
??
团餐到底怎么收费:按人头、按杯,还是起步价加人头Business
research handoff:团餐页面和 PRD 都没有任何价格;老 Netlify 表单存档里有 16 条真实询价,可以看看客人自己报的预算和人数,给 Jack 一个有数据托底的建议
??
机器卡上到底要不要写定金、写多少Business
research handoff:2026-08-29 Jack 说过硬件卡要写定金数额而不是「价格面议」,数字一直没给。现在货架上是「Request a quote」没有定金字样,要么补数字,要么正式把那条决定撤掉
??
Max 那笔算不平的账怎么补(每台每年差 $6,012)Business
research handoff:四个选项已在 docs/prd/max-gtm-tactics.html 摆好,这份文档不重复论证,只在清单里标「这个价是拍板过的,但目标对不上」

5 · 决策记录Decision log

选了什么:新建一张「在卖的东西」总表,不动现有的商城表
理由:这是唯一不用等授权、又能真正回答「我们卖什么」的做法
2026-09-23
商城的价格仍以 products 表为准,新表只是给人看的
理由:收钱那条路已经有一条硬规矩:价格只能由服务端查 products 表算出。新表若也能定价,就有两个说了算的地方,迟早出事
2026-09-23
新品一律先只对自己人可见,Jack 点头才正式上架
理由:插错了访客也看不见,不用回滚
2026-09-23
纪念品出哪几样、各多少钱未决
现在货架上那四样和四个价都是我提的,不是定案
等 Jack
团餐怎么收费未决
页面、PRD、后台三处都没有任何价格;这是六条线里唯一「在卖但完全没有价」的
等 Jack
机器卡上写不写定金未决
2026-08-29 定过「要写定金数额」,数字一直没给;今天货架上是「Request a quote」
等 Jack
接缝 · Linked