Skip to content

docs(maintainer): handoff updated to the final state, with the production record - #1795

Merged
Ikalus1988 merged 1 commit into
mainfrom
docs/handoff-final
Sep 17, 2026
Merged

Ikalus1988 merged 1 commit into
mainfrom
docs/handoff-final

Conversation

@Ikalus1988

@Ikalus1988 Ikalus1988 commented Sep 17, 2026

Copy link
Copy Markdown
Owner

User description

Handoff updated to the state after every workstream landed, plus the first production verification.

§3 rewritten — no longer "in flight": each of the seven workstreams that merged, with the one-line reason it matters, and the hunk-splitting method recorded for next time (the same one-file/one-owner rule that came out of today's incident).

§7 rewritten — what is genuinely next, in order: the two maintainer actions (first /adopt, and a token-bearing production re-verification), waiting for the hit-rate denominator to have data before B1 can be evaluated at all, the two deliberate tails of #1780 (FAQ expansion; trigger in the index text, which needs an INDEX_TEXT_VERSION bump and therefore a full rebuild — to be weighed, not done by reflex), the disposition of #1713#1716, and the six verified-but-unclaimed severe findings from the misakanet/ scan in #1775.

New §8 — production record, honestly split:

query result
如何切换识图模型 ✅ two hits, correct lesson on top — this returned zero before #1794, so the acceptance point passed
定时任务不执行 ⚠️ hits, but the top one is wrong: aliasing buys recall, not precision for every phrasing
two more probes hits=0, consistent with the anonymous 5-reads/day/IP quota being used up by the probe itself; the with-token retry hit TLS timeouts here. Recorded as 未判定, with copy-pasteable commands and the token path for the next attempt

That distinction is deliberate: this stretch already cost hours because a green signal was hiding a real failure, so an inconclusive probe is written down as inconclusive.

Two process lessons added, both paid for today:

  1. never git checkout <ref> -- <file> in a shared working tree to get a clean copy — it erased another agent's uncommitted work here; use a separate worktree or git show <ref>:<path>;
  2. "deploy succeeded" is a statement about plumbing, not behaviour — the only verdict is a real query against production.

PR Type

Documentation, Other


Description

  • Rewrite handoff §3 from "在途" to "全部落地" with seven landed workstreams

  • Add new §8 recording first production verification of alias wiring

  • Document two process lessons on shared worktree and deploy vs behaviour

  • Rewrite §7 as concrete next steps ordered by dependency


Diagram Walkthrough

flowchart LR
  A["§3 在途 → 全部落地<br/>七个工作流汇总"] --> B["§4 维护者介入<br/>首次 /adopt 待做"]
  B --> C["§6 流程教训<br/>+2 条"]
  A --> D["§7 真正的下一步<br/>按依赖排序"]
  A --> E["§8 新增<br/>生产验证记录"]
  E --> F["✅ 验收点达成<br/>如何切换识图模型"]
  E --> G["⚠️ 召回≠精度<br/>定时任务不执行"]
  E --> H["❓ 未判定<br/>配额耗尽 + TLS 抖动"]
Loading

File Walkthrough

Relevant files
Documentation
handoff-2026-09-16.md
Handoff final state + production verification record         

docs/maintainer/handoff-2026-09-16.md

  • Header rewritten to span 09-16 → 09-17 with summary of "六个工作流全部落地"
  • §3 rewritten from "在途" (in flight) to "全部落地" listing seven landed
    workstreams with key points and hunk-splitting method
  • §4 adds a 09-17 update note: PAT not needed for /adopt;
    auto-merge-lesson label created
  • §6 adds two process lessons: never git checkout -- in shared
    worktrees; "deploy succeeded" ≠ behaviour verified
  • §7 rewritten as five concrete next steps ordered by dependency (not as
    PR-merge checklist)
  • New §8 documents the first production verification of alias wiring
    (如何切换识图模型 ✅, 定时任务不执行 ⚠️, two probes ❓未判定) with copy-pasteable retry
    commands
+53/-17 

…tion record

Every workstream that was "in flight" when this file was written has landed, so §3 is rewritten as
what shipped (with the one-line reason each matters), §7 as what is genuinely next, and a new §8
records the first production verification of the alias wiring:

- `如何切换识图模型` — a plain Chinese question that returned **zero** hits before #1794 — now
  returns two, with the correct lesson on top. That was the acceptance point, and it passed.
- `定时任务不执行` returns hits but the **top one is wrong**: aliasing buys recall, not precision
  for every phrasing.
- Two further probes were inconclusive (`hits=0`), consistent with the anonymous 5-reads/day/IP
  quota being used up by the probe itself, and the with-token retry hit TLS timeouts from this
  machine. Recorded as **未判定**, with the exact commands to re-run with a token — because the
  lesson of this stretch is precisely that a green signal hid a real failure for hours.

Two process lessons added, both paid for today: never use `git checkout <ref> -- <file>` in a
shared working tree to get a clean copy (it erased another agent's uncommitted work here; use a
separate worktree or `git show <ref>:<path>`), and treat "deploy succeeded" as a statement about
plumbing rather than behaviour — the only verdict is a real query against production.

Signed-off-by: Ikalus1988 <136884451+Ikalus1988@users.noreply.github.com>
@Ikalus1988 Ikalus1988 added area:docs docs-only Only documentation files changed shape-safe labels Sep 17, 2026
@cloudflare-workers-and-pages

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
misakanet-web 7eb45a0 Commit Preview URL

Branch Preview URL
Sep 17 2026, 07:36 AM

@Ikalus1988

Copy link
Copy Markdown
Owner Author

🧾 Audit Report — PR #1795 (7eb45a0)

📊 Quality Score

⚠️ Quality score unavailable; continuing with hard gates.

🔏 DCO Audit

✅ All commits signed-off.

📏 PR Size

Metric Value
Files Changed 1
Lines Added 53

🔐 Secret Scan

✅ No hardcoded secrets detected.

📦 Dependency Audit

⏭️ Skipped; no Python/JS dependency files changed.

🧪 Test Suite

PASS — 53% coverage

📋 Lesson Schema

✅ All lessons valid.

⚖️ Verdict

✅ All gates passed. Ready for merge.


Scope: full | Triggered by 7eb45a0 | View run

@github-actions

Copy link
Copy Markdown
Contributor

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

🎫 Ticket compliance analysis ❌

1780 - Partially compliant

Compliant requirements:

Non-compliant requirements:

Requires further human verification:

1713 - Not compliant

Non-compliant requirements:

  • No lesson file added or modified by this PR; ticket is only mentioned in §7.4 as "pending disposition"

1716 - Not compliant

Non-compliant requirements:

  • No lesson file added or modified by this PR; ticket is only mentioned in §7.4 as "pending disposition"
⏱️ Estimated effort to review: 1 🔵⚪⚪⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Factual claim to verify

The doc references PR #1794 as the one that wired the synonym table (the work ticket #1780 asked for). Since this PR is purely a status doc and contains none of the wiring code, an experienced reviewer should independently confirm that #1794 (a) actually exists, (b) is merged, (c) implements the MISAKANET_QUERY_ALIASES switch with default-on, (d) keeps INDEX_TEXT_VERSION at 3, and (e) covers both worker and search_knowledge.py. Otherwise the handoff's "已合并" claim in §3 row 7 is unsupported by anything in this diff. The same caveat applies to the specific commit SHA 8d362241a and deploy run "143" cited in §8.

| **#1780** 接线近义词表 | 已合并 | worker + 本地 CLI 同表同开关;统一旧 `_SYNONYM_MAP`(30 条迁移为 `related` 降级层);`INDEX_TEXT_VERSION` 保持 3(查询期展开,索引文本未变) |
Cross-reference to verify

§7.3 and §8 point to docs/maintainer/query-alias-design-2026-09-16.md §8.7 for the rationale on FAQ expansion and trigger indexing. If that section does not actually exist (file may not yet have §8.7, or may be named differently), readers following the breadcrumb will hit a dead end. Confirm the target section exists before merging.

3. **#1780 的两个尾巴**:FAQ 匹配器是否跟随展开;`trigger` 是否并入 BM25 索引文本(并入需要 bump `INDEX_TEXT_VERSION` 并承担一次全量重建——要把这个代价和收益一起评估,别顺手做)。
4. **#1713#1716 的处置**:改一行 provenance 即可合并;对方不响应时决定关闭还是补写。
5. **零散但值得**`workers/register-proxy-sw.js`(4475 行)的 ocr 切片扫描结果在 issue #1775,其中 6 条已核实的严重项仍待认领(freshness 列表解析、heal.py 写原始日志、remote.py 路径拼接等)。

---

## 8. 生产验证记录(2026-09-17 上午,首次)

`#1794`(接线近义词表)合并后 worker 自动部署成功(deploy-worker run 143 @ `8d362241a`),随即在生产端点 `https://misakanet.org/mcp` 上验证:

| 查询 | 结果 | 读法 |
|---|---|---|
| `如何切换识图模型` |**2 条命中,top = 《多模型Switch脚本模式 — 双 Agent 模型管理》** | 这句纯中文问句在接线前返回 **0 条****这是 #1794 的验收点,已达成** |
| `定时任务不执行` | ⚠️ 有命中(2 条)但 **top 是错的**(GBK 编码那篇,不是 cron 那篇) | 别名给的是**召回**,不是这个句式下的精度;与评测中"仍有 4 条失败"一致 |
| `switch vision model` / `如何切换视觉模型` |`no_match=False hits=0` |**匿名配额(5 次/天/IP)被本轮探测用尽**的表现一致;改用本机 token 复验时 `misakanet.org` 出现 TLS 握手超时(本会话反复出现,属网络抖动),**未判定** |

**下次复验请带 token**(本机可用:`/tmp/pub-cc/.misakanet-agent/token` 或安装器写入的 `~/.misakanet-agent/token`),并顺手确认:

```bash
curl -sS "https://misakanet.org/api/search-signals/stats?days=7" | python3 -m json.tool   # 期望 200 + rows 非空且在增长
curl -sS https://misakanet.org/mcp -H 'Content-Type: application/json' -H 'Accept: application/json' \
  -H 'MCP-Protocol-Version: 2025-06-18' -H 'Origin: https://misakanet.org' \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"misakanet_search","arguments":{"query":"定时任务不执行","top":2}}}'

不要把"两次无法判定"写成通过——这一轮已经因为"绿灯掩盖真红"付过代价(见 §6)。

仍未做的#1780 的 FAQ 匹配器没有跟着展开(阈值语义会变,离线评测看不到 FAQ 语料);trigger 尚未并入 BM25 索引文本。两条都写在 docs/maintainer/query-alias-design-2026-09-16.md §8.7。


</details>

</td></tr>
</table>

<!-- pr-agent-review-state:v1
{"findings":[{"body":"**Factual claim to verify** The doc references PR #1794 as the one that wired the synonym table (the work ticket #1780 asked for). Since this PR is purely a status doc and contains none of the wiring code, an experienced reviewer should independently confirm that #1794 (a) actually exists, (b) is merged, (c) implements the `MISAKANET_QUERY_ALIASES` switch with default-on, (d) keeps `INDEX_TEXT_VERSION` at 3, and (e) covers both worker and `search_knowledge.py`. Otherwise the handoff's \"已合并\" claim in §3 row 7 is unsupported by anything in this diff. The same caveat applies to the specific commit SHA `8d362241a` and deploy run \"143\" cited in §8.","finding_id":"12643064cbe5","first_seen":"2026-09-17T07:38:34.421088Z","last_seen":"2026-09-17T07:38:34.421088Z","last_seen_head_sha":"7eb45a0496c3887c264b28009cb58f2db3b9526b","line_end":48,"line_start":48,"path":"docs/maintainer/handoff-2026-09-16.md","state":"ACTIVE"},{"body":"**Cross-reference to verify** §7.3 and §8 point to `docs/maintainer/query-alias-design-2026-09-16.md §8.7` for the rationale on FAQ expansion and `trigger` indexing. If that section does not actually exist (file may not yet have §8.7, or may be named differently), readers following the breadcrumb will hit a dead end. Confirm the target section exists before merging.","finding_id":"d72dcc215899","first_seen":"2026-09-17T07:38:34.421088Z","last_seen":"2026-09-17T07:38:34.421088Z","last_seen_head_sha":"7eb45a0496c3887c264b28009cb58f2db3b9526b","line_end":116,"line_start":88,"path":"docs/maintainer/handoff-2026-09-16.md","state":"ACTIVE"}],"last_run":{"complete":true,"excluded_files":[],"head_sha":"7eb45a0496c3887c264b28009cb58f2db3b9526b","kind":"full","run_id":"https://github.com/Ikalus1988/MisakaNet/commit/7eb45a0496c3887c264b28009cb58f2db3b9526b"},"schema_version":1}
-->

@github-actions

Copy link
Copy Markdown
Contributor

PR Code Suggestions ✨

No code suggestions found for the PR.

@Ikalus1988
Ikalus1988 merged commit 835b260 into main Sep 17, 2026
26 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

Merged! Thanks again, @Ikalus1988.

docs(maintainer): handoff updated to the final state, with the production record (+53 lines, 1 files)

Quick question — did any MisakaNet lesson help you this time?
Share feedback

No need to reply if nothing comes to mind. ⚡

@github-actions

Copy link
Copy Markdown
Contributor

🎉 Merged — Thank you!

Your contribution has been merged into main.

PR: #1795 — docs(maintainer): handoff updated to the final state, with the production record

What's next:

  • Your code is now part of MisakaNet's failure-lesson corpus (now 393 lessons)
  • Feel free to pick up another issue labeled good first issue or status: competition
  • Questions? Ask in this thread or open a Discussion

Welcome to the MisakaNet contributor community! 🧠

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant