Conversation
Reviewer's Guide此 PR 增加了详细的 2025 年会议记录,将索引和笔记标题中的 2024–2025 日期统一本地化为一致的中文日期格式,并加固 mu-lu.md 自动更新的 GitHub Actions 工作流:仅在需要时创建/提交变更,同时更新工作流依赖并将检出认证方式切换为使用 SSH 部署密钥。 更新后 mu-lu.md 自动更新工作流的时序图sequenceDiagram
actor Developer
participant GitHub as GitHub
participant Workflow as GitHub_Actions_Workflow
participant Runner as Actions_Runner
participant Checkout as actions_checkout_v6
participant Process as process_mu_lu_step
participant AutoCommit as git_auto_commit_action_v7
participant Repo as Repository
Developer->>GitHub: push SUMMARY.md
GitHub-->>Workflow: trigger mulu workflow
Workflow->>Runner: start job update-mu-lu
Runner->>Checkout: run with ssh_key and fetch_depth 0
Checkout->>Repo: authenticate via SSH deploy key
Repo-->>Checkout: repository contents
Runner->>Process: run mu-lu.md processing script
alt mu-lu_does_not_exist
Process->>Repo: copy SUMMARY.md to mu-lu.md
Process->>Process: replace heading Table_of_contents with 目录
Process-->>Runner: output changed=true
else mu-lu_exists_and_is_up_to_date
Process->>Process: create mu-lu-2.md with heading Table_of_contents
Process->>Process: compare SUMMARY_tail with mulu2_tail
Process-->>Runner: output changed=false
else mu-lu_exists_and_needs_update
Process->>Process: create mu-lu-2.md with heading Table_of_contents
Process->>Process: compare SUMMARY_tail with mulu2_tail
Process->>Repo: replace mu-lu.md with SUMMARY.md
Process->>Process: replace heading Table_of_contents with 目录
Process-->>Runner: output changed=true
end
alt changed_is_true
Runner->>AutoCommit: commit mu-lu.md with message
AutoCommit->>Repo: git commit and push
Repo-->>Developer: updated mu-lu.md on default branch
else changed_is_false
Runner-->>GitHub: job completes without commit
end
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your Experience访问你的 dashboard 以:
Getting HelpOriginal review guide in EnglishReviewer's GuideThis PR adds detailed 2025 meeting minutes, localizes 2024–2025 dates to a consistent Chinese format across the index and note titles, and hardens the mu-lu.md auto-update GitHub Actions workflow to only create/commit when needed while updating workflow dependencies and checkout authentication to use an SSH deploy key. Sequence diagram for updated mu-lu.md auto-update workflowsequenceDiagram
actor Developer
participant GitHub as GitHub
participant Workflow as GitHub_Actions_Workflow
participant Runner as Actions_Runner
participant Checkout as actions_checkout_v6
participant Process as process_mu_lu_step
participant AutoCommit as git_auto_commit_action_v7
participant Repo as Repository
Developer->>GitHub: push SUMMARY.md
GitHub-->>Workflow: trigger mulu workflow
Workflow->>Runner: start job update-mu-lu
Runner->>Checkout: run with ssh_key and fetch_depth 0
Checkout->>Repo: authenticate via SSH deploy key
Repo-->>Checkout: repository contents
Runner->>Process: run mu-lu.md processing script
alt mu-lu_does_not_exist
Process->>Repo: copy SUMMARY.md to mu-lu.md
Process->>Process: replace heading Table_of_contents with 目录
Process-->>Runner: output changed=true
else mu-lu_exists_and_is_up_to_date
Process->>Process: create mu-lu-2.md with heading Table_of_contents
Process->>Process: compare SUMMARY_tail with mulu2_tail
Process-->>Runner: output changed=false
else mu-lu_exists_and_needs_update
Process->>Process: create mu-lu-2.md with heading Table_of_contents
Process->>Process: compare SUMMARY_tail with mulu2_tail
Process->>Repo: replace mu-lu.md with SUMMARY.md
Process->>Process: replace heading Table_of_contents with 目录
Process-->>Runner: output changed=true
end
alt changed_is_true
Runner->>AutoCommit: commit mu-lu.md with message
AutoCommit->>Repo: git commit and push
Repo-->>Developer: updated mu-lu.md on default branch
else changed_is_false
Runner-->>GitHub: job completes without commit
end
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
@sourcery-ai title |
There was a problem hiding this comment.
Hey there - I've reviewed your changes - here's some feedback:
- 当前工作流引用了
actions/checkout@v6,但该官方 Action 目前只发布到了 v4;这在运行时会失败,应当固定到一个已存在的主版本(例如@v4)或固定到某个具体的提交 SHA。 - 脚本会在
/tmp目录下创建临时文件(/tmp/summary_tail.txt和/tmp/mulu2_tail.txt),但从未删除它们;建议在步骤结束时清理这些临时文件,避免在 runner 上留下陈旧文件。
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- 当前工作流引用了 `actions/checkout@v6`,但该官方 Action 目前只发布到了 v4;这在运行时会失败,应当固定到一个已存在的主版本(例如 `@v4`)或固定到某个具体的提交 SHA。
- 脚本会在 `/tmp` 目录下创建临时文件(`/tmp/summary_tail.txt` 和 `/tmp/mulu2_tail.txt`),但从未删除它们;建议在步骤结束时清理这些临时文件,避免在 runner 上留下陈旧文件。
## Individual Comments
### Comment 1
<location> `.github/workflows/mulu.yml:20-26` </location>
<code_context>
fetch-depth: 0
- - name: Delete existing mu-lu.md if exists
+ - name: Process mu-lu.md
+ id: process
run: |
- if [ -f mu-lu.md ]; then
- echo "Deleting existing mu-lu.md..."
- rm mu-lu.md
- else
- echo "mu-lu.md not found, skipping deletion."
+ set -e
+
+ # 如果 mu-lu.md 不存在,直接生成
+ if [ ! -f mu-lu.md ]; then
+ cp SUMMARY.md mu-lu.md
+ sed -i '1s/^# Table of contents$/# 目录/' mu-lu.md
</code_context>
<issue_to_address>
**suggestion:** 当前逻辑假设 SUMMARY.md 的第一行恰好是 `# Table of contents`,如果标题发生变化,这个假设会比较脆弱。
`mu-lu.md` 上的 `sed` 替换(以及稍后在 `mu-lu-2.md` 上的反向替换)只有在第一行完全等于 `# Table of contents` 时才会生效。任何文字内容、大小写或前导空格的变化都会导致替换被跳过,从而让后续比较出现意料之外的行为。建议使用更宽松的匹配方式(例如允许前导空格或更广义的正则),或者增加一个显式检查,确认标题符合预期格式,否则尽早失败。
建议实现方式如下:
```
# 如果 mu-lu.md 不存在,直接生成
if [ ! -f mu-lu.md ]; then
cp SUMMARY.md mu-lu.md
# 允许前导空白、大小写变化以及多空格的更宽松匹配
sed -i -E '1s/^[[:space:]]*#[[:space:]]*[Tt]able[[:space:]]+of[[:space:]]+contents[[:space:]]*$/# 目录/' mu-lu.md
# 如果首行并不是期望的标题,则快速失败,避免后续比较出现隐蔽问题
if ! head -n 1 mu-lu.md | grep -q '^# 目录$'; then
echo "ERROR: SUMMARY.md first heading is not the expected 'Table of contents' format."
echo "Please update this workflow or adjust SUMMARY.md's first heading."
exit 1
fi
echo "mu-lu.md created from SUMMARY.md"
echo "changed=true" >> $GITHUB_OUTPUT
exit 0
fi
```
在该工作流的后面,`mu-lu-2.md` 上很可能有一个反向的 `sed` 命令,将 `# 目录` 再转换回 `# Table of contents`(或类似内容)以进行比较。
你也应该以同样方式更新那个命令:
1. 使用同样宽松的正则表达式,允许前导空白和轻微的格式/大小写变化。
2. 添加类似的后置检查(例如 `head -n 1 mu-lu-2.md | grep -q '^# Table of contents$'`),在替换未发生时尽早失败。
按上述模式在两个方向上都进行修改,以保持逻辑对称且更加健壮。
</issue_to_address>
### Comment 2
<location> `2025/2025-08-22.md:15-17` </location>
<code_context>
+
+出席人员:markj、jfree、imp、des、jhb、kevans
+
+* Warner 提出关于 AI 使用政策的问题
+ * 两个问题:知识产权与(专业)能力
+ * Warner 认为,AI 工具已经超越了单纯复制粘贴代码的阶段
+ * 需要区分我们讨论的是“强化版的行补全”,还是让 LLM 生成大段代码
+ * 我们本就需要担心贡献者提交错误代码或复制粘贴的代码,因此对外部贡献者所持的怀疑程度实际上并未发生变化
+ * 不同的极端情况:自动补全 `SYSCTL_INT(<tab>`,与“这是数据手册,给我写个驱动”
+ * 希望制定一个非正式的政策:只要 LLM 没有完成“绝大部分”工作,就是可以接受的
+ * 提交补丁的人必须理解补丁中的所有内容
+ * AI 工具的使用也许应当被明确标注(例如通过 `git trailer`)
+ * 有人指出,其他项目同样在为该领域的规范而困扰,FreeBSD 项目应当关注这些进展,使自身政策与更广泛的开源社区保持一致
+* 需要尽快安排一次 bug 清理会议
+ * Warner 还希望单独进行一次 GitHub RP 集中合入会议
+* jhb 指出,在 eurobsdcon 期间我们有一天的空闲时间,应该利用起来做点事情
+
</code_context>
<issue_to_address>
**issue (typo):** “GitHub RP” 很可能是 “GitHub PR(pull request)” 的笔误
建议将此处的 “GitHub RP” 更正为 “GitHub PR 集中合入会议”,以避免术语误用。
```suggestion
* 需要尽快安排一次 bug 清理会议
* Warner 还希望单独进行一次 GitHub PR 集中合入会议
* jhb 指出,在 eurobsdcon 期间我们有一天的空闲时间,应该利用起来做点事情
```
</issue_to_address>
### Comment 3
<location> `2025/2025-11-28.md:50` </location>
<code_context>
+
+ * 看起来至少会保留 powerpc64le
+
+* phabricator 报告已发布在 [https://people.freebsd.org/~bnovkov/stale_reviews/](https://people.freebsd.org/~bnovkov/stale_reviews/)
+
+ * 但源代码管理团队仍未收到任何邮件
</code_context>
<issue_to_address>
**issue (typo):** “phabricator” 建议首字母大写为 “Phabricator”
这是专有名词(代码审查工具的名称),应保持官方写法,以保证拼写准确和文档的一致性。
```suggestion
* Phabricator 报告已发布在 [https://people.freebsd.org/~bnovkov/stale_reviews/](https://people.freebsd.org/~bnovkov/stale_reviews/)
```
</issue_to_address>请帮我变得更有用!欢迎在每条评论上点 👍 或 👎,我会根据你的反馈改进后续评审。
Original comment in English
Hey there - I've reviewed your changes - here's some feedback:
- The workflow now references
actions/checkout@v6, but the official action currently only publishes up to v4; this will fail at runtime and should be pinned to an existing major version (e.g.,@v4) or a specific commit SHA. - The script creates temporary files under
/tmp(/tmp/summary_tail.txtand/tmp/mulu2_tail.txt) but never removes them; consider cleaning these up at the end of the step to avoid leaving stale files on the runner.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- The workflow now references `actions/checkout@v6`, but the official action currently only publishes up to v4; this will fail at runtime and should be pinned to an existing major version (e.g., `@v4`) or a specific commit SHA.
- The script creates temporary files under `/tmp` (`/tmp/summary_tail.txt` and `/tmp/mulu2_tail.txt`) but never removes them; consider cleaning these up at the end of the step to avoid leaving stale files on the runner.
## Individual Comments
### Comment 1
<location> `.github/workflows/mulu.yml:20-26` </location>
<code_context>
fetch-depth: 0
- - name: Delete existing mu-lu.md if exists
+ - name: Process mu-lu.md
+ id: process
run: |
- if [ -f mu-lu.md ]; then
- echo "Deleting existing mu-lu.md..."
- rm mu-lu.md
- else
- echo "mu-lu.md not found, skipping deletion."
+ set -e
+
+ # 如果 mu-lu.md 不存在,直接生成
+ if [ ! -f mu-lu.md ]; then
+ cp SUMMARY.md mu-lu.md
+ sed -i '1s/^# Table of contents$/# 目录/' mu-lu.md
</code_context>
<issue_to_address>
**suggestion:** The logic assumes the first line of SUMMARY.md is exactly '# Table of contents', which may be brittle if the heading ever changes.
The `sed` replacement on `mu-lu.md` (and the inverse on `mu-lu-2.md`) will only work if the first line is exactly `# Table of contents`. Any change in text, casing, or leading spaces will skip the replacement and could make the later comparison behave unexpectedly. Consider a more tolerant match (e.g. allow leading whitespace or a broader regex) or add an explicit check that the header matches the expected format and fail fast otherwise.
Suggested implementation:
```
# 如果 mu-lu.md 不存在,直接生成
if [ ! -f mu-lu.md ]; then
cp SUMMARY.md mu-lu.md
# 允许前导空白、大小写变化以及多空格的更宽松匹配
sed -i -E '1s/^[[:space:]]*#[[:space:]]*[Tt]able[[:space:]]+of[[:space:]]+contents[[:space:]]*$/# 目录/' mu-lu.md
# 如果首行并不是期望的标题,则快速失败,避免后续比较出现隐蔽问题
if ! head -n 1 mu-lu.md | grep -q '^# 目录$'; then
echo "ERROR: SUMMARY.md first heading is not the expected 'Table of contents' format."
echo "Please update this workflow or adjust SUMMARY.md's first heading."
exit 1
fi
echo "mu-lu.md created from SUMMARY.md"
echo "changed=true" >> $GITHUB_OUTPUT
exit 0
fi
```
There is likely an inverse `sed` on `mu-lu-2.md` later in this workflow that converts `# 目录` back to `# Table of contents` (or similar) for comparison.
You should update that command in the same way:
1. Use a tolerant regex that allows leading whitespace and minor formatting/casing variations.
2. Add a similar post-check (e.g. `head -n 1 mu-lu-2.md | grep -q '^# Table of contents$'`) and fail fast if the replacement did not occur.
Apply the same pattern as in the change above to keep both directions symmetric and robust.
</issue_to_address>
### Comment 2
<location> `2025/2025-08-22.md:15-17` </location>
<code_context>
+
+出席人员:markj、jfree、imp、des、jhb、kevans
+
+* Warner 提出关于 AI 使用政策的问题
+ * 两个问题:知识产权与(专业)能力
+ * Warner 认为,AI 工具已经超越了单纯复制粘贴代码的阶段
+ * 需要区分我们讨论的是“强化版的行补全”,还是让 LLM 生成大段代码
+ * 我们本就需要担心贡献者提交错误代码或复制粘贴的代码,因此对外部贡献者所持的怀疑程度实际上并未发生变化
+ * 不同的极端情况:自动补全 `SYSCTL_INT(<tab>`,与“这是数据手册,给我写个驱动”
+ * 希望制定一个非正式的政策:只要 LLM 没有完成“绝大部分”工作,就是可以接受的
+ * 提交补丁的人必须理解补丁中的所有内容
+ * AI 工具的使用也许应当被明确标注(例如通过 `git trailer`)
+ * 有人指出,其他项目同样在为该领域的规范而困扰,FreeBSD 项目应当关注这些进展,使自身政策与更广泛的开源社区保持一致
+* 需要尽快安排一次 bug 清理会议
+ * Warner 还希望单独进行一次 GitHub RP 集中合入会议
+* jhb 指出,在 eurobsdcon 期间我们有一天的空闲时间,应该利用起来做点事情
+
</code_context>
<issue_to_address>
**issue (typo):** “GitHub RP” 很可能是 “GitHub PR(pull request)” 的笔误
建议将此处的 “GitHub RP” 更正为 “GitHub PR 集中合入会议”,以避免术语误用。
```suggestion
* 需要尽快安排一次 bug 清理会议
* Warner 还希望单独进行一次 GitHub PR 集中合入会议
* jhb 指出,在 eurobsdcon 期间我们有一天的空闲时间,应该利用起来做点事情
```
</issue_to_address>
### Comment 3
<location> `2025/2025-11-28.md:50` </location>
<code_context>
+
+ * 看起来至少会保留 powerpc64le
+
+* phabricator 报告已发布在 [https://people.freebsd.org/~bnovkov/stale_reviews/](https://people.freebsd.org/~bnovkov/stale_reviews/)
+
+ * 但源代码管理团队仍未收到任何邮件
</code_context>
<issue_to_address>
**issue (typo):** “phabricator” 建议首字母大写为 “Phabricator”
这是专有名词(代码审查工具的名称),应保持官方写法,以保证拼写准确和文档的一致性。
```suggestion
* Phabricator 报告已发布在 [https://people.freebsd.org/~bnovkov/stale_reviews/](https://people.freebsd.org/~bnovkov/stale_reviews/)
```
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
|
@sourcery-ai review |
There was a problem hiding this comment.
你好——我已经查看了你的修改,这里是一些反馈:
- 在 checkout 步骤中,你传入了一个
ssh-key,但保留了默认的 HTTPS 凭据和远程配置不变;如果你打算使用部署密钥通过 SSH 进行推送,建议添加persist-credentials: false,并显式配置 SSH 远程仓库,以确保推送时真正使用部署密钥。 Process mu-lu.md步骤会在/tmp中写入临时文件(summary_tail.txt和mulu2_tail.txt),但只清理了mu-lu-2.md;如果这个工作流运行得比较频繁,可能需要删除或复用这些/tmp文件,以避免残留文件不断累积。
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- In the checkout step you’re passing an `ssh-key` but leaving the default HTTPS credentials and remote untouched; if the intent is to push over SSH with the deploy key, consider adding `persist-credentials: false` and explicitly configuring the SSH remote so the deploy key is actually used for pushes.
- The `Process mu-lu.md` step writes temporary files to `/tmp` (`summary_tail.txt` and `mulu2_tail.txt`) but only cleans up `mu-lu-2.md`; if this workflow runs frequently it may be worth removing or reusing the `/tmp` files to avoid accumulating leftovers.
## Individual Comments
### Comment 1
<location> `2025/2025-08-22.md:21` </location>
<code_context>
+
+* des 指出,pkgbase 仍然需要大量工作
+
+ * 在 Ports 与基本系统之间时 pkg 的使用保持一致很困难
+ * 仍存在未处理的可用性问题
+ * 安装器支持仍属实验性质
</code_context>
<issue_to_address>
**issue (typo):** “之间时”搭配不当,建议重写以避免语法问题。
建议改为“在 Ports 与基本系统之间保持 pkg 使用的一致性很困难”或“在 Ports 与基本系统之间,要保持 pkg 使用的一致性很困难”。
```suggestion
* 在 Ports 与基本系统之间保持 pkg 使用的一致性很困难
```
</issue_to_address>帮我变得更有用!请在每条评论上点击 👍 或 👎,我会根据你的反馈改进后续评审。
Original comment in English
Hey there - I've reviewed your changes - here's some feedback:
- In the checkout step you’re passing an
ssh-keybut leaving the default HTTPS credentials and remote untouched; if the intent is to push over SSH with the deploy key, consider addingpersist-credentials: falseand explicitly configuring the SSH remote so the deploy key is actually used for pushes. - The
Process mu-lu.mdstep writes temporary files to/tmp(summary_tail.txtandmulu2_tail.txt) but only cleans upmu-lu-2.md; if this workflow runs frequently it may be worth removing or reusing the/tmpfiles to avoid accumulating leftovers.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- In the checkout step you’re passing an `ssh-key` but leaving the default HTTPS credentials and remote untouched; if the intent is to push over SSH with the deploy key, consider adding `persist-credentials: false` and explicitly configuring the SSH remote so the deploy key is actually used for pushes.
- The `Process mu-lu.md` step writes temporary files to `/tmp` (`summary_tail.txt` and `mulu2_tail.txt`) but only cleans up `mu-lu-2.md`; if this workflow runs frequently it may be worth removing or reusing the `/tmp` files to avoid accumulating leftovers.
## Individual Comments
### Comment 1
<location> `2025/2025-08-22.md:21` </location>
<code_context>
+
+* des 指出,pkgbase 仍然需要大量工作
+
+ * 在 Ports 与基本系统之间时 pkg 的使用保持一致很困难
+ * 仍存在未处理的可用性问题
+ * 安装器支持仍属实验性质
</code_context>
<issue_to_address>
**issue (typo):** “之间时”搭配不当,建议重写以避免语法问题。
建议改为“在 Ports 与基本系统之间保持 pkg 使用的一致性很困难”或“在 Ports 与基本系统之间,要保持 pkg 使用的一致性很困难”。
```suggestion
* 在 Ports 与基本系统之间保持 pkg 使用的一致性很困难
```
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
|
@sourcery-ai review |
There was a problem hiding this comment.
你好——我已经审阅了你的改动,看起来很棒!
供 AI 智能体使用的提示
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location> `2025/2025-08-22.md:30` </location>
<code_context>
+* 关于 pkgbase 的提案:存在几种模式
+
+ * `freebsd-update` 管理:pkg 只操作 Ports 包,使用 `freebsd-update`
+ * kyle 建议为仓库引入一个新的“隐藏”标记,使其在被显式使用时保持启用,但不会被自动发现
+ * bsdinstall 可能默认“隐藏” base 仓库,从而让 `freebsd-update` 开箱即用
+ * 为希望直接使用 pkg 的用户文档化如何取消隐藏 base
</code_context>
<issue_to_address>
**nitpick (typo):** “kyle” appears to be a proper name and may need capitalization for consistency.
此处其他人名(如 Warner、Jake)均为首字母大写,而“kyle”是唯一的小写形式。如这里指的是同一位人物且不是特意用作小写用户名,建议改为 “Kyle” 以保持专有名词书写风格一致。
```suggestion
* Kyle 建议为仓库引入一个新的“隐藏”标记,使其在被显式使用时保持启用,但不会被自动发现
```
</issue_to_address>帮我变得更有用!请在每条评论上点 👍 或 👎,我会根据你的反馈改进后续的评审。
Original comment in English
Hey there - I've reviewed your changes and they look great!
Prompt for AI Agents
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location> `2025/2025-08-22.md:30` </location>
<code_context>
+* 关于 pkgbase 的提案:存在几种模式
+
+ * `freebsd-update` 管理:pkg 只操作 Ports 包,使用 `freebsd-update`
+ * kyle 建议为仓库引入一个新的“隐藏”标记,使其在被显式使用时保持启用,但不会被自动发现
+ * bsdinstall 可能默认“隐藏” base 仓库,从而让 `freebsd-update` 开箱即用
+ * 为希望直接使用 pkg 的用户文档化如何取消隐藏 base
</code_context>
<issue_to_address>
**nitpick (typo):** “kyle” appears to be a proper name and may need capitalization for consistency.
此处其他人名(如 Warner、Jake)均为首字母大写,而“kyle”是唯一的小写形式。如这里指的是同一位人物且不是特意用作小写用户名,建议改为 “Kyle” 以保持专有名词书写风格一致。
```suggestion
* Kyle 建议为仓库引入一个新的“隐藏”标记,使其在被显式使用时保持启用,但不会被自动发现
```
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Summary by Sourcery
将会议日期本地化为统一的中文格式,并改进用于保持 mu-lu.md 与 SUMMARY.md 同步的自动化工作流。
新功能:
增强内容:
构建:
文档:
Original summary in English
Summary by Sourcery
Localize meeting dates to a unified Chinese format and improve the automated workflow that keeps mu-lu.md in sync with SUMMARY.md.
New Features:
Enhancements:
Build:
Documentation:
新功能:
增强内容:
mu-lu.md自动更新工作流,以支持首次创建,并在内容没有变化时跳过提交。构建:
Original summary in English
Summary by Sourcery
将会议日期本地化为统一的中文格式,并改进用于保持 mu-lu.md 与 SUMMARY.md 同步的自动化工作流。
新功能:
增强内容:
构建:
文档:
Original summary in English
Summary by Sourcery
Localize meeting dates to a unified Chinese format and improve the automated workflow that keeps mu-lu.md in sync with SUMMARY.md.
New Features:
Enhancements:
Build:
Documentation:
新功能:
增强内容:
mu-lu.md的更新工作流,在内容未变更时跳过提交,并更健壮地处理文件的初次创建。Original summary in English
Summary by Sourcery
将会议日期本地化为统一的中文格式,并改进用于保持 mu-lu.md 与 SUMMARY.md 同步的自动化工作流。
新功能:
增强内容:
构建:
文档:
Original summary in English
Summary by Sourcery
Localize meeting dates to a unified Chinese format and improve the automated workflow that keeps mu-lu.md in sync with SUMMARY.md.
New Features:
Enhancements:
Build:
Documentation:
新功能:
增强内容:
mu-lu.md自动更新工作流,以支持首次创建,并在内容没有变化时跳过提交。构建:
Original summary in English
Summary by Sourcery
将会议日期本地化为统一的中文格式,并改进用于保持 mu-lu.md 与 SUMMARY.md 同步的自动化工作流。
新功能:
增强内容:
构建:
文档:
Original summary in English
Summary by Sourcery
Localize meeting dates to a unified Chinese format and improve the automated workflow that keeps mu-lu.md in sync with SUMMARY.md.
New Features:
Enhancements:
Build:
Documentation: