Hackpert: defend inspection snapshots from mutable string aliasing #155

Open
nsaspy wants to merge 4 commits from hackpert/inspection-defensive-string-copies into master
Owner

Slice

Bug-first hardening of Hackpert operator inspection snapshots for #27/#29.

Current inspection APIs copy list structure but still expose mutable Common Lisp string leaves directly; copy-tree also leaves strings aliased. The regression requires both source-string snapshot isolation and defensive string copies on returned run/action inspection data.

No provider execution, persistence/database internals, authority changes, scheduler, or StarIntel product work.

RED contract head: 9e246b9a394da60d8cc4ad045e1296f3283a2a0e.

## Slice Bug-first hardening of Hackpert operator inspection snapshots for #27/#29. Current inspection APIs copy list structure but still expose mutable Common Lisp string leaves directly; `copy-tree` also leaves strings aliased. The regression requires both source-string snapshot isolation and defensive string copies on returned run/action inspection data. No provider execution, persistence/database internals, authority changes, scheduler, or StarIntel product work. RED contract head: `9e246b9a394da60d8cc4ad045e1296f3283a2a0e`.
fix: return defensive run inspection strings
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 7s
core / common-lisp-core (pull_request) Failing after 39s
monorepo / hygiene (pull_request) Successful in 6m46s
b7f991ac76
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 7s
core / common-lisp-core (pull_request) Failing after 39s
monorepo / hygiene (pull_request) Successful in 6m46s
This pull request has changes conflicting with the target branch.
  • source/hackmode-core/expert/inspection.lisp
  • source/hackmode-core/hackmode-tests.asd
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin hackpert/inspection-defensive-string-copies:hackpert/inspection-defensive-string-copies
git switch hackpert/inspection-defensive-string-copies

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff hackpert/inspection-defensive-string-copies
git switch hackpert/inspection-defensive-string-copies
git rebase master
git switch master
git merge --ff-only hackpert/inspection-defensive-string-copies
git switch hackpert/inspection-defensive-string-copies
git rebase master
git switch master
git merge --no-ff hackpert/inspection-defensive-string-copies
git switch master
git merge --squash hackpert/inspection-defensive-string-copies
git switch master
git merge --ff-only hackpert/inspection-defensive-string-copies
git switch master
git merge hackpert/inspection-defensive-string-copies
git push origin master
Sign in to join this conversation.
No description provided.