Hackpert: normalize direct progress into typed candidates #78

Closed
nsaspy wants to merge 4 commits from hackmode-rage-hackpert/29-direct-candidate-normalization into master
Owner

Slice

Close the #29 direct-escalation normalization gap without widening authority: provide an explicit typed boundary that normalizes useful direct-mode output before returning it to symbolic execution.

Tracks #29 / #27.

RED

Test-only head a4b1756171c0e6b65e4ba0f389fb787b04023f15 requires a typed expert-direct-candidate boundary and a direct->symbolic resume helper. common-lisp-core fails at that head while hygiene, one-open-PR, and repository-boundary checks pass.

GREEN

Exact head 1765875be2891fdae655893904e63e75f78ffaa0 passes core, monorepo, and agent-framework-boundary. The implementation adds a pure candidate envelope for :rule, :plan, :evidence, or :kb, defensive-copies caller payload/provenance, validates operation/run scope, and exposes an explicit direct->symbolic resume helper after successful normalization. It does not execute or persist candidates and does not alter provider/effect authority.

This replaces draft #122 because the ready-for-review connector hit GitHub's recurring fullDatabaseId GraphQL error. The replacement uses the identical exact-green head. Since that head was tested, master advanced only through database-owned #121 in disjoint source/hackmode-database/** files.

## Slice Close the #29 direct-escalation normalization gap without widening authority: provide an explicit typed boundary that normalizes useful direct-mode output before returning it to symbolic execution. Tracks #29 / #27. ## RED Test-only head `a4b1756171c0e6b65e4ba0f389fb787b04023f15` requires a typed `expert-direct-candidate` boundary and a direct->symbolic resume helper. `common-lisp-core` fails at that head while hygiene, one-open-PR, and repository-boundary checks pass. ## GREEN Exact head `1765875be2891fdae655893904e63e75f78ffaa0` passes `core`, `monorepo`, and `agent-framework-boundary`. The implementation adds a pure candidate envelope for `:rule`, `:plan`, `:evidence`, or `:kb`, defensive-copies caller payload/provenance, validates operation/run scope, and exposes an explicit direct->symbolic resume helper after successful normalization. It does not execute or persist candidates and does not alter provider/effect authority. This replaces draft #122 because the ready-for-review connector hit GitHub's recurring `fullDatabaseId` GraphQL error. The replacement uses the identical exact-green head. Since that head was tested, master advanced only through database-owned #121 in disjoint `source/hackmode-database/**` files.
build: load direct candidate normalization
Some checks failed
agent-pr-serialization / one-open-pr-per-agent-lane (pull_request_target) Failing after 2s
agent-framework-boundary / keep-agent-framework-out-of-product-tree (pull_request) Successful in 18s
core / common-lisp-core (pull_request) Failing after 1m3s
monorepo / hygiene (pull_request) Successful in 4m0s
1765875be2
nsaspy closed this pull request 2026-09-04 20:55:47 +00:00
Some checks failed
agent-pr-serialization / one-open-pr-per-agent-lane (pull_request_target) Failing after 2s
agent-framework-boundary / keep-agent-framework-out-of-product-tree (pull_request) Successful in 18s
core / common-lisp-core (pull_request) Failing after 1m3s
monorepo / hygiene (pull_request) Successful in 4m0s

Pull request closed

Sign in to join this conversation.
No description provided.