{"results":[{"id":"adaptation-is-bidimensional-across-frequency-and-risk","text":"The architecture adapts along two largely independent dimensions: cost allocation adapts to access frequency (the celebrity threshold converts follower count into a write-vs-read cost placement decision, partitioning authors between eager push and read-time pull), while safety mechanisms adapt to domain risk (explicit locking for financial domains, coordination-free structural discipline for social domains). Both adaptations appear structurally encoded in module design rather than being purely runtime decisions, though the celebrity threshold itself operates as a runtime decision boundary.","truth_value":"IN","justification_count":1,"dependent_count":0,"challenges":[],"last_reviewed":"2026-06-06T06:26:57","review_result":"invalid","source_type":""},{"id":"algorithmic-simplicity-is-preferred-over-optimal-performance","text":"The codebase consistently favors algorithmic correctness and simplicity over performance optimality: search heuristics use admissible but loose bounds (haversine for road distance, global max speed for time estimates), guaranteeing optimal results at the cost of extra exploration, while data structure operations use brute-force approaches (linear prefix scan, key-by-key Merkle diff, full re-sort on insertion, linear cache purge), correct by simplicity at pedagogical scale.","truth_value":"IN","justification_count":1,"dependent_count":1,"challenges":[],"last_reviewed":"2026-06-06T06:26:57","review_result":"pass","source_type":""},{"id":"autocomplete-decay-is-read-time","text":"Time decay is computed lazily at query time in `search_prefix` using `raw_freq * decay_factor^hours_elapsed`; raw frequencies stored in the trie are never modified by decay.","truth_value":"IN","justification_count":0,"dependent_count":1,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"chat-dual-ordering-scheme","text":"Messages carry both per-conversation sequence numbers (for pagination and read cursors) and global Lamport timestamps (for causal ordering), serving different purposes by design.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"chat-dual-ordering-sequence-and-lamport","text":"Chat system uses per-conversation monotonic sequence numbers for total order within a conversation and Lamport timestamps for cross-conversation causal ordering.","truth_value":"IN","justification_count":0,"dependent_count":1,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"chat-fanout-on-write","text":"`_deliver` routes messages at send time based on recipient presence: online/away users get messages in `inbox`, offline users in `offline_queue` — this is fan-out-on-write, not fan-out-on-read.","truth_value":"IN","justification_count":0,"dependent_count":2,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"complete-dependency-injection-enables-hermetic-testing","text":"The combination of time injection (notification, rate limiter, crawler) and service injection (payment processor) covers both sources of test non-determinism — temporal behavior and external service responses — unless the inconsistent current_time fallback means some code paths silently revert to wall-clock time when injection is omitted.","truth_value":"IN","justification_count":1,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"conflict-resolution-depth-scales-with-distribution","text":"Conflict detection infrastructure scales with distribution topology: single-node systems detect conflicts at mutation time via optimistic locking, multi-device systems detect at sync time via version vectors, and fully distributed systems maintain ongoing anti-entropy covering both writes and deletes — each matching resolution complexity to the divergence characteristics its topology demands.","truth_value":"IN","justification_count":1,"dependent_count":2,"challenges":[],"last_reviewed":"2026-06-05T18:21:49","review_result":"pass","source_type":""},{"id":"correctness-and-simplicity-share-the-same-mechanism","text":"The codebase achieves both correctness and simplicity through the same underlying mechanism: leveraging existing structures (heaps, topics, sorted lists) rather than inventing new ones, so that correctness guarantees of underlying structures are inherited from reuse while construction-time constraints eliminate entire classes of bugs — parsimony and safety are not in tension but emerge from the same design choices.","truth_value":"IN","justification_count":1,"dependent_count":3,"challenges":[],"last_reviewed":"2026-06-05T18:21:49","review_result":"pass","source_type":""},{"id":"correctness-by-construction-not-validation","text":"Correctness is enforced by structural construction rather than runtime validation: immutable values and synchronized data structures prevent state corruption, while monotonic progressions (read cursors, window lifecycles) make regression unrepresentable — together eliminating entire bug classes at compile-time rather than catching them at runtime.","truth_value":"IN","justification_count":1,"dependent_count":4,"challenges":[],"last_reviewed":"2026-06-05T18:21:49","review_result":"pass","source_type":""},{"id":"correctness-gaps-cluster-at-temporal-boundaries","text":"Both classes of correctness weakness — assumed-but-unenforced invariants (quorum overlap, payment balance checks) and temporal check gaps (payment double-spend race, notification rate-limit re-checks) — share a common pattern: conditions that must hold across a time interval but are verified only at a single point, creating windows where silent violations can occur under edge conditions the code structurally permits.","truth_value":"OUT","justification_count":1,"dependent_count":2,"challenges":[],"last_reviewed":"2026-06-05T18:21:49","review_result":"invalid","source_type":""},{"id":"correctness-unifies-reuse-and-construction","text":"The codebase achieves correctness through two complementary mechanisms: spatial reuse (repurposing existing structures like heaps, topics, and lists with structural constraints) and temporal ratchets (monotonic cursors, irreversible finalization that prevent state regression) — together covering both structure-domain and time-domain consistency without purpose-built validation.","truth_value":"IN","justification_count":1,"dependent_count":1,"challenges":[],"last_reviewed":"2026-06-06T06:26:57","review_result":"pass","source_type":""},{"id":"cost-model-adapts-to-access-frequency","text":"The read-heavy default cost model (reads bear increasing correctness burden as distribution complexity grows) is selectively overridden for high-read-frequency paths (autocomplete caches, leaderboard reindexing pre-compute at write time), creating an access-pattern-aware cost allocation rather than a uniform reads-pay policy.","truth_value":"IN","justification_count":1,"dependent_count":3,"challenges":[],"last_reviewed":"2026-06-06T06:26:57","review_result":"pass","source_type":""},{"id":"crawl-uses-simulated-clock","text":"The crawl loop advances a `sim_time` counter for politeness scheduling rather than calling `time.sleep()`, making the simulation deterministic; real `time.time()` is only used to measure total crawl duration for stats.","truth_value":"IN","justification_count":0,"dependent_count":1,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"current-time-fallback-inconsistent","text":"Rate limiter defaults `current_time` to `time.time()` while chat system defaults to `0.0`, creating different behavior when the parameter is omitted.","truth_value":"OUT","justification_count":0,"dependent_count":3,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"design-coherence-bounded-by-enforceability","text":"The codebase's alignment between quality and performance strategies (structural correctness reinforcing efficient runtime behavior, verified through deterministic testing) forms a mutually supportive system for properties enforceable by construction. This coherence does not extend to temporal correctness, where gaps are documented and accepted rather than enforced — suggesting that design investment concentrates where structural guarantees are achievable.","truth_value":"OUT","justification_count":1,"dependent_count":2,"challenges":[],"last_reviewed":"2026-06-05T18:21:49","review_result":"invalid","source_type":""},{"id":"design-to-verification-traceability","text":"The codebase achieves end-to-end traceability from design specification to runtime verification: prescriptive plans create verifiable specifications, structural construction ensures correctness properties are testable by design, and deterministic testing validates the correspondence — forming a plan-to-construction-to-verification pipeline.","truth_value":"IN","justification_count":1,"dependent_count":1,"challenges":[],"last_reviewed":"2026-06-06T06:26:57","review_result":"pass","source_type":""},{"id":"deterministic-testability-by-design","text":"The combination of standalone stdlib-only modules and explicit time injection creates conditions favorable to hermetic, deterministic testing in several SDI implementations — modules can be verified without external services due to their self-contained design, and the three systems using time injection can be tested without time mocking. However, not all 25 modules inject time, and inconsistent defaults at integration boundaries limit how uniformly this property holds across the full codebase.","truth_value":"IN","justification_count":1,"dependent_count":2,"challenges":[],"last_reviewed":"2026-06-06T06:26:57","review_result":"pass","source_type":""},{"id":"email-service-input-storage-decoupling","text":"`Email` dataclass objects are the send-time input representation; stored emails are plain dicts created by `_store_email`, decoupling the send API from the query format.","truth_value":"IN","justification_count":0,"dependent_count":1,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"enforceability-boundary-adapts-through-write-shifting","text":"The design's enforceability boundary is not static: where the self-reinforcing structural correctness loop holds, selective write-shifting adjusts the read/write cost split to match access frequency, extending the effectively-enforced region for high-traffic paths by pre-computing at write time what would otherwise be deferred to the riskier read path.","truth_value":"OUT","justification_count":1,"dependent_count":1,"challenges":[],"last_reviewed":"2026-06-05T18:21:49","review_result":"invalid","source_type":""}],"count":89,"limit":20,"offset":0}