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
Add page-adjustment and figure-integrity builtin skills
New skills (auto-inherited by all projects):
- page-adjustment: gap-proportional strategies for fitting papers to
page limits; appendix-first for new content; sensitive areas guidance
- figure-integrity: all figure/table data must trace to result files;
plotting scripts must load from files not literals; protected during
page adjustment
Updated writer.prompt to reference skills instead of inlining duplicate
rules. Simplified _enforce_page_count prompts to defer strategy choice
to the writer + skills.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: ark/templates/agents/writer.prompt
+9-42Lines changed: 9 additions & 42 deletions
Original file line number
Diff line number
Diff line change
@@ -60,51 +60,18 @@ Every quantitative claim in the paper must be traceable to a real result file:
60
60
3. **If a result doesn't exist**, do not write the claim. Instead, leave a LaTeX comment: `% TODO: result not available — needs experiment`
61
61
4. **Do NOT describe experiments that weren't run**. If `results/` is empty or contains only simulated data, do not write an Experiments section that claims real results were obtained.
62
62
63
-
## Hard Page Limit — {VENUE_PAGES} pages (MANDATORY)
63
+
## Page Limit — {VENUE_PAGES} pages
64
64
65
-
The paper body (excluding references and appendix) has a strict page target:
66
-
- **Maximum**: {VENUE_PAGES} pages. Exceeding this means automatic desk rejection. This is the hard constraint — never violate it.
67
-
- **Minimum**: The last page of body text should be at least 70% filled. Up to 30% whitespace at the bottom is acceptable.
65
+
The paper body (excluding references and appendix) must not exceed **{VENUE_PAGES} pages** (desk rejection). The last page should be at least 70% filled.
68
66
69
-
**Before making ANY change**, check current page count. Then:
67
+
Before making changes, check the current page count. Refer to the **page-adjustment** skill for compression/expansion strategies and the **figure-integrity** skill for rules on modifying figures and tables.
70
68
71
-
- **Over {VENUE_PAGES} pages**: COMPRESS first. Do NOT add content until under the limit.
72
-
- **At or near the limit**: For every paragraph added, remove equal or more text.
73
-
- **Well under the limit (last page < 70% filled)**: ADD substantive content — deeper analysis, more related work comparisons, expanded methodology details. Do NOT pad with filler.
69
+
Always ensure `\clearpage` appears before `\bibliography` so references start on a new page.
74
70
75
-
**Always ensure `\clearpage` appears before `\bibliography`** so references start on a new page.
76
-
77
-
## Figure Placement Rules (MUST check after every edit)
71
+
## Figure Placement
78
72
79
73
After every modification, compile and check that:
80
-
1. **No blank pages with only figures** — if a figure can't fit on the current page, it may float to a later page. If this creates a page with only figure(s) and no text, fix it by:
81
-
- Moving the `\begin{figure}` declaration earlier in the text
82
-
- Reducing figure height with `\includegraphics[width=...,height=...]`
83
-
- Using `[!htbp]` placement specifier instead of `[t]`
84
-
2. **`\FloatBarrier` before the last section** — add `\FloatBarrier` (from `\usepackage{placeins}`) immediately before the last body section (usually Conclusion). This guarantees all figures appear before the final section, not after it. Example:
85
-
```
86
-
\FloatBarrier
87
-
\section{Conclusion}
88
-
```
89
-
3. **Figures match their context** — a figure referenced in Section 3 should appear on or near Section 3's pages, not 2 pages later
90
-
4. **Multi-panel figures use correct environment** — figures with 2+ panels (side-by-side) should use `\begin{figure*}` (full width) in multi-column templates, so fonts are readable
91
-
5. **No large whitespace gaps on body pages** — floats that don't fit on the current page can leave a big vertical gap (e.g., a paragraph ends, several inches of whitespace, then the next section starts on the next page). After compiling, visually scan every body page:
92
-
- If you see a gap larger than ~1/4 of page height between paragraphs, it's a float placement problem
93
-
- Fix it by: shrinking the offending figure, moving its `\begin{figure}` closer to where it's first referenced, switching `[t]` to `[!htbp]`, or combining adjacent small figures into one
94
-
- As a last resort, allow the float to appear slightly earlier or later than its reference rather than creating mid-page whitespace
95
-
96
-
If you see layout issues after compiling, fix them before finishing.
97
-
98
-
**Compression strategies** (in order of priority):
99
-
1. Move detailed ablations, sensitivity analyses, and per-category breakdowns to `\appendix`
100
-
2. Merge Discussion and Conclusion into one section
101
-
3. Replace verbose multi-paragraph explanations with concise text
102
-
4. Compress tables — remove redundant rows/columns, use `\small` or `\footnotesize`
103
-
5. Remove any content that repeats information from another section
104
-
105
-
**Expansion strategies** (when too short):
106
-
1. Deepen analysis/discussion — explain WHY, not just WHAT
107
-
2. Add more related work with specific comparisons to your approach
description: Rules for maintaining figure and table data integrity. All visual data must trace to result files — never invented or modified for convenience.
Every number displayed in a figure or table must be traceable to a file in `results/` or `data/`. If the source file doesn't exist, the figure should not exist either.
12
+
13
+
## When Creating or Updating Figures
14
+
15
+
1.**Read the source data first.** Before writing any plotting script, read the actual result file (`results/*.json`, `results/*.csv`) and extract the exact values. Do NOT hardcode numbers from memory or from the paper text.
16
+
2.**Load data from files, not literals.** Plotting scripts must `json.load()` or `pandas.read_csv()` from the result file. Acceptable:
17
+
```python
18
+
withopen("results/exp3_repair_n100.json") as f:
19
+
data = json.load(f)
20
+
drr = data["mean_drr"]
21
+
```
22
+
Not acceptable:
23
+
```python
24
+
drr =0.942# from the paper
25
+
```
26
+
3.**Handle missing data honestly.** If a result file doesn't exist or is incomplete:
27
+
- Leave the figure cell/bar/point blank or mark it "N/A"
28
+
- Add a `% TODO` comment in the LaTeX caption
29
+
- Do NOT invent a plausible value
30
+
31
+
## When the Paper Text Cites a Figure
32
+
33
+
The flow is always: **experiment → result file → figure → paper text**. Never the reverse.
34
+
35
+
- If the paper says "F1=0.891 (Figure 4)" — verify that Figure 4's plotting script reads a file that contains 0.891.
36
+
- If the paper text and the figure disagree, the result file is the authority. Fix whichever is wrong.
37
+
38
+
## During Page Adjustment
39
+
40
+
Figures and tables are **protected zones** during page compression or expansion:
41
+
42
+
- You may **resize** a figure (change `width`/`height` in `\includegraphics`)
43
+
- You may **move** a figure to a different position in the LaTeX source or to the appendix
44
+
- You may **change float placement** (`[t]`, `[!htbp]`, `[p]`)
45
+
- You must NOT **change the data** shown in the figure
46
+
- You must NOT **regenerate the figure with different values**
47
+
- You must NOT **remove data points, bars, or table rows** to make it smaller
48
+
49
+
## After Any Figure Modification
50
+
51
+
1.**Spot-check values.** Pick 2-3 numbers from the figure and verify them against the source file.
52
+
2.**Check captions.** If the figure was moved or its context changed, update the caption to remain accurate.
53
+
3.**Check references.** Ensure all `\ref{fig:...}` in the text still point to the correct figure.
54
+
55
+
## Common Mistakes to Avoid
56
+
57
+
- Regenerating a plotting script from scratch using numbers "remembered" from the paper text, when the original script loaded from a result file
58
+
- Changing figure data during page compression to make the figure smaller
59
+
- Copying a figure caption's numbers into a new version of the figure without reading the actual data
60
+
- Creating a figure for an experiment that was blocked or incomplete — an honest "not evaluated" note is better than a fabricated chart
description: Strategies for fitting a paper to a venue's page limit without destroying content quality. Applies to any phase that modifies paper content.
Page adjustment is surgery, not demolition. Every change must preserve the paper's technical accuracy, figure correctness, and citation integrity. The approach should be proportional to the gap — small gaps need small edits, large gaps may require structural changes.
12
+
13
+
## Assess the Gap First
14
+
15
+
Before making any change, compile and measure:
16
+
-**How many pages over/under?** This determines the scale of intervention.
17
+
-**Small gap (< 0.3 pages):** Tighten or loosen prose — a sentence here, a paragraph there. No structural changes needed.
18
+
-**Medium gap (0.3–1.0 pages):** May need to add/remove a paragraph, resize a figure, or move a subsection to appendix.
19
+
-**Large gap (> 1.0 pages):** Structural changes — move entire subsections to/from appendix, add/remove a discussion section, consolidate related work.
20
+
21
+
Match the intervention to the gap. Do not restructure the paper to fix a 0.2-page overshoot.
22
+
23
+
## When Adding New Content
24
+
25
+
When new experiment results or analyses need to be added (review phase, dev phase, any iteration):
26
+
27
+
1.**Consider appendix for details.** Full experiment methodology, detailed tables, and per-category breakdowns often fit better in `\appendix`, with a brief summary (1-3 sentences) and forward reference in the main body.
28
+
2.**Budget before writing.** Estimate how much space the new content needs. If the main body is already at or near the limit, the appendix is the natural home for details.
29
+
3.**Balance additions with removals.** If you add a paragraph, look for an equal-length passage that can be condensed or moved to appendix. Do this in the same edit — do not defer to a later compression pass.
30
+
31
+
## Available Strategies
32
+
33
+
These are tools in your toolbox. Choose based on the gap size and paper structure — there is no fixed priority order.
34
+
35
+
**For compression (over limit):**
36
+
- Tighten prose: merge overlapping sentences, remove hedging ("it is worth noting that..."), collapse short lists into inline text
37
+
- Move subsections to `\appendix`: per-category breakdowns, detailed ablations, extended proofs, large tables — keep a summary in the body
0 commit comments