mirror of
https://github.com/Permissionless-Software-Foundation/psf-memo.git
synced 2026-09-21 16:52:01 -07:00
Merge specifier profile-wallet-connect briefing
By coder.
This commit is contained in:
@@ -49,6 +49,19 @@ distinct from per-task verification results, which live in
|
||||
to keep the worker copies tiny. This cut a notifications-query mutation run
|
||||
from 20+ minutes to ~2 minutes.
|
||||
|
||||
- **Which directories bloat and how to keep them clean.** The two directories
|
||||
that grow without bound are `<component>/tmp/acceptance` (LevelDB dirs from
|
||||
acceptance runs, up to ~1.5G) and `<component>/target/mutation-workers`
|
||||
(per-run worker copies, up to ~14G). Both are gitignored build artifacts.
|
||||
Clean them before any mutation run:
|
||||
```bash
|
||||
rm -rf psf-memo-db/tmp/acceptance psf-memo-db/target/mutation-workers \
|
||||
psf-memo-client/tmp/acceptance psf-memo-client/target/mutation-workers
|
||||
```
|
||||
`architect-startup.sh` now checks these and reports them as `[FAIL]` when
|
||||
they exceed a size threshold, so a bloated dir is caught before it slows a
|
||||
mutation run.
|
||||
|
||||
- **`memo-db.js` (client HTTP adapter) is excluded from mutation testing.** It
|
||||
uses ESM + a directory import (`../config`) that is only resolvable via
|
||||
react-scripts/webpack, so it cannot be loaded under plain `node --test`. Its
|
||||
|
||||
@@ -48,6 +48,18 @@ Parse survivors with a small python one-liner over `d['results']` (filter
|
||||
`--workers 8` and `--status-interval` so progress is visible.
|
||||
- Run verification sequentially (never concurrent with acceptance generation).
|
||||
|
||||
## Keep build dirs clean (mutation speed)
|
||||
`mutate4javascript` copies the whole project (including `tmp/`) into each worker.
|
||||
Stale `tmp/acceptance` (LevelDB dirs) and `target/mutation-workers` can bloat to
|
||||
~1.5G and ~14G, making the worker copy alone many GB and mutation runs appear to
|
||||
hang. `architect-startup.sh` now flags any of these over 100MB as `[FAIL]`.
|
||||
Clean them before any mutation run:
|
||||
```bash
|
||||
rm -rf psf-memo-db/tmp/acceptance psf-memo-db/target/mutation-workers \
|
||||
psf-memo-client/tmp/acceptance psf-memo-client/target/mutation-workers
|
||||
```
|
||||
This cut a notifications-query mutation run from 20+ minutes to ~2 minutes.
|
||||
|
||||
## Refactorer forwards your own review commit back
|
||||
After you send a `priority: 00` review commit to coder+refactorer, the refactorer
|
||||
merges and forwards that SAME commit back to you. It is a no-op ("Already up to
|
||||
|
||||
+3
-2
@@ -359,6 +359,7 @@ At the end of each session, update this file:
|
||||
- Note the current `master` HEAD commit.
|
||||
- State the next feature to work on.
|
||||
|
||||
Current `master` HEAD: `d3903fa` (backlog cleared of all previously listed
|
||||
features; direction set to front-end improvements to `psf-memo-client`).
|
||||
Current `master` HEAD: `d99eda3` (merged architect's notifications refactor +
|
||||
startup bloat check; verified db 315 passing + lint clean, client 239 passing +
|
||||
lint clean + build succeeds).
|
||||
Next action: **ask the user for the next front-end improvement to spec**.
|
||||
|
||||
@@ -73,6 +73,27 @@ for c in psf-memo-client psf-memo-db psf-memo-indexer; do
|
||||
&& ok "$c runner-worker" || bad "$c runner-worker"
|
||||
done
|
||||
|
||||
echo "== Bloated build dirs (slow mutation copies) =="
|
||||
# tmp/acceptance and target/mutation-workers are gitignored build artifacts
|
||||
# that mutate4javascript copies into every worker. If they grow large, the
|
||||
# worker copy alone can be many GB and mutation runs appear to hang. Flag any
|
||||
# dir over the threshold so it can be cleaned before a mutation run.
|
||||
BLOAT_KB=102400 # 100 MB
|
||||
for d in psf-memo-client/tmp/acceptance psf-memo-client/target/mutation-workers \
|
||||
psf-memo-db/tmp/acceptance psf-memo-db/target/mutation-workers \
|
||||
psf-memo-indexer/tmp/acceptance psf-memo-indexer/target/mutation-workers; do
|
||||
if [ -d "$d" ]; then
|
||||
size_kb=$(du -sk "$d" 2>/dev/null | awk '{print $1}')
|
||||
if [ -n "$size_kb" ] && [ "$size_kb" -gt "$BLOAT_KB" ]; then
|
||||
bad "$d is ${size_kb}KB (clean with: rm -rf $d)"
|
||||
else
|
||||
ok "$d clean"
|
||||
fi
|
||||
else
|
||||
ok "$d absent"
|
||||
fi
|
||||
done
|
||||
|
||||
echo
|
||||
echo "Result: $pass ok, $fail fail"
|
||||
[ "$fail" -eq 0 ]
|
||||
|
||||
Reference in New Issue
Block a user