knowledge: headless UA bot-block probe, estimate-derived threshold re-anchoring, permanent-suite scope evidence, shallow-clone history guard (4 verified) - #95
Open
choiyounggi wants to merge 1 commit into
Conversation
…stimate-derived threshold re-anchoring, permanent-suite scope evidence, shallow-clone history guard)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Knowledge flush — 4 insight(s)
Verified best-practice
1. Headless-browser QA shows empty data → probe with a desktop Chrome UA before diagnosing an outage (from chungyak-alimi session, 2026-08-14)
headless/lib/browser/headless_browser_impl.cc(raw.githubusercontent.com, 2026-08-14) —const char kHeadlessProductName[] = "HeadlessChrome";with the comment "Product name for building the default user agent string", i.e. the headless UA is distinguishable by construction. Checked developer.chrome.com/docs/chromium/headless (no UA statement there — not cited). Field evidence from the session: dabangapp.com/map/apt markers/room-list APIs all 400 under default headless UA, 200 after a Chrome/131 UA override.2. Re-anchor SL/TP-style absolute triggers to the actual fill at the confirmation-recording point (from auto-trading-bot session, 2026-08-14)
mark_filled()re-anchor restored the band, regression tests red on pre-fix code (this repo's PR knowledge: PID-1 tee log capture pattern, BSD/GNU date %3N feature detection #3, 464 tests green).3. A permanent test suite must not assert ambient working-tree state; prove scope from the introducing commit's diff (from dev-loop session, 2026-08-14)
4. Guard history-dependent checks with
git rev-parse --is-shallow-repository; a depth-1 boundary commit reports every tracked file as added (from dev-loop session, 2026-08-14)fetch-depth: 1grafts a parentless boundary commit, sogit log --diff-filter/merge-baseanswer falsely rather than erroring; skip honestly on shallow clones or deepen the fetch per job.--is-shallow-repository); fresh local reproduction this session (git 2.50.1, 2026-08-14):--depth 1clone of the 306-file dev-loop repo →--is-shallow-repository= true,git log -1 --diff-filter=A --name-onlylisted 306/306 files as added.Existing-layer check
Pages read: qa-process-scope-purity-checks, qa-environments-test-environment-parity, testing-e2e-e2e-stability, testing-quality-checks-that-cannot-pass, backend-common-integrations-robots-txt-and-source-selection
qa/environments/test-environment-parityis staging-vs-prod parity — different trigger;backend/common/integrations/robots-txt-and-source-selectioncovers UA group matching for crawler policy (adjacent, not duplicate) → new page, related-linked both ways to robots-txt and totesting-e2e-e2e-stability.integrationscategory (the gap is between your request/estimate and the external system's confirmed outcome).qa/process/scope-purity-checksowns proving scope purity fromgit status— same territory, complementary directive (which evidence source per gate lifetime) → merged into that page (Do knowledge: kubelet resource-metrics, PID1 log flush, date %3N detection #4 table, edge-case row, instead-of row, Bazel source, related link). No conflict: the existing page's working-tree guidance remains correct for one-shot gates that own their tree.checks-that-cannot-passis unwritten-target gates;harness-reverse-controlsis harness scoring) → new pagetesting/quality/history-dependent-checks-on-shallow-clones, related-linked both ways to scope-purity-checks and checks-that-cannot-pass.log.mdingest entry appended. Prohibition lint: 62/62 directives compliant, 0 violations.Open-PR check
Listed 26 open
knowledge/*heads (#47–#92) viagh pr list --search "head:knowledge/", fetched all heads, and diffed each againstorigin/main -- wiki/grepping for overlap terms (user-agent/headless/bot-detect, shallow/fetch-depth, slippage/stop-loss/take-profit/re-anchor/fill price, working-tree/git status/diff-filter/scope-purity). Hits were incidental only:git statusappears in worker-resume prompts and the harness-reverse-controls index line — different insights.Verdict per candidate: all 4 new (no fold, no drop). No sibling PR carries any of these insights.
Routing decision
qa/environments/headless-browser-bot-blocking(new page, existing category)backend/common/integrations/estimate-derived-thresholds(new page, existing category)integrationsalready owns consuming external systems' responses — the insight is precisely the estimate/actual gap in an external system's confirmed outcome. No new category neededqa/process/scope-purity-checkstesting/quality/history-dependent-checks-on-shallow-clones(new page, existing category)One PR, no auto-merge. Queue rows for all 4 candidates will be retired to
.processed.jsonlafter the PR opens.