Files
reverse-engineering-anything/src/contracts/analysisViewApiSurfaceExample.ts
T
morluto db8128dc0d refactor(evidence)!: require current coverage commitments
BREAKING CHANGE: Evidence and analysis snapshots require explicit nullable relationship coverage and include it in their identity commitments. Historical records without the field are rejected; saved files are not migrated.
2026-10-15 03:43:28 +08:00

74 lines
2.2 KiB
TypeScript

/** Generated from the two-request apiSurfaceHar fixture through the HAR decoder and view service. */
export const API_SURFACE_EXAMPLE = {
input: {
source: {
kind: "retained-evidence",
evidence_id:
"ev_90073e9478eada1e2cc351b523e6ba9231c9b4bc9708773567b880094db9d4c7",
},
view: {
kind: "api-surface",
offset: 0,
limit: 50,
},
},
output: {
parent_evidence_id:
"ev_90073e9478eada1e2cc351b523e6ba9231c9b4bc9708773567b880094db9d4c7",
parent_operation: "inspect_web_network_capture",
parent_digest:
"90073e9478eada1e2cc351b523e6ba9231c9b4bc9708773567b880094db9d4c7",
view_digest:
"c9494341920dc4cff6ecc6d8ed2c5e3abf15976642c253248e220d45f290ca7b",
artifact: {
path: "/fixtures/api-surface.har",
sha256:
"bf58e2c06e55bfe7e0628157c4ad027ce0aeb81a10e8edef8a7f95b8e5f14225",
},
coverage: {
status: "page",
examined: 1,
total: 1,
next_offset: null,
exhausted: true,
},
limitations: [
"Grouping does not establish handler identity, URL-space schemas or causality.",
"HAR text is producer-decoded Unicode. Original body bytes remain unknown unless content explicitly uses valid base64; declared sizes are preserved independently of retained bytes. mitmproxy 12.2.3 SaveHar may report null optional postData.text; that null is retained and omitted only from the upstream validation copy.",
],
unknowns: [],
records: {
examined: 2,
total: 2,
excluded: 0,
},
templated_groups: 1,
groups: [
{
method: "GET",
origin: "https://api.example.test",
path_template: "/users/{numeric}",
templated_segments: [
{
segment_index: 1,
rule: "numeric",
basis: "inferred",
observed_values: ["8812", "9031"],
},
],
record_ordinals: [0, 1],
statuses: [200, 404],
content_types: ["application/json", "text/plain"],
flags: ["mixed-statuses", "mixed-content-types"],
},
],
excluded_records: [],
kind: "api-surface",
view: {
kind: "api-surface",
offset: 0,
limit: 50,
},
},
} as const;