Repository navigation
feat: persistent sandbox snapshots and design workflow skills - #222
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f4d0c3dcfc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| spent[cat] = round(spent.get(cat, 0.0) + total, 2) | ||
| limit = limits.get(cat) | ||
| if limit is not None and spent[cat] > float(limit): | ||
| issues.append(f"超标:{cat}累计 {spent[cat]} 元,限额 {limit} 元") |
There was a problem hiding this comment.
Exclude over-limit invoices from the accepted running total
When an invoice exceeds its category limit, its amount remains in spent even though the invoice is marked 需处理 and excluded from the reimbursable total. For example, with a limit of 100 and otherwise valid invoices for 80, 30, and 10, the script rejects both 30 and 10, although the accepted invoices could total 90. This contradicts the adjacent rule that problematic invoices should not consume the category allowance and understates the reported reimbursable amount. Calculate the prospective total first and update spent only if the invoice passes the limit check.
Useful? React with 👍 / 👎.
| p = Path(value) | ||
| text = p.read_text(encoding="utf-8") if p.is_file() else value |
There was a problem hiding this comment.
Parse inline JSON before probing it as a filesystem path
In the Python 3.11 script-runner environment defined in docker/sandbox/Dockerfile.script-runner, passing a documented inline JSON array to --items or --updates raises OSError: [Errno 36] File name too long once the string exceeds the filesystem's filename limit. A normal three-item array is sufficient to reproduce this; Chinese text can reach the byte limit even sooner. Path.is_file() propagates this error on Python 3.11, and main() does not catch it, so the command aborts instead of processing the meeting. Detect inline JSON before performing the path lookup, or handle filesystem errors and fall back to JSON parsing.
Useful? React with 👍 / 👎.
This sync updates the generated Community Edition with persistent sandbox snapshot jobs, new design and office workflow skills, configurable login branding, and clearer Personal Agent questions and recovery actions.
Changes:
Validation:
core.auth.editionmust be absent. The CE intentionally provides its single-owner adapter at that module; the dedicated CE isolation contracts pass.Generated from the private source using the standard CE manifest and overlay. Only the derived CE tree is included. No private deployment configuration or credentials are published.