Edge 插件过审却搜不到:一场'语言区域'误诊与自有分发链路落地

AI 工作日志 作者头像野生码农 阅读 12 min
返回板块 GEO 源码全文 ✓
Edge 插件过审却搜不到:一场'语言区域'误诊与自有分发链路落地

Edge 插件过审却搜不到:一场"语言区域"误诊与自有分发链路落地

背景与目标

元素拾取器插件(v1.1.1)在 Edge 加载项商店审核通过、状态 Live,但商店搜索框里全名都搜不到。合作伙伴中心 Store listings 里语言一行只显示"英语(美国)",我怀疑是这个把插件"分到美国区"了。目标:搞清楚搜不到的根因,能修就修,修不了就绕。

过程回顾

尝试 1:怀疑语言区域限制(方向错误,但逼出了真知识)。 军师查了微软官方文档和 Edge 扩展团队 GitHub 官方仓库,拿到两条硬事实:

  1. 后台 listing 语言不是手选的,是扫描上传包识别的:manifest 用硬编码字符串(没有 default_locale + _locales + __MSG_xxx__ 占位符)时,只回退显示"英语(美国)"——我们的 manifest 正是硬编码中文串,所以永远只有英语一行;
  2. 官方原话:"Locales are used to localize the extension or the Store Listing. It does not affect the visibility of the extension in any markets." 语言只决定商店页文字,不影响任何市场可见性。

尝试 2:i18n 改造重打包(治本语言行)。 按官方三件套改:manifest 四处硬编码串改 __MSG_xxx__ 占位符、加 "default_locale": "zh_CN"、新建 _locales/zh_CN/messages.json(原中文案原样保留),版本升 1.1.2 重打 zip。中间撞了一个坑:首版英文描述 200+ 字符,超出商店 190 字符上限,压缩到 178 字符才过。随后本人拍板"不需要英文版",删 _locales/en 重打纯中文包。

尝试 3:在审提交冻结(流程坑)。 纯中文包打好时,双语版 1.1.2 已被点发布进入审阅——审阅中的提交包和 listing 全冻结,本地改什么都影响不到它。解法:取消提交换包重提。本人自行操作后,Store listings 只剩"中文(中国)"一行。

真相浮现:直达链接能开 = 全球在架,"分到美国"证伪。 本人贴出商店直达链接"这个能打开呀"——这就是决定性证据:任何人点链接都能进页面安装,所谓区域限制长的是"国外能开、国内 404"的样子,我们不是。真正症状只剩一个:商店搜索索引没收录,这在后台没有任何开关,唯一通道是审核上线后等 ≤7 个工作日,超时提工单。

收口:自有分发链路落地。 本人裁定"为这个东西浪费太多时间,不值得",转向自有渠道:把商店链接和自托管 zip 写进博客已发布文章 /a/330,把 v1.1.2 zip 上传本站。执行中抓到一个环境真相:www.wdmeng.cn 的 nginx root 实际指向 geo.wdmeng.cn/buildadmin/public(两域名共用站点目录),第一把 scp 传到 www 目录下直接 No such file or directory,改传 geo 目录才通。文章正文落库用服务器 PHP 直写(UPDATE ba_articles id=330),改前 mysqldump 备份 3.3MB。

关键踩坑

现象 根因 解决
军师把"你把插件关掉了"列为搜不到头号原因,被本人怼"我能傻到这种程度?" 时间线误读:本人是先搜不到、折腾半天之后才关的,关掉是结果不是原因 收回该条,重新聚焦"Live 状态下搜不到",并要求三个事实(上架天数/全名能否搜到/直达链接能否开)确诊
listing 语言只有"英语(美国)" manifest 硬编码串,无 i18n 三件套,后台扫描识别不出语言 default_locale + _locales + __MSG_ 占位符,重传包后中文行出现
英文描述提交报错"超出 190 字符" manifest description 有 190 字符硬上限 压缩到 178 字符(实测)
本地重打包后后台"还是美国" 在审提交冻结,锁定的是旧双语包 取消提交、换纯中文包重提
scp 传 zip 报 No such file or directory www 与 geo 域名共用 root,实际文件在 geo.wdmeng.cn 目录下 传 geo.wdmeng.cn/buildadmin/public/storage/ipms/element-picker/,curl 验证 200

最终方案(落地态)

  • 插件包:v1.1.2 纯中文 i18n 包(工具/element-picker/dist/element-picker-v1.1.2.zip,8116 字节,内含 _locales/zh_CN 单一语言);
  • 商店:纯中文包已提交,Store listings 仅"中文(中国)"一行;搜索收录等 ≤7 个工作日,超时提工单(工单文案已备好);
  • 自有分发:/a/330 文章新增"下载安装(已过审上架)"一节(商店直达链接 + 本站 zip),zip 自托管于 https://www.wdmeng.cn/storage/ipms/element-picker/element-picker-v1.1.2.zip(HTTP 200 / application-zip 实测);
  • 安全垫:改库前备份 /root/backup/ba_articles_before_a330_update_20260929_041702.sql;线上原稿与新稿本地留档 项目/GEO博客/a330_orig.md、a330_new.md。

做得好的地方

  1. 证据对冲而不是谁声音大听谁的:本人坚持"被分到美国",军师没有顺从也没有硬顶,而是拿官方原话 + 直达链接可开两个可验证证据摆出来,本人看完自己接受;
  2. 一次改动多重收益:i18n 改造既治了"语言行选不上中文"的标,重传包动作本身又触发商店重新收录,不白做;
  3. 本人止损果断:"就这样吧,不值得"——把死磕商店搜索转为自有渠道分发,直达链接本来就不依赖搜索收录,引流链路(发布指南第四节)当天跑通。

复盘与改进

  1. 军师失分:因果倒置。 第一轮把"你把插件关掉了"写成搜不到的头号原因——本人原话的时间线("折腾了半天…现在我把插件关掉去了")已经内含先后,读题不细。改进:排障回答先还原时间线再列原因,本人已排除的选项不得回锅。
  2. 军师失分:首答把两个独立问题混讲。 "语言只能选英语"(包结构问题)和"搜不到"(索引问题)根因不同,首答的表述倾向让本人误以为语言就是元凶,多绕一轮。改进:多症状排障,每个症状单独归因、单独给验证方法。
  3. 流程发现:geo-push 管线只插新行不更旧文。 本次更新已发布文章走的是人工改库路径(备份 + PHP 直写 + 实跑验证),技能文档里"另派单"的口子被实例化,经验可沉淀:更新旧文 = 拉原文 → 本地改 → 备份 → 直写 → 前台验证。
  4. 收尾缺口:本次改动未 commit。 工具/element-picker/(manifest、发布指南、_locales、v1.1.2 zip)与 项目/GEO博客/a330_*.md 仍在工作区未入库,git log 最近一笔还是 09-19 的快照。

成长评估

维度 分 证据
指令与提示词质量 8 "你把发布包里面的英文给我去掉,我不需要英文版"——零背景、边界清晰、一次到位;"你把我把这个链接更新到这篇文章里面去,另外这个发布包也上传到我自己的网站"——两个动作一句话派完。扣分项:前期未提供"过审到关停间隔几天"这一关键排障事实
判断与结论 7.5 "语言区域有问题"的怀疑方向错误但合理(标签写着"英语(美国)",任谁都犯嘀咕);被证据纠正后不纠缠,立刻接受并转向;"取消发布前先搜不到"的时间线记忆准确,一次就抓住了军师的因果倒置
思维方式 8.5 用"这个能打开呀"做实证反驳,正是工程师思维;"搜索不到就不值得折腾、改走直达链接分发"是目标导向的止损——要的是用户能装,不是商店面板好看
最终结果与产出 9 一天内:i18n 包落地、中文 listing 成形、博客分发链路实跑全绿(zip 200 / 文章链接上线 / 备份留档),且全程可回滚
AI 协作能力 8.5 两次果断纠偏军师(因果倒置那次直接怼回事实);争论中接受证据而非坚持立场;派单粒度刚好(给 URL、给目标、不管实现)

AI 自评失分点:① 因果倒置把"关插件"列为头号原因(被本人当场抓);② 首答未把"语言标签"与"市场可见性"劈开讲,助长了误诊方向;③ scp 传文件前没先确认 nginx root 真实指向,白失败一把。

指令实证:

  1. "你把发布包里面的英文给我去掉,我不需要英文版"→ AI 行为:放弃"语言不影响可见性"的再解释(已说两次,尊重拍板),删 _locales/en 重打纯中文包。证据:zip 内容清单仅 _locales/zh_CN/messages.json(dist/element-picker-v1.1.2.zip)。这类指令的价值:在 AI 反复论证"技术上没必要"时,一句话终结论证、明确偏好优先级。
  2. "就这样吧,为这个东西浪费太多的时间……你把链接更新到这篇文章,发布包上传到我自己的网站"→ AI 行为:从商店搜索死磕切换到自有分发落地,当轮完成文章更新 + zip 上站 + 全量验证。证据:/a/330 页面含商店链接与 zip 链接(curl 命中实测)。这类指令的价值:明确"够用就好"的验收线,防止 AI 在完美主义方向上空转。

素材点

  • 官方口径金句:"Locales are used to localize the extension or the Store Listing. It does not affect the visibility of the extension in any markets."(MicrosoftEdge-Extensions Discussion #44);
  • i18n 三件套:default_locale + _locales/<lang>/messages.json + __MSG_xxx__ 占位符,缺一只显示"英语(美国)";
  • Edge 商店 manifest description 上限 190 字符,报错文案"字段的转换过长";
  • 审阅中的提交全冻结,换包必须取消重提;
  • 商店搜索索引 ≤7 个工作日,超时唯一通道 = 合作伙伴中心支持工单;
  • 环境真相:www.wdmeng.cn 与 geo.wdmeng.cn 共用 nginx root(geo.wdmeng.cn/buildadmin/public),静态资源传输以此为准;
  • 人机分工双向纠偏案例:AI 因果倒置被人抓(怼得对),人方向性误判被证据纠(接得住)。
野生码农头像

关于作者 · 野生码农

把 AI 真放进生产环境的独立开发者。自研本地知识库、数字员工团队、软考备考系统、量化交易四套系统,全程公开复盘。

看他的平台账号 →
相关

继续阅读