Repository navigation
feat(policy): add executable offline robots evaluation example - #352
Conversation
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing (4)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Infrastructure-exception integration authorized by the maintainer. Main merge trees were verified against the tested source: #351 merge9b97c5438ed8f4bdc07c3842bf803658bc712279; #352 merge2f8fc121f006d60db4ddf1a03c9c610bf5d315e3. Fresh workspace all-target tests exit0 on47a7e04d; actual main tree matches exactly. Ordinary head-bound merge commands used; no protection changes or self-approval. Actions billing-lock FAILURE and Draft SKIPPED are NOT PASS. Self-hosted CI execution and literal-auto AI review with formal non-author App approval remain UNFINISHED. This integration is not a release or a claim of approved CI. |
Product slice and dependency
Adds a locally executable
robots_offlineexample for #350 / PRD-CRAWL-001. It consumes the candidate robots evaluator from #351 instead of duplicating its parser or matcher. This is a four-file example/tests/documentation increment stacked on #351 atf11bdd8aa4129925440ea02680089c6872434801; #351 must integrate before this child reaches protected main. It does not close the complete crawler or browser runtime gap.Behavior
MAX_ROBOTS_BODY_BYTES + 1bytes so overflow remains visible to the evaluator. Preserve binary body bytes and library normalization, rule precedence and implicit/robots.txtsemantics.evaluate_robots, then pass its decision into actualevaluateusing a fixed example.com Observe/public-crawl fixture, no write grant, no secret and no approval.network_authority=none. Allow=exit0, refusal=exit1, input/output failure=exit2. Local file errors never become an unavailable-robots allowance.Tests and review
Initial example acceptance reached an assertion failure because the example target did not exist. An earlier borrow-check failure is preserved as a test setup error, not behavioral RED. The initial implementation passed the three-case acceptance suite; later added binary/special-file and exact-six duplicate-option controls characterize existing behavior.
Independent whole-source review identified a test-helper timeout defect: direct Cargo termination left descendants uncontrolled. Parent reproduced a finite shell descendant writing after timeout (0 passed/1 failed), then changed Unix group handling; the unchanged regression passed. Final independent whole-four-file source verdict is PASS, bound to the complete patch and all four file hashes. This is not formal GitHub approval.
Preserved failures: an original independent probe and first instrumented workload observed signalled child exits. Signal cause remains UNKNOWN; later passing tests do not establish their cause or retroactively clear those attempts.
Exact final local verification
Commit
47a7e04de8da2a6749ad4497a2e12eae60654072has the same four source blobs as the independently reviewed packet. Clean committed-head gates passed, with before/after source hashes unchanged:The default coverage report does not include the example file. No100% example coverage claim is made. Library coverage and actual example behavioral acceptance are separate evidence. All eight clean committed-head gate commands completed with exit0; actual receipts and source hashes were verified before the normal non-force branch publication.
Not shipped / not claimed
No fetch, cache, live crawl, DNS, browser action, scheduler, storage, persistence, deployment, signing or release. The body is user-supplied, not origin-attested or HTTP-success evidence. The fixed intent digest is synthetic; the core request does not bind the request-target to executable intent. Even fixture Allow grants no network/browser authority.
Pathname/descriptor regular-file checks are not a race-free filesystem sandbox or bounded blocking-I/O mechanism. Unix cleanup is scoped to cooperative same-group children; escaped daemons, Windows descendant cleanup and grandchild direct reap are not claimed. Signal-command failure followed by unbounded direct wait remains a non-reproduced hardening observation, not a completed universal-supervisor guarantee.
Exact-head Actions, central self-hosted auto-model AI review, separate non-author formal App approval, effective rules, normal protected integration and prerequisite #351 acceptance remain required. This PR stays Draft while those delivery gates are unmet.