Repository navigation
OpenAI-default Attest ticket dispatcher - #92
Conversation
Co-authored-by: sykosyber <132870419+sykosyber@users.noreply.github.com>
Co-authored-by: sykosyber <132870419+sykosyber@users.noreply.github.com>
Fixes #90 Co-authored-by: sykosyber <132870419+sykosyber@users.noreply.github.com>
Default the example configuration to an offline command worker while keeping OpenAI selectable. Ask OpenAI for complete structured file contents and generate unified diffs locally. Co-authored-by: sykosyber <132870419+sykosyber@users.noreply.github.com>
Select the OpenAI Responses worker by default and keep the command worker available only via --worker command. Normalize CRLF command output and write the final patch as UTF-8 bytes to keep Windows diffs intact. Co-authored-by: sykosyber <132870419+sykosyber@users.noreply.github.com>
|
Tested #92 against a real ticket from today's live Acme CRM run (
When the instruction change is in, comment the commit and Attest will run the CRM spec through dispatch live ( |
Co-authored-by: sykosyber <132870419+sykosyber@users.noreply.github.com>
|
Pushed |
|
Verified with Attest: with attest#22 (worker model no longer parsed from the inherited ATTEST_WORKER_CMD), the full factory loop ran end to end through this dispatcher on Windows: Acme CRM spec, line 15 broken (no Mark as won), ticket admitted by attest_dispatch, routed to the command worker (python -m attest.worker, gpt-6-sol), Kane re-check 4/4 proven, receipt 0ca486124ac8-c05-46. The four real tickets from Oct 24 also return a diff through this head (ffab30f) in 7 to 10 s each. Ready to merge from the Attest side. |
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: ffab30fc13
ℹ️ 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".
| "+++ ", | ||
| "@@", | ||
| " ", | ||
| "+", |
There was a problem hiding this comment.
Validate hunk syntax before accepting worker output
When a command worker emits file headers followed by +new without a hunk header, this prefix check accepts it and the dispatcher exits successfully. I confirmed git apply --check rejects that output as “patch with only garbage,” so the caller receives an invalid diff instead of a worker failure. Validate the hunk structure before forwarding the patch.
Useful? React with 👍 / 👎.
Class: R
Agent-platform: Reason
Admitted-by: self (Class R)
Objective: Deliver the Attest ticket dispatcher from SyberWork #90 with OpenAI as the default worker.
Change
examples/attest_dispatch.pyto validateattest.ticket/v0, emit the receipt-bridge-compatible unverified observation on stderr, and print only validated Git-format diff output on stdout.workers.example.jsonworker is the OpenAI Responses API (gpt-5-mini); command workers remain an explicit--worker commandopt-in for CI/development without a key.service_tierandreasoning.effort, passed through to the Responses API (for example,priorityandmedium).Usage
ATTEST_WORKER_CMD="python <abs path>/examples/attest_dispatch.py" attest prove demo/spec.md --app demo/app --loopTo opt into the offline command fixture directly, use
python examples/attest_dispatch.py --worker command. The included fixture emits a blank-line demonstration patch; replace it with a real harness for useful changes.Checks
PYTHONPATH=. python3 -m unittest discover -s tests -p 'test_attest_dispatch_example.py' -v— passed (10 tests).PYTHONPATH=. python3 -m unittest discover -s tests -q— passed (577 tests, 25 skipped).PYTHONPATH=. python3 -m conformance.run— passed (23 golden traces).python3 -m py_compile examples/attest_dispatch.py tests/test_attest_dispatch_example.py— passed.git diff --check— passed.Live verification and CI
The prior live CRM exercise on
bc02525exposed seed-data padding, as reported in the PR discussion. This commit adds the anti-padding instruction; a live CRM rerun onffab30fhas not yet been performed. CI has started on the new head and is pending.Fixes #90
Contributors