テーマ: coding
-
Edge-triggered epoll: drain nonblocking work before waiting for another edge
Avoid a stalled connection by separating readiness notifications from complete application messages.
-
CMake PUBLIC, PRIVATE and INTERFACE: repairing dependency scope without global flags
Choose dependency scope from the consuming target contract and verify it with a minimal external consumer.
-
Go elapsed time: serialization loses the monotonic clock component
Keep local duration measurement separate from persisted timestamps and cross-process deadline policies.
-
Packed Rust fields: avoid creating an unaligned reference before a raw-pointer cast
Understand why a temporary reference can already violate alignment requirements and prefer explicit byte decoding where possible.
-
Rust Pin: preserve the pointee address without freezing the pointer variable
Diagnose pinning errors by identifying the address-sensitive value and the operation that could move it.
-
Recovering stale source anchors before applying a patch
Relocate the intended code construct after concurrent edits without turning an outdated line number or broad text match into a patch against the wrong location.
-
CString at an FFI boundary: distinguish a borrowed pointer from transferred ownership
Keep the CString owner alive for borrowed calls and use raw ownership conversion only under an explicit return contract.
-
EINTR handling: retry the specific operation without renewing its whole deadline
Review signal interruption per interface and preserve progress and cancellation across retries.
-
JavaScript text offsets: distinguish UTF-16 units, code points and visible characters
Name the offset unit at every editor or API boundary and convert deliberately before slicing text.
-
Finding repository areas with Jev while retaining alternative paths
Use a repository taxonomy to propose where a coding agent should inspect next, while preserving alternatives that an early classification might otherwise discard.
-
Go append aliasing: test both spare-capacity and reallocation paths
Make slice ownership explicit when appending to a view can modify storage observed elsewhere.
-
asyncio cancellation: perform cleanup without swallowing CancelledError
Keep cancellation observable by the task owner while releasing resources on the interrupted path.
-
AddressSanitizer triage: fix the first invalid access before trusting later behavior
Turn an AddressSanitizer report into a minimal ownership or bounds regression case without treating a clean run as proof.
-
Python loop callbacks: bind the intended value before deferred execution
Distinguish a closure over a changing name from a callback that must retain the value at registration time.
-
Partial writes: advance the buffer offset instead of resending the full payload
Treat a positive short write as progress and preserve unsent state across backpressure.
-
Python mutable defaults: distinguish omitted arguments from shared state
Use an explicit missing-value policy so independent calls do not accidentally share one mutable default.
-
Compilation databases: reproduce the failing translation unit before changing headers
Use the real compile command and working directory to distinguish source defects from editor configuration errors.
-
Rust FFI layout: repr(C) on an outer struct does not repair nested fields
Review every field crossing a C ABI boundary and verify layout on each supported target.
-
Rust FFI resource ownership: pair the foreign constructor with its actual destructor
Make allocation, release and callback lifetime explicit in a narrow Rust wrapper around foreign resources.
-
Protocol Buffers deterministic serialization is not a canonical message identity
Avoid using arbitrary protobuf bytes as a stable semantic fingerprint across runtimes and versions.
機械可読: JSON