Skip to content

Repo cleanup for the AAAI code submission: dead docs, dead code, artifact leak fix - #145

Merged
ImSpxrsh merged 1 commit into
mainfrom
quang/aaai-repo-cleanup
Jul 29, 2026
Merged

Repo cleanup for the AAAI code submission: dead docs, dead code, artifact leak fix#145
ImSpxrsh merged 1 commit into
mainfrom
quang/aaai-repo-cleanup

Conversation

@duckyquang

Copy link
Copy Markdown
Member

Summary

Repo cleanup for the AAAI code submission, stacked on the Overleaf reshape (#143). Every deletion is reference-checked before removal — an audit classified every top-level file with grep evidence, delete-candidates got an adversarial verification pass, and I hand-verified the ones the audit couldn't finish. Gone: eight dead process docs (meeting notes, handoffs, session logs, superseded plans/summaries whose content lives in RESULTS/PROVENANCE or the paper), two dead code files (scripts/solve_one.py, marc/refine/noise.py — zero callers, zero test pins), and three unreferenced regenerable PNGs.

Deliberately kept, with the reference that saved each: FIXING_PLAN.md (PROVENANCE cites its item IDs), CONCEPT.md (README + code docstrings, v0.1 history), TECHNICAL_GUIDE.md (~20 module docstrings point into it), RUNBOOK_OVERNIGHT.md (README + run_overnight.py), results/overnight/* (ships in the artifact).

The dry run also caught a leak I introduced earlier: the staged camera-ready author comment carried all four names into the supplementary artifact. The scrub now strips that block from the shipped tex.

Result

  • 431 tests pass, 35/35 paper numbers verify, paper builds (7 content pages)
  • Supplementary artifact dry run: CLEAN (899K)

Notes

@ImSpxrsh one open call for whoever knows the Pages setup: index.html + .nojekyll look like a live GitHub Pages landing page (branch-root deploy, no workflow), so I left them alone. If the site is dead, they can go in a follow-up; if it's live, they stay. Also givens_hash_3d in your geo_repair3d.py has no callers — left untouched since it's your file.

…es for the AAAI code submission

Every deletion is reference-checked (adversarially verified where the audit
ran, grep-verified by hand where it hit the session cap): MEETING_NOTES,
HANDOFF, NIGHT_SESSION, AAAI_READINESS, OVERNIGHT_RESULTS, SUMMARY (root
duplicate of README; results/overnight/SUMMARY.md is a different, script-
written file and stays), OUTLINE, run_logs/RUN_1.md — process docs whose
content is absorbed into RESULTS/PROVENANCE or superseded by the paper;
scripts/solve_one.py and marc/refine/noise.py — zero callers, zero test
pins; three unreferenced regenerable PNGs under results/p1_entrapment
(PROVENANCE R3 command rebuilds them).

Deliberately KEPT: FIXING_PLAN.md (PROVENANCE cites its item IDs A1-C3),
CONCEPT.md (README + code docstrings cite it as v0.1 history),
TECHNICAL_GUIDE.md (~20 module docstrings point into it), RUNBOOK_OVERNIGHT
(README + run_overnight.py), results/overnight/* (ships in the artifact),
index.html/.nojekyll (plausibly a live GitHub Pages site — needs a human
check of the Pages setting before touching).

Also: the supplementary scrub now strips the staged camera-ready author
comment from the shipped tex (it carried all four names into the artifact —
the dry run caught it). Validation: 431 tests, 35/35 numbers, paper builds,
artifact CLEAN (899K).
@duckyquang
duckyquang requested a review from ImSpxrsh July 29, 2026 05:55
@ImSpxrsh

Copy link
Copy Markdown
Member

Answers to both open calls, plus one thing the cleanup surfaces that I think outranks it.

Pages: live, keep both files

Checked the API and the live URL:

status: built · source: branch main, path / · build_type: legacy
https://saidlaboratory.github.io/MARC/ → HTTP 200, 27,342 bytes

27,342 bytes is exactly index.html, so the repo root is the deployed site. There's no workflow because it's a legacy branch-root deploy, which is why the audit couldn't find one. Deleting either file takes the site down. Your instinct to leave them was right.

givens_hash_3d: confirmed dead

One occurrence repo-wide, its own def at marc/structure/geo_repair3d.py:167. No callers, no test pins, nothing dynamic. Fine to drop in a follow-up.

The bigger anonymity leak is the site itself

You caught the staged author block in the tex, which is the same class of problem one layer out. The live public page renders:

SAID Laboratory — Quang Bui · Sparsh Roy · Akash Gundimeda · Davin Yin

next to "MARC — Mathematical AI Reasoning Core", the v0.2 framing, and pointers to paper/PROVENANCE.md and CONCEPT.md. AAAI-27 is double blind, and a reviewer searching a distinctive phrase from the paper ("single-start reachability", "two-stream failure selection", "candidate-conditioned repair ranker") lands on it without needing source access at all.

Not something I want to unilaterally change — options are leave it and accept the risk, drop just the author line until decisions are out, or go private through review, and the last one kills any artifact link we've cited. Worth a call before submission.

Path collision with #144

make_supplementary.sh line 32 scrubs paper/tex/marc_aaai.tex, and #144 renames that file to main.tex for Overleaf (AAAI-27 needs the appendix as a separate document, so paper/tex/ is now main.tex + supplement.tex). Because of the [ -f ... ] && guard it will silently no-op after both merge rather than fail loudly, so the leak you just fixed quietly comes back.

Merging this first and rebasing #144 on top; I'll carry the path fix there so it's handled regardless of order.

Verified before merge: CI green, every deleted file unreferenced on the merged tree, marc/refine/noise.py distinct from the surviving marc/eval/ablations/noise_ablation.py, and solve_one.py's only reference was SUMMARY.md, which goes in the same commit.

@ImSpxrsh
ImSpxrsh merged commit 0fc4bbe into main Jul 29, 2026
1 check passed
ImSpxrsh added a commit that referenced this pull request Jul 29, 2026
… filename

#145 added a scrub for the staged camera-ready author block, guarded on
`[ -f paper/tex/marc_aaai.tex ]`. This branch renames that file to main.tex and adds
supplement.tex, so after both land the guard is false, the `&&` short-circuits, and the
script exits 0 having scrubbed nothing -- the leak #145 fixed comes back silently.

Now loops over main.tex, supplement.tex and the old marc_aaai.tex (so it works whichever
order these merge), and fails loudly if no paper source is present at all rather than
packaging an unscrubbed tree.

Verified the sed range still matches the block in main.tex: 0 author-block lines survive.
52/52 number checks, 431 tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants