Guanghu Domestic Migration a27e87cb99 chore: import sanitized domestic snapshot for REPO-007
Source snapshot: 97d7f0fae96dc04b7ddad56fc1db6a108ed662cc

[SEC-CLEAN] · pre-push-clean v1.0 · 109处敏感信息已自动转乱码
2026-07-17 15:59:55 +08:00

120 lines
3.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📡 铸渊指令飞书SYSLOG接收workflow · feishu-syslog → syslog-inbox 自动桥接2026-03-14·曜冥签发
---
> **签发者**:曜冥(语言主控层·观察层)
>
> **签发时间**2026-03-14 21:30+08:00
>
> **执行者**铸渊GitHub侧执行体
>
> **优先级**P0-紧急
>
> **目的**:打通 飞书舒舒 → GitHub铸渊 → Notion霜砚 的SYSLOG自动闭环
>
---
## 背景
飞书舒舒feishu-shushu v2.0.0已具备SYSLOG识别+转发能力。当开发者在飞书发送SYSLOG时舒舒会通过 `repository_dispatch` 将SYSLOG转发到GitHub仓库event_type 为 `feishu-syslog`
**当前问题**:仓库根目录 `.github/workflows/` 下没有监听 `feishu-syslog` 事件的workflow导致舒舒发出的dispatch无人接收SYSLOG链路断裂。
仓库内已有完整的SYSLOG处理pipeline`guanghulab-main/.github/workflows/syslog-pipeline.yml`),触发条件是 `syslog-inbox/` 目录有新文件push到main。
**解决方案**在仓库根目录创建一个桥接workflow监听 `feishu-syslog` dispatch事件 → 将SYSLOG内容写入 `syslog-inbox/` 目录 → 自动触发已有pipeline。
---
## 执行指令
在仓库根目录创建文件:`.github/workflows/feishu-syslog-bridge.yml`
文件内容如下:
```yaml
name: 铸渊 · 飞书SYSLOG桥接
on:
repository_dispatch:
types: [feishu-syslog]
jobs:
bridge-feishu-syslog:
name: 📡 飞书SYSLOG → syslog-inbox
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
ref: main
- name: 📥 写入 syslog-inbox
env:
SYSLOG_RAW: ${{ toJson(github.event.client_payload) }}
run: |
mkdir -p syslog-inbox
TIMESTAMP=$(date -u +%Y%m%d-%H%M%S)
SOURCE=$( echo "$SYSLOG_RAW" | python3 -c "import sys,json; d=json.load(sys.stdin); print(d.get('source','unknown'))" 2>/dev/null || echo 'feishu' )
FILENAME="syslog-inbox/${TIMESTAMP}_${SOURCE}.json"
echo "$SYSLOG_RAW" > "$FILENAME"
echo "📥 SYSLOG已写入: $FILENAME"
echo "📋 内容预览:"
cat "$FILENAME" | head -20
- name: 提交到仓库
run: |
git config user.name "铸渊[bot]"
git config user.email "zhu-yuan-bot@guanghulab.com"
git add syslog-inbox/
git diff --staged --quiet || git commit -m "📡 feishu-syslog: 飞书舒舒转发SYSLOG [auto-bridge]"
git push
- name: ✅ 桥接完成
run: |
echo "✅ 飞书SYSLOG已桥接到 syslog-inbox/"
echo "📡 等待 syslog-pipeline 自动触发处理"
```
---
## 验收标准
1. 文件 `.github/workflows/feishu-syslog-bridge.yml` 存在于仓库根目录
2. 飞书发送SYSLOG后GitHub Actions出现 `铸渊 · 飞书SYSLOG桥接` workflow运行记录
3. `syslog-inbox/` 目录出现新的JSON文件
4. 随后 `铸渊 · SYSLOG Pipeline (A/D/E)` 被自动触发
---
## 注意事项
- `syslog-pipeline.yml` 目前在 `guanghulab-main/.github/workflows/` 子目录下GitHub Actions不会自动执行子目录里的workflow。如果pipeline没有触发需要将 `syslog-pipeline.yml` 也复制到仓库根目录 `.github/workflows/` 下。
- 舒舒侧代码无需改动,当前的 `repository_dispatch` + `feishu-syslog` event_type已正确。
- 此workflow不处理SYSLOG内容不解析、不判断只做桥接搬运。解析和处理由已有的 `process-syslog.js` 负责。
---
## 链路全景
```
开发者在飞书发SYSLOG
→ 舒舒识别SYSLOG → repository_dispatch(feishu-syslog)
→ [本workflow] 写入 syslog-inbox/xxx.json → git push
→ syslog-pipeline.yml 自动触发
→ process-syslog.js 处理
→ Notion SYSLOG收件箱 + 霜砚工单
```
---
> 曜冥签发 · 2026-03-14 · 最小改动原则 · 舒舒不动 · 铸渊配合桥接
>