mirror of
https://github.com/tdurieux/anonymous_github.git
synced 2026-11-14 16:27:25 +01:00
72 lines
2.7 KiB
JSON
72 lines
2.7 KiB
JSON
{
|
|
"implementation": "One commit-pinned GitHub tar stream with bounded download/verification, transformation, and ZIP output stages. Optional provider.Archives capability; per-file fallback for other providers and archive export/LFS exceptions.",
|
|
"deployment": {
|
|
"hostname": "beta.durieux.me",
|
|
"image": "sha256:bc8d7ce53a706f7ac8d755015455542494acd1cfc8acb538d509586a1d539da9",
|
|
"healthy": true,
|
|
"checksPassed": 133,
|
|
"temporaryKeyRevoked": true,
|
|
"testRepositoryRemoved": true
|
|
},
|
|
"sameCommitOutputParity": {
|
|
"zipEntries": 5,
|
|
"zipManifestSHA256": "e6fdc1385a4d0b50e3deea32ab2fcf34de88d1147ed5001b81cbd0968dcf5a81",
|
|
"zipSourceCommit": "912f3c897c5ac1bbc225f65cfd1387579fb3385e"
|
|
},
|
|
"validation": [
|
|
"Client receives first ZIP payload while test upstream is paused before second file",
|
|
"Exactly one archive request and zero individual blob requests for normal streamed fixture",
|
|
"Cancellation closes upstream and removes temporary files",
|
|
"Corrupt gzip, changed repository revision, duplicate paths and anonymized-name collisions abort without finalizing ZIP",
|
|
"Git export-ignore/export-subst fallback preserves original blobs",
|
|
"GitHub global PAX header, path validation, symlink-as-blob handling and redirect credential stripping",
|
|
"Race-enabled multi-batch ZIP and second-provider lifecycle tests passed",
|
|
"Race-enabled final streaming integration tests passed",
|
|
"Empty files and size limits for archive providers without verifiers tested",
|
|
"go vet passed"
|
|
],
|
|
"limits": [
|
|
"Text regex transformation still stages one complete file; not arbitrary chunk-by-chunk substitution",
|
|
"ZIP central-directory and duplicate-name metadata grow with entry count",
|
|
"Every archive download makes a fresh GitHub archive request, including when individual files are cached",
|
|
"The initial live validation fixture has 5 files. A subsequent 1,128-file streaming memory measurement is recorded separately in zip-streaming-live-memory.json. The earlier local ZIP benchmark is a different workload."
|
|
],
|
|
"liveTiming": {
|
|
"before": [
|
|
{
|
|
"bytes": 7176,
|
|
"firstBodyByteMs": 67,
|
|
"elapsedMs": 508
|
|
},
|
|
{
|
|
"bytes": 7171,
|
|
"firstBodyByteMs": 69,
|
|
"elapsedMs": 130
|
|
},
|
|
{
|
|
"bytes": 7171,
|
|
"firstBodyByteMs": 66,
|
|
"elapsedMs": 130
|
|
}
|
|
],
|
|
"after": [
|
|
{
|
|
"bytes": 7171,
|
|
"firstBodyByteMs": 705,
|
|
"elapsedMs": 845
|
|
},
|
|
{
|
|
"bytes": 7171,
|
|
"firstBodyByteMs": 547,
|
|
"elapsedMs": 589
|
|
},
|
|
{
|
|
"bytes": 7171,
|
|
"firstBodyByteMs": 524,
|
|
"elapsedMs": 571
|
|
}
|
|
]
|
|
},
|
|
"memoryMeasurement": "zip-streaming-live-memory.json"
|
|
}
|