Hackpert: defend inspection snapshots from mutable string aliasing #82

Closed
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.
Implementation head: b7f991ac767270a06468c7874f260074a82a088a.

Replacement for draft #114 because GitHub's ready-for-review mutation is currently broken by the connector's fullDatabaseId GraphQL field error. This PR uses the identical head.

## 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`. Implementation head: `b7f991ac767270a06468c7874f260074a82a088a`. Replacement for draft #114 because GitHub's ready-for-review mutation is currently broken by the connector's `fullDatabaseId` GraphQL field error. This PR uses the identical head.
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
nsaspy closed this pull request 2026-09-04 20:55:21 +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 7s
core / common-lisp-core (pull_request) Failing after 39s
monorepo / hygiene (pull_request) Successful in 6m46s

Pull request closed

Sign in to join this conversation.
No description provided.