Skip to content

chore(security): classify fixed Solaris serializer state - #4149

Merged
Patrick-Erichsen merged 1 commit into
mainfrom
trace-solaris-serializer-state
Oct 30, 2026
Merged

Patrick-Erichsen merged 1 commit into
mainfrom
trace-solaris-serializer-state

Conversation

@Patrick-Erichsen

Copy link
Copy Markdown
Collaborator

Actual protected Solaris scans fail in LangChain response serialization, but the previous exact-literal probe does not identify the error family. Add bounded serializer/model state and fixed public error-type labels so the fixed protected replay can distinguish the failure without exporting exception text, private type names or source paths.

Only qualified Pydantic frames supply model state; class dictionaries are read without calling properties or serializers. Node validates and reprojects enums and bounds, and accepts older records. The existing security contract documents these limits. Classification, returns, retries and normal scanner/publication behavior are preserved.

Validation: 11 focused tests; all 8,379 full tests pass with five configured skips/four workers and coverage thresholds unchanged; ci:static and ci:types-build pass; restricted independent P0–P3 review has zero findings. The new metadata regression fails before the amendment.

Paired installed-CLI injected-error control: both states exit2 with eight simulated calls, five semantic TypeErrors, identical failed-report facts and all1,335 original hashes preserved. After records eight qualified bounded state projections with no private text, type names or paths. Network and real models are disabled. This proves observer behavior/privacy only; actual hosted error classification and package recovery remain pending. Local arm64/twoCPU differs from the protected X64/fourCPU runner. No original publication retry or recovery claim.

@vercel

vercel Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
clawhub Ready Ready Preview Oct 30, 2026 12:28pm UTC

Request Review

@clawsweeper

clawsweeper Bot commented Oct 30, 2026

Copy link
Copy Markdown
Contributor

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

@Patrick-Erichsen

Copy link
Copy Markdown
Collaborator Author

Installed-CLI paired injected-error control for this amendment (network/real models/publisher execution disabled):

{
  "before": {
    "cliExitCode": 2,
    "simulatedModelCalls": 8,
    "executionSuccessful": false,
    "status": "failed",
    "TypeErrorCount": 5,
    "all1335OriginalHashesPreserved": true,
    "actualModelsInvoked": false,
    "networkEnabled": false,
    "publisherCodeExecuted": false
  },
  "after": {
    "cliExitCode": 2,
    "simulatedModelCalls": 8,
    "executionSuccessful": false,
    "status": "failed",
    "TypeErrorCount": 5,
    "all1335OriginalHashesPreserved": true,
    "actualModelsInvoked": false,
    "networkEnabled": false,
    "publisherCodeExecuted": false
  },
  "sameCliOutcomeAndReportFacts": true,
  "qualifiedSerializerRecords": 8,
  "profile": {
    "builtinTypeError": true,
    "argumentKinds": [
      "str"
    ],
    "argumentsTruncated": false,
    "qualifiedDump": true,
    "tokensInspected": true,
    "tokens": [
      "unhashable",
      "dict_type"
    ],
    "model": "parsed_response",
    "modelComplete": true,
    "serializer": "other"
  },
  "privateTextTypesPathsAbsent": true,
  "observerLines": 10,
  "limit": "Known fake serializer raises inside actual Pydantic model_dump on an SDK response subtype. This verifies observer behavior/privacy only, not actual production error tokens or recovery."
}

Before the amendment, the new state/privacy regression fails because metadata is absent. After it, 11 focused tests pass; full coverage passes8,379 tests with five configured skips/four workers. Static/full TypeScript-build/package types pass. Independent restricted Studio Sol/high P0–P3 review is scoped-clean with zero findings; frozen source/context hashes verify.

This is observer behavior/privacy proof, not the actual hosted TypeError cause, completed security checks or package recovery. The fake serializer is deliberately injected inside real Pydantic model_dump on an SDK response subtype. Local arm64/twoCPU differs from the protected X64/fourCPU runner. Normal classifier results/exceptions/retries and publication behavior are preserved.

@Patrick-Erichsen
Patrick-Erichsen merged commit cb75551 into main Oct 30, 2026
31 checks passed
@Patrick-Erichsen
Patrick-Erichsen deleted the trace-solaris-serializer-state branch October 30, 2026 12:33

This branch was successfully deployed

1 active deployment
Preview – clawhub — 66cd0dd0 Deployed Oct 30, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant