feat: export core Hermes skills

This commit is contained in:
2026-07-15 02:45:56 +00:00
parent a028b63eda
commit 54711fee2a
308 changed files with 41310 additions and 1 deletions
@@ -0,0 +1,56 @@
# Pre-Pass Audit Checklist (2026-07-13 练塘璞石+环保袋实战)
When Doro asks to "审查workflow修改" before pass, use this checklist.
## Step 1: Identify WB vs Original Revisions
```python
# In delivered docx:
for ins in root.iter(f'{{{W}}}ins'):
author = ins.get(f'{{{W}}}author')
# WB = workflow's modifications (audit these)
# Others (WB-1, 86187, 杨丽, etc.) = original file revisions (leave alone)
```
## Step 2: Format Audit (per WB INS run)
| Check | How | Common Fail |
|-------|-----|-------------|
| rFonts extra attrs | Compare WB INS rFonts with same-para orig run | hAnsi/cs/hint added by workflow |
| sz mismatch | Compare sz values | Usually OK if same as orig |
| pStyle on new headings | Compare with adjacent original headings | Style15 instead of Heading4 |
| Heading spacing/ind | Must match original heading paragraphs | Missing before/after=0, ind |
| Bold | If orig headings not bold, new ones shouldn't be | Usually OK |
| Title space | "第七条转包" vs "第七条 转包" | Workflow adds space |
## Step 3: Content/Numbering Audit
| Check | How | Common Fail |
|-------|-----|-------------|
| Sub-numbering顺延 | If 第七条→第八条, check 7.1→8.1 etc. | Workflow only changes chapter heading, forgets sub-numbers |
| 赔偿上限20% | Bilateral caps limit our client's recovery | Workflow misses bilateral cap deletion |
| Content dedup | Check if INS保密存续 duplicates existing text | Original may already have "义务不因...终止而免除" |
| 编号冲突 | Original may already have duplicate numbers | Don't fix original numbering bugs (per rules) |
## Step 4: Global Checks
- [ ] 脚注"法律顾问修订版" exists AND is in tracked change format (w:ins author=WB)
- [ ] File naming: 【修】+ original filename unchanged
- [ ] Read full accepted text for WB-introduced grammar issues
- [ ] Original revisions (other authors) untouched
## Fix Patterns
### Sub-numbering (split across runs: "7" + ".1 ")
Only need to DEL/INS the first digit run. Don't touch ".1 " run.
### Precise text deletion (P49 pattern)
When deleting middle of a single large run:
1. Split run into: before_text | DEL_text | after_text
2. Create 3 elements: normal_run(before) + del_elem(middle) + normal_run(after)
3. Insert at original position
### Footer tracked change
1. Add footer text via python-docx
2. Re-open with zipfile, find footer XML
3. Wrap the text run in `<w:ins id="..." author="WB" date="...">`