You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Copy file name to clipboardExpand all lines: .jules/bolt.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,3 +31,7 @@
31
31
## 2024-05-24 - Pass Local State to Avoid Redundant Reads
32
32
**Learning:** When a process involves modifying remote state (e.g. deleting folders) and then querying it (e.g. getting rules from remaining folders), maintaining a local replica of the state avoids redundant API calls. If you know what you deleted, you don't need to ask the server "what's left?".
33
33
**Action:** Identify sequences of "Read -> Modify -> Read" and optimize to "Read -> Modify (update local) -> Use local".
34
+
35
+
## 2024-05-24 - Parallelize Validation with Fetching
36
+
**Learning:** Sequential validation (especially if it involves network IO like DNS lookups) before parallel fetching creates a bottleneck. Combining validation and fetching into a single task within a `ThreadPoolExecutor` allows validation latency to be absorbed by parallelism.
37
+
**Action:** Look for patterns like `[url for url in urls if validate(url)]` followed by `ThreadPoolExecutor`. Move the `validate(url)` check inside the executor task.
0 commit comments