Skip to content

knowledge: 12 insights — dropzone copy vs drop handlers, destination-in mask chaining, media-query inset reset, spatial clamp, env restore vs pop, synthetic-corpus floor, plan-claim recompute, multi-name command -v, alert suppression key, sibling validators (+2 folds) - #181

Open
choiyounggi wants to merge 3 commits into
mainfrom
knowledge/choiyounggi-20260903-203836

Conversation

@choiyounggi

Copy link
Copy Markdown
Owner

Knowledge flush — 12 insight(s)

Run 20260903-203800-24176 (auto-flush parent lock reused), branch knowledge/choiyounggi-20260903-203836, base origin/main @ 484dd9d. Claimed 12 queue rows (queue-claim.js claim --max 12): 10 ingested on this branch (6 new pages, 4 merges), 2 folded into open PRs. Lint on the checkout: wiki-structure-checks.js wiki → 0 findings; wiki-lint-prohibitions.js → 0 violations; every touched page ≤ 120 body lines.

Verified best-practice

#Queue hashClaimSources checkedHow verifiedConfidence
1e76b481f"Drag and drop" copy on a styled dropzone is honest only when dragover+drop handlers with preventDefault() exist; an unhandled drop makes the browser open the filehttps://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/File_drag_and_dropQuoted MDN: "the browser may process them by default (such as opening or downloading the file) even when the file is not dropped into a valid drop target"; drop fires only when dragover is cancelledverified
2e1c0754bPer-shape destination-in chains intersections; draw mask shapes source-over on an offscreen canvas and apply oncehttps://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperationMDN definition: content kept "where both the new shape and existing canvas content overlap. Everything else is made transparent" — repeated application is an intersection chainverified
3f9c05d73 (two identical queue rows)A media query that overrides position must also reset the inset properties; an SDK inline position:relative beats the author static and reactivates a dormant tophttps://developer.mozilla.org/en-US/docs/Web/CSS/position ; https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_cascade/SpecificityMDN: static → "top, right, bottom, left, and z-index properties have no effect"; inline styles "always overwrite any normal styles in author stylesheets"; production repro 217px→22pxverified
41ba282d0Clamp persisted position/scale to domain bounds on the server; shape validation alone lets x=-9999/scale=0.01 throughhttps://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet.html ; https://zod.dev/apiOWASP syntactic vs semantic validation + range checks; zod .min()/.max() reject only, no clampverified
53080d06aSave-and-restore (or patch.dict/monkeypatch) instead of pop in tearDown; local green with a fallback path is not proof of no pollutionhttps://docs.python.org/3/library/unittest.mock.html ; https://docs.pytest.org/en/stable/how-to/monkeypatch.htmlpatch.dict "restore the dictionary to its original state after the test"; monkeypatch "All modifications will be undone"verified (mechanism) / field-tested (fallback masking, 122 failures)
6a85300017A fixed-pool generator forces repeats ≥ N − k by pigeonhole; ask whether the number would move with X absent, publish pool parametershttps://en.wikipedia.org/wiki/Pigeonhole_principle ; https://en.wikipedia.org/wiki/Scientific_control (general references)In-memory python3 reproduction: k=10, N=30 → repeats 21 ≥ 20; N=50 → 40 = floor; matches the reported values exactlyverified (reproducible computation)
7d9e98911Recompute a plan's derived numbers from its own inputs, check the symbol contract and deliverable reachability (git check-ignore -v), escalate discrepancieshttps://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html ; https://git-scm.com/docs/git-check-ignoreWCAG luminance/contrast formulas quoted; check-ignore -v semantics quoted; four in-session defects confirmed by the plan ownerverified (method) / field-tested (defects)
8142c89b3Run a mass-failing gate against already-merged, shipped code; uniform failure there proves the gate is the defectOwn reproducible check: test-floor.sh vs linkly 305f8e2 (PR #81) → exit 3Folded into PR #180's page (see Open-PR check)verified
9c5d4ba2eMulti-name command -v a b c is OR in bash/macOS sh (exit 0 if any resolves), exit 1 in zsh; loop per namehttps://pubs.opengroup.org/onlinepubs/9699919799/utilities/command.html ; bash -c 'help command'Reproduced this session: bash 5.3 / /bin/sh rc 0, zsh 5.9 rc 1 for command -v ls definitely_missing_xyz; POSIX synopsis has one command_nameverified
10e8b72499Key alert suppression on the rendered message text, re-send daily, suppress the notification not the retryhttps://prometheus.io/docs/alerting/latest/configuration/ ; https://sre.google/sre-book/monitoring-distributed-systems/ ; https://developer.pagerduty.com/docs/events-api-v2/trigger-events/index.htmlSources establish stable-key + re-send window and caller-chosen dedup strings; none prescribes text keying itself, so the page stays field-tested (151→1 send in production)field-tested
113e979f78Attribute a dirty main checkout to a live worker by mtime, stop it first, transfer by patch, verify, then discardhttps://git-scm.com/docs/git-worktree ; https://git-scm.com/docs/git-applyFolded into PR #179's page (see Open-PR check); git mechanics verified, mtime heuristic field-testedverified / field-tested
1268257e11Widening one check on a node: enumerate the other static checks on the same node/verb; admit the new case at one call siteNo external source found (compiler texts describe multi-pass semantic checks without naming this practice)linkly _check_aggregate widened while _Scope._dimension_of still rejected; scoped allow_money fix with the original regression test unchangedfield-tested

No URL was invented; every source above was opened and quoted.

Existing-layer check

Pages read: backend-common-change-impact-widening-a-closed-value-table, backend-common-change-impact-call-site-enumeration, backend-common-errors-diagnostics-from-a-shared-code-path, backend-common-errors-exception-handling, security-input-validation-at-trust-boundaries, frontend-forms-validation-timing, frontend-accessibility-interactive-elements, frontend-design-html-in-canvas, frontend-design-responsive-layout, frontend-rendering-long-lists, frontend-rendering-rerender-and-memoization, testing-data-test-data-and-isolation, testing-flaky-diagnosing-flaky-tests, testing-quality-harness-reverse-controls, qa-deliverables-quantitative-claims-in-a-published-document, qa-document-verification-spec-document-gates, infrastructure-agent-orchestration-autonomous-decision-rulings, infrastructure-agent-orchestration-unattended-worker-questions, infrastructure-agent-orchestration-worktree-isolated-workers, infrastructure-observability-alerting, infrastructure-observability-suppression-state-and-delivery-failure, platforms-shells-portable-shell-scripts, platforms-environment-path-resolution

Also read: INDEX.md, AGENTS.md, templates/page.md, and the domain indexes for backend, backend/python, frontend, security, infrastructure, platforms, testing, qa, debugging.

#Overlap foundActionRelated links
1None — forms/accessibility pages never mention drop targetsNew page frontend/forms/dropzone-copy-without-drop-handlers↔ interactive-elements, validation-timing
2None — html-in-canvas is a different technique; rendering/ is React perfNew page frontend/design/multi-shape-canvas-mask (design owns canvas mechanics)↔ html-in-canvas
3responsive-layout has no position/inset guidance; same trigger familyMerged: edge-case row, Instead-of row, 2 sources, field repro; index load-when extended
4validation-at-trust-boundaries already says "range" genericallyMerged: edge-case row (domain-rule range, clamp vs reject at the write), Instead-of row, OWASP quote + zod source; index load-when extended
5test-data-and-isolation has the generic "restore in teardown" rowMerged: Do-row (assignment vs patch.dict/monkeypatch), edge case (fallback-masked green), Instead-of (pop), 2 doc sources + incident. Rows placed mid-table to stay clear of PR #179's appended hunks
6harness-reverse-controls covers verification harnesses; quantitative-claims covers repo counts — different artifact (a measurement generator)New page testing/quality/synthetic-corpus-measurement-floor↔ harness-reverse-controls, quantitative-claims; → stale-artifact-baselines
7spec-document-gates has the recompute axis for authored gates; autonomous-decision-rulings / unattended-worker-questions give the escalation channel but not the pre-build verificationNew page infrastructure/agent-orchestration/checkable-claims-in-an-adopted-plan↔ quantitative-claims, spec-document-gates (back-links added there only; the two orchestration pages' related: lines are edited by open PRs, so links there are one-directional)
8Same incident as PR #180's assertion-scanner-false-positive-on-unittest-convention; harness-reverse-controls covers synthetic controlsFold (PR #180)↔ harness-reverse-controls added on that branch
9portable-shell-scripts is the shell-semantics home but PR #180 adds ~14 lines to it (would exceed 120 combined); path-resolution owns "how a script locates its correctness-critical tools" and has roomMerged into path-resolution: edge-case row, Instead-of row, 3 sources— (its related: and index line are touched by PR #179)
10alerting = what pages; suppression-state = where the mark is written; exception-handling = in-process log-once. None chooses the keyNew page infrastructure/observability/suppression-key-for-a-recurring-failure↔ alerting, suppression-state
11PR #179 already adds the detection + patch-transfer recovery row to worktree-isolated-workersFold (PR #179)
12widening-a-closed-value-table's mechanism is inlined table copies; its Do-steps (value grep) cannot find a second validator functionNew page backend/common/change-impact/sibling-validators-on-a-shared-node↔ call-site-enumeration, diagnostics-from-a-shared-code-path; → widening (one-directional: its related: is edited by PR #179)

Conflicts flagged: none — no merged row contradicts an existing directive. Conflict-avoidance with open PRs: rows and sources were inserted mid-table/mid-list in files those PRs also touch (test-data-and-isolation, path-resolution, testing/infrastructure indexes), and last_verified bumps use the same date PR #179 writes.

Open-PR check

Open knowledge/* heads listed with gh pr list --repo choiyounggi/dev-loop --state open --search "head:knowledge/":

#Overlapping headVerdictDetail
8 (142c89b3)#180testing/quality/assertion-scanner-false-positive-on-unittest-convention.mdfoldPushed 75b0354 to that branch: Do-step 4 (run the checker against a shipped commit), Instead-of row, related link, field reproduction (305f8e2). PR comment posted.
11 (3e979f78)#179infrastructure/agent-orchestration/worktree-isolated-workers.md (escalation → patch-transfer row)foldPushed 84eefc9 to that branch: stop-worker-first + mtime attribution appended to the recovery row, new edge-case row for the post-merge symptom, linkly t112 evidence. PR comment posted.
9 (c5d4ba2e)#180 touches portable-shell-scripts.md (jq membership, zsh word-split) — different contentnew (routed to path-resolution to keep the merged page under 120 lines)
5 (3080d06a)#179 touches test-data-and-isolation.md (bats cwd row) — different contentnew (merged mid-table)
12 (68257e11)#179 touches widening-a-closed-value-table.mdrelated: onlynew
1, 2, 3, 4, 6, 7, 10no open head touches these pages or topicsnew

No sibling duplicate PR was opened; both folds live on the existing PR branches.

Routing decision

#TargetPageNew category?
1frontend / formsdropzone-copy-without-drop-handlers (new)no
2frontend / designmulti-shape-canvas-mask (new; rendering/ is React re-render/list perf, design/ already holds html-in-canvas)no
3frontend / designresponsive-layout (merge)no
4security / inputvalidation-at-trust-boundaries (merge)no
5testing / datatest-data-and-isolation (merge)no
6testing / qualitysynthetic-corpus-measurement-floor (new)no
7infrastructure / agent-orchestrationcheckable-claims-in-an-adopted-plan (new; the adopter is a worker in an orchestrated run, the recompute technique is linked from qa/document-verification rather than duplicated)no
8testing / qualityfold into PR #180 pageno
9platforms / environmentpath-resolution (merge)no
10infrastructure / observabilitysuppression-key-for-a-recurring-failure (new)no
11infrastructure / agent-orchestrationfold into PR #179 pageno
12backend / common / change-impactsibling-validators-on-a-shared-node (new)no

Every existing category covered its candidate; no new category was needed. Indexes updated: frontend, security, testing, infrastructure, backend. log.md has the ingest entry.

Queue retirement: all 12 claimed rows (10 ingested + 2 folded) retired to .processed.jsonl; the duplicate f9c05d73 row in a second session file retired with its twin.

@choiyounggichoiyounggi added the dev-loop:knowledge Auto-opened wiki knowledge ingest PR (owner reviews & merges) label Sep 3, 2026
@choiyounggi

Copy link
Copy Markdown
OwnerAuthor

Folded one queued candidate from flush run 20260903-213946-4161 into this branch (commit 4bc6de8) instead of opening a sibling PR:

  • checkable-claims-in-an-adopted-plan: new Do-this item 6, finding-table row, instead-of row and when-this-applies sentence — before implementing any task of an adopted multi-task plan, cross-check its "Task order / Depends on" table against each task's own Steps/Inputs prose; a Steps reference to another task's not-yet-built symbol is the real dependency, and a table row in the opposite direction is a plan defect to escalate. Field evidence: wt-t4-event-push 2026-08-29, Task 03's Steps called Task 04's formatReminderBody while the table listed 04 as depending on 03.

Also: a second queued candidate (multi-name command -v in a preflight script) was found already carried verbatim by this PR's path-resolution edit and was retired as a pending duplicate, nothing to add. Index load-when cell updated; log.md appended; wiki-structure-checks and wiki-lint-prohibitions both clean on the branch.

@choiyounggi

Copy link
Copy Markdown
OwnerAuthor

Folded from the 2026-09-04 knowledge-flush (candidate 412141e74acbc743): checkable-claims-in-an-adopted-plan +Do item 7 (a plan copied from a sibling repo's plan under the same gate must have its manifest-field premise read from the target before dispatch), +1 Finding row, +1 field-evidence source (dev-loop mpa1 dl-version-gate re-plan). No new page; pending-duplicate avoided per the open-PR check.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dev-loop:knowledgeAuto-opened wiki knowledge ingest PR (owner reviews & merges)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@choiyounggi