* test(#2929): capture prompt-budget parity corpus pre-refactor Phase 2 of epic #1671 generalizes prompt-budget's trim ladder into a shared context-composer seam. Its success condition is that review-prompt output does not change, and the only authority on "did not change" is the behavior that shipped before the refactor. Capture that behavior now, while it is still the live implementation. 47 characterization cases, every `expected` value computed by executing the current implementation rather than hand-authored — the independence CONTRIBUTING.md "Fixture provenance (#2371)" asks for. A corpus is only worth what it can detect, so this one was validated by mutation rather than assumed. Five deliberate defects were injected and each must be caught by at least one case: - the note reserve deducted unconditionally instead of only under pressure - the pressure test relaxed from `>` to `>=` - a no-op head-shrink still setting the shrunk flag - the per-plan floor dropped from the proportional share - drop order reversed Two of those exposed real holes in the first cut of this corpus, and the cases that close them exist because of it: - `>=` was caught by NOTHING. At exact cap the only trimmable fragment was a floored plan group, and the 1024-char floor absorbed the entire trim, so the mutation was byte-invisible. A3b/A3c put a droppable at exactly the cap, which makes the strict inequality observable as context kept vs omitted. - No case reached proportional-truncate at all — B6 and B7 both hard-failed the min-set pre-check first, leaving planTruncationPct at 0 across every case and the floor semantics entirely unexercised. Rebudgeted to 700 and 1100 so the min-set fits and the truncate step is actually reached; they now record 40.20% and 48.80%. The A4/A10 families sweep the pressure boundary from both sides, which is where this function has regressed before: CONTEXT.md's LEARNING.prompt-budget.boundary-gap records PR #3708 shipping two regressions that only fired when the baseline sat inside the NOTE_RESERVE_TOKENS band, because the suite paired a trivially-fitting budget with a trivially-overflowing one and never sampled between them. A4 pins that nothing is trimmed from the cap down to 81 tokens under it; A10 pins that pressure fires at +1. Together with A3b/A3c they satisfy row (d) of RULESET.TESTS.boundary-coverage.fixtures. Two facts the corpus establishes that the design notes had wrong: - "" and null sections are NOT distinguished. applyBudget uses truthy checks throughout, so an empty-string section is treated as absent: not rendered, not dropped, never recorded in `omitted`. B13b pins this while the ladder is actively trimming, where only the non-empty `research` is dropped. - Sizing matters. B12/B13 were first written at a budget where both hard-failed the min-set check and returned "", so comparing them compared two empty strings and proved nothing. Committed as its own commit, ahead of the refactor, and regenerated against the pre-refactor implementation, so the oracle is demonstrably independent of the change it will adjudicate. Refs #2929 * refactor(#2929): extract the context-composer seam from prompt-budget Epic #1671 needs prompt-budget's budget-trimming logic for a second consumer — per-runtime artifact emission — but it is walled inside the cross-AI review pipeline. Lift it into a shared seam so later phases can call it, without changing what the review pipeline emits. ADR-1671 specifies the composer as "priority + binary-search cutoff to a per-runtime budget". Read against the code it generalizes, that contract cannot express the thing being generalized. applyBudget is not a cutoff: it is a fixed five-step ladder in which each section carries its own shrink strategy, and only three of its eight sections are ever dropped. PROJECT.md is head-shrunk to N lines; plans are proportionally tail-truncated with a per-plan 1024-byte floor; instructions and roadmap are never touched at all. A cutoff composer sorts by priority and discards the tail — it has no way to say "shrink this one", "truncate that one but never below 1 KB each", or "these three are the only droppables, in this order". Building to the literal contract and routing prompt-budget through it would have silently changed review-prompt output, which is the one outcome this phase forbids. So shrink strategies are the core abstraction here, and cutoff becomes one strategy among them — the right one for per-runtime emission in Phases 3-4, not for this ladder. That is an elaboration of the ADR's intent, not a departure from it, and ADR-1671 is updated to say so. Three decisions worth stating: - The composer DECIDES; the caller RENDERS. composeWithinBudget returns a plan of surviving fragments and never a string. assemblePrompt's rendering is prompt-shaped (`## Roadmap`, `### <file>`, the note in position two), and owning it in the composer would force emission to adopt prompt-shaped rendering. The split is what lets one seam serve both consumers. - The budget unit is INJECTED via `measure(text)`. prompt-budget passes its chars/4 estimator; emission will pass a byte counter, which ADR-1671 requires for emission caps. The existing code converts a token budget to a character budget with a hardcoded `* 4`; that assumption is now an explicit `charsPerUnit` inverse, which is precisely what a byte unit needs in order to reuse this. - The entry point is `composeWithinBudget`, not `applyBudget`. That name already exists twice — src/prompt-budget.cts and src/graphify.cts, the latter being an unrelated graph-edge budget. A third would make every symbol search in this repo ambiguous, and it already misresolves: preflight and impact queries for "applyBudget" return graphify's. Behavior is unchanged and proven so: all 47 characterization cases reproduce byte-identically, and the corpus is mutation-validated rather than merely green (see the preceding commit). prompt-budget.cts drops from 436 to 343 lines and from eighteen mutable accumulators to two, both inside a helper copied verbatim. estimateTokens deliberately stays in prompt-budget and keeps its exact math: src/phase-estimation.cts re-exports it as measureTokens, and CONTEXT.md pins plan estimates and recorded actuals to that same scale, so moving or changing it would silently break the calibration loop. Refs #2929 * docs(#2929): document the context-composer seam and amend ADR-1671 Adds the INVENTORY row, the CONTEXT.md glossary entry (a PR gate for new domain modules), and a mutation-matrix entry for the new module. The ADR amendment is the substantive part. ADR-1671 specified the composer as "priority + binary-search cutoff to a per-runtime budget". Implementing Phase 2 established that a cutoff alone cannot express the function the platform generalizes, so the ADR now records shrink strategies as the core abstraction with cutoff as one strategy among them, reserved for per-runtime emission in Phases 3-4. Recording it in the ADR matters because Phases 3-6 are planned against that contract and would otherwise be planned against a mechanism that does not work. The mutation-matrix entry is not bookkeeping. Stryker scores per module against a named .cjs, so relocating the ladder out of prompt-budget.cjs would leave the extracted code unmeasured while prompt-budget's own score floated free of the logic it used to cover. context-composer gets its own entry at the same floor. Refs #2929 * test(#2929): pin the effectiveBudget rounding mode in the parity corpus An isolated correctness review found a real blind spot: mutating `Math.floor` to `Math.round` in the effectiveBudget calculation failed ZERO of the 47 corpus cases. Every (budget, safetyMarginPct) pair in the generator happened to produce a whole number, so floor, round and ceil all agreed and the rounding mode was entirely unpinned by a corpus whose whole job is to pin observable behavior. Three cases fix that by straddling the .5 boundary: A11 95 * 0.90 = 85.5 floor 85, round 86 -> the two disagree A12 97 * 0.90 = 87.3 floor and round agree; ceil (88) does not A13 93 * 0.85 = 79.05 same guard at a non-multiple-of-10 margin, so the margin arithmetic is exercised and not just the budget A11 alone catches the round mutation; all three catch ceil. Regenerated against the pre-refactor implementation (`git show 9557f8552:src/prompt-budget.cts`), so the expanded corpus keeps the independence property the original capture had. The corpus is now mutation-validated against seven injected defects, every one caught: unconditional note reserve, `>` relaxed to `>=`, no-op head-shrink setting its flag, the truncate floor ignored, drop order reversed, and both rounding-mode changes. Refs #2929 * feat(#2929): flexReserve floors and the byte-stable isolate prefix Two of issue #2929's "Done when" items were unimplemented rather than deferred, and an isolated review flagged them alongside my own audit. Both are part of ADR-1671's composer contract, so shipping the seam without them would have left Phases 3-4 building against a contract that does not exist yet. flexReserve is a per-fragment floor in measure units that every strategy must respect, which is what makes it different from the pre-existing floorChars: that one is a chars-denominated detail of proportional-truncate alone and is retained unchanged. A floored fragment is never dropped, is never head-shrunk below its floor, and raises its own proportional cap. A fragment already smaller than its floor is untouchable outright. Metadata gains `floored`, listing the ids whose floor actually prevented a trim — a guarantee no caller can observe is a guarantee no test can hold you to. isolate marks the byte-stable canonical prefix the ADR calls for: never trimmed, never dropped, but still counted, because a prefix excluded from accounting would silently under-count real context. Metadata gains `isolatePrefix` so a caller can hash or assert on the exact bytes. Declaring an isolate fragment after a non-isolate one throws: a prefix that is not at the front is not a prefix, and accepting it would make the cross-runtime stability claim meaningless. Adds tests/context-composer.test.cjs for the exact new semantics and tests/context-composer.property.test.cjs for the five invariants, including the budget-monotonicity property the issue names explicitly. Both are registered in the mutation matrix, since coverage does not migrate with relocated code. prompt-budget uses neither feature, and its output is unchanged: all 50 corpus cases still reproduce byte-identically. Refs #2929 * chore(#2929): allowlist the prompt-budget parity suite The parity corpus needs its own test file and that makes prompt-budget a three-file module against a limit of two. The lint offers consolidation or an allowlist entry with justification; the entry is the right call here. Consolidation would mean folding the characterization suite into prompt-budget.test.cjs, which is the one thing that should not happen to it. The parity suite is a distinct concern with a distinct lifecycle: it is generated rather than hand-written, it is named by scripts/mutation-matrix.cjs as its own scoring target, and its failure means something categorically different from a unit-test failure — not "this behavior is wrong" but "observable output moved". Burying it inside a general unit file would obscure exactly that signal. The allowlist is an identity ratchet, so this entry pins today's three exact filenames: adding a fourth still fails, and dropping back to two requires removing the entry. Refs #2929 * fix(#2929): register the new module with two gates it was missing The remote matrix caught three defects that no local check could, because the local runner is blocked in this repo and these suites had therefore never executed. Eight failures, identical on node22 and node24, so nothing environment-shaped. Two are the new-module ripple. A net-new src/*.cts lands in six places and this change had reached four of them — .gitignore, INVENTORY, the manifest, and the CONTEXT.md glossary — while missing the ESLint ignore list (tsc OUTPUTS must not be linted; repo-invariants asserts linted-xor-ignored) and the mutation ratchet baseline (a deliberate review-visible mirror of the matrix floors, which every COVERED module must carry). Both are now registered, the ratchet at the same floor of 66 the matrix declares. The third was a test asserting an outcome it had made impossible. It set budget:1 alongside a 400-char required fragment, so the group budget came out at -99 and the proportional-truncate step was skipped entirely — the deliberate "non-positive group budget is skipped, never clamped" rule inherited from the original ladder. Nothing was trimmed, and the test then asserted a truncation. Rebudgeted so the step actually runs, with the arithmetic written out in a comment so the next reader does not have to re-derive why 120 rather than 80. Fixing that surfaced a genuine bug in the composer. `floored` is documented as recording fragments whose flexReserve prevented a trim that would otherwise have happened, but the push sat in the else-branch of "content did not change", so it only fired when nothing was trimmed at all. A fragment truncated to a reserve-raised cap has also had a trim prevented — 40 characters' worth in the test above — and was silently absent from the field that exists to make the guarantee observable. The condition was already right; it was in the wrong branch. Now recorded on both paths: a drop prevented outright, and a truncation capped higher than the share alone would have allowed. Parity is unaffected — prompt-budget never sets flexReserve, so the branch is unreachable from every corpus path, and all 50 cases still match. Refs #2929 * chore(#2929): backfill changeset PR number (#2958) * chore(#2929): correct the corpus case count in the changeset fragment --------- Co-authored-by: sim <sim@local>
1723 lines
128 KiB
JSON
1723 lines
128 KiB
JSON
{
|
|
"version": 1,
|
|
"description": "Characterization corpus of prompt-budget.applyBudget captured from the pre-refactor implementation. Oracle for issue #2929 (epic #1671 Phase 2). Regenerate with node scripts/gen-prompt-budget-parity-corpus.cjs --write",
|
|
"cases": [
|
|
{
|
|
"name": "A1-exact-cap",
|
|
"why": "A1/row 3 — total measures exactly effectiveBudget; must NOT be treated as pressure",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 100,
|
|
"estimatedTokens": 100,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A2-one-under-cap",
|
|
"why": "A2/row 5 — one token under; no pressure, no reserve deducted",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 100,
|
|
"estimatedTokens": 99,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A3-one-over-cap",
|
|
"why": "A3/row 4 — one token over; pressure engages the ladder",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 100,
|
|
"estimatedTokens": 101,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A3b-exact-cap-with-droppable-present",
|
|
"why": "exact-cap discriminator — baseline lands exactly ON effectiveBudget with a droppable available. Pins that `baseline > effectiveBudget` is STRICT: at equality nothing is dropped. Mutating the comparison to >= flips context from kept to omitted, which A1 alone cannot detect.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 201,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A3c-one-under-cap-with-droppable-present",
|
|
"why": "companion to A3b — one token under the cap with the same droppable available. Together they bracket the strict-inequality boundary from below.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP\n\n## Context\n\nCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 200,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-0",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-0. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 200,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-1",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-1. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 199,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-2",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-2. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 198,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-39",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-39. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 161,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-40",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-40. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 160,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-79",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-79. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 121,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-80",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-80. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 120,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A4-reserve-band-minus-81",
|
|
"why": "boundary-coverage.fixtures row (d) — baseline at effectiveBudget-81. Pins the NEGATIVE control: within NOTE_RESERVE_TOKENS distance of the cap, NOTHING may be trimmed. Early-pressure firing here is the exact PR #3708 regression.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 119,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A10-pressure-band-plus-1",
|
|
"why": "boundary-coverage.fixtures row (d), above-cap mirror — baseline at effectiveBudget+1; pressure fires, NOTE_RESERVE_TOKENS is deducted, and context is dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A10-pressure-band-plus-2",
|
|
"why": "boundary-coverage.fixtures row (d), above-cap mirror — baseline at effectiveBudget+2; pressure fires, NOTE_RESERVE_TOKENS is deducted, and context is dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A10-pressure-band-plus-40",
|
|
"why": "boundary-coverage.fixtures row (d), above-cap mirror — baseline at effectiveBudget+40; pressure fires, NOTE_RESERVE_TOKENS is deducted, and context is dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A10-pressure-band-plus-79",
|
|
"why": "boundary-coverage.fixtures row (d), above-cap mirror — baseline at effectiveBudget+79; pressure fires, NOTE_RESERVE_TOKENS is deducted, and context is dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A10-pressure-band-plus-80",
|
|
"why": "boundary-coverage.fixtures row (d), above-cap mirror — baseline at effectiveBudget+80; pressure fires, NOTE_RESERVE_TOKENS is deducted, and context is dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A10-pressure-band-plus-81",
|
|
"why": "boundary-coverage.fixtures row (d), above-cap mirror — baseline at effectiveBudget+81; pressure fires, NOTE_RESERVE_TOKENS is deducted, and context is dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A5-safety-margin-default",
|
|
"why": "A4 — default 10% margin; effectiveBudget = floor(budget * 0.9)",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 90,
|
|
"estimatedTokens": 89,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A11-fractional-effective-budget-half",
|
|
"why": "pins the ROUNDING MODE of effectiveBudget. 95 * (1 - 10/100) = 85.5, where Math.floor (85) and Math.round (86) disagree. Without a fractional case the mode is unpinned and floor->round is a byte-invisible mutation, which an isolated review confirmed against the 47-case corpus.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 95,
|
|
"options": {
|
|
"safetyMarginPct": 10
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 95,
|
|
"effectiveBudget": 85,
|
|
"estimatedTokens": 85,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A12-fractional-effective-budget-below-half",
|
|
"why": "companion to A11 below the .5 point: 97 * 0.90 = 87.3, where floor and round agree but Math.ceil (88) would not. Guards the mutation A11 does not cover.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 97,
|
|
"options": {
|
|
"safetyMarginPct": 10
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 97,
|
|
"effectiveBudget": 87,
|
|
"estimatedTokens": 87,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A13-fractional-effective-budget-odd-margin",
|
|
"why": "third rounding guard at a non-multiple-of-10 margin: 93 * (1 - 15/100) = 79.05. Exercises the margin arithmetic itself, not just the budget, since safetyMarginPct is caller-supplied.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 93,
|
|
"options": {
|
|
"safetyMarginPct": 15
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 93,
|
|
"effectiveBudget": 79,
|
|
"estimatedTokens": 79,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A6-safety-margin-zero",
|
|
"why": "A5 — 0% margin means the full budget is usable",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 100,
|
|
"estimatedTokens": 89,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A7-safety-margin-hundred",
|
|
"why": "A5 — 100% margin drives effectiveBudget to 0, forcing the min-set hard fail",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {
|
|
"safetyMarginPct": 100
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 0,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A8-budget-zero",
|
|
"why": "A6 — non-positive budget must hard-fail cleanly, never negative-length slice",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 0,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 0,
|
|
"effectiveBudget": 0,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "A9-budget-negative",
|
|
"why": "A6 — negative budget must not crash",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": -50,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": -50,
|
|
"effectiveBudget": -45,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B3-head-shrink-engaged",
|
|
"why": "B3/row 7 — projectMd longer than projectMdHeadLines under pressure; shrunk flag true",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"projectMd": "0------------------\n1------------------\n2------------------\n3------------------\n4------------------\n5------------------\n6------------------\n7------------------\n8------------------\n9------------------\n10-----------------\n11-----------------\n12-----------------\n13-----------------\n14-----------------\n15-----------------\n16-----------------\n17-----------------\n18-----------------\n19-----------------\n20-----------------\n21-----------------\n22-----------------\n23-----------------\n24-----------------\n25-----------------\n26-----------------\n27-----------------\n28-----------------\n29-----------------\n30-----------------\n31-----------------\n32-----------------\n33-----------------\n34-----------------\n35-----------------\n36-----------------\n37-----------------\n38-----------------\n39-----------------\n40-----------------\n41-----------------\n42-----------------\n43-----------------\n44-----------------\n45-----------------\n46-----------------\n47-----------------\n48-----------------\n49-----------------\n50-----------------\n51-----------------\n52-----------------\n53-----------------\n54-----------------\n55-----------------\n56-----------------\n57-----------------\n58-----------------\n59-----------------\n60-----------------\n61-----------------\n62-----------------\n63-----------------\n64-----------------\n65-----------------\n66-----------------\n67-----------------\n68-----------------\n69-----------------\n70-----------------\n71-----------------\n72-----------------\n73-----------------\n74-----------------\n75-----------------\n76-----------------\n77-----------------\n78-----------------\n79-----------------\n80-----------------\n81-----------------\n82-----------------\n83-----------------\n84-----------------\n85-----------------\n86-----------------\n87-----------------\n88-----------------\n89-----------------\n90-----------------\n91-----------------\n92-----------------\n93-----------------\n94-----------------\n95-----------------\n96-----------------\n97-----------------\n98-----------------\n99-----------------\n100----------------\n101----------------\n102----------------\n103----------------\n104----------------\n105----------------\n106----------------\n107----------------\n108----------------\n109----------------\n110----------------\n111----------------\n112----------------\n113----------------\n114----------------\n115----------------\n116----------------\n117----------------\n118----------------\n119----------------"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 326,
|
|
"omitted": [],
|
|
"projectMdShrunk": true,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B4-head-shrink-noop",
|
|
"why": "B4/row 7+9 — fewer lines than the cap; text unchanged and shrunk flag MUST stay false",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"projectMd": "0------------------\n1------------------\n2------------------\n3------------------\n4------------------"
|
|
},
|
|
"budget": 60,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 60,
|
|
"effectiveBudget": 60,
|
|
"estimatedTokens": 98,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B5-head-shrink-zero-lines",
|
|
"why": "B5/row 8 — projectMdHeadLines <= 0 yields the empty string",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"projectMd": "0------------------\n1------------------\n2------------------\n3------------------\n4------------------\n5------------------\n6------------------\n7------------------\n8------------------\n9------------------\n10-----------------\n11-----------------\n12-----------------\n13-----------------\n14-----------------\n15-----------------\n16-----------------\n17-----------------\n18-----------------\n19-----------------\n20-----------------\n21-----------------\n22-----------------\n23-----------------\n24-----------------\n25-----------------\n26-----------------\n27-----------------\n28-----------------\n29-----------------\n30-----------------\n31-----------------\n32-----------------\n33-----------------\n34-----------------\n35-----------------\n36-----------------\n37-----------------\n38-----------------\n39-----------------\n40-----------------\n41-----------------\n42-----------------\n43-----------------\n44-----------------\n45-----------------\n46-----------------\n47-----------------\n48-----------------\n49-----------------\n50-----------------\n51-----------------\n52-----------------\n53-----------------\n54-----------------\n55-----------------\n56-----------------\n57-----------------\n58-----------------\n59-----------------\n60-----------------\n61-----------------\n62-----------------\n63-----------------\n64-----------------\n65-----------------\n66-----------------\n67-----------------\n68-----------------\n69-----------------\n70-----------------\n71-----------------\n72-----------------\n73-----------------\n74-----------------\n75-----------------\n76-----------------\n77-----------------\n78-----------------\n79-----------------\n80-----------------\n81-----------------\n82-----------------\n83-----------------\n84-----------------\n85-----------------\n86-----------------\n87-----------------\n88-----------------\n89-----------------\n90-----------------\n91-----------------\n92-----------------\n93-----------------\n94-----------------\n95-----------------\n96-----------------\n97-----------------\n98-----------------\n99-----------------\n100----------------\n101----------------\n102----------------\n103----------------\n104----------------\n105----------------\n106----------------\n107----------------\n108----------------\n109----------------\n110----------------\n111----------------\n112----------------\n113----------------\n114----------------\n115----------------\n116----------------\n117----------------\n118----------------\n119----------------"
|
|
},
|
|
"budget": 60,
|
|
"options": {
|
|
"safetyMarginPct": 0,
|
|
"projectMdHeadLines": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 60,
|
|
"effectiveBudget": 60,
|
|
"estimatedTokens": 122,
|
|
"omitted": [],
|
|
"projectMdShrunk": true,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B6-plan-truncate-share-above-floor",
|
|
"why": "B6/row 13 — proportional share ABOVE the floor, so the share (not the floor) decides. Budget 700: min-set is 5+5+256+256=522 which fits, so this reaches the truncate step instead of hard-failing the way the original budget-400 version did. groupBudget 598 of 1000 => charsBudget 2392, share 1196 per plan > floor 1024.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
|
|
},
|
|
{
|
|
"file": "b.md",
|
|
"content": "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
|
|
}
|
|
]
|
|
},
|
|
"budget": 700,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 700-token budget.\nOmitted sections: none.\nPlan content truncated by approximately 40%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\n\n### b.md\n\nBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB",
|
|
"metadata": {
|
|
"budget": 700,
|
|
"effectiveBudget": 700,
|
|
"estimatedTokens": 674,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 40.2,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B7-plan-truncate-floor-binding",
|
|
"why": "B7/row 10 — share falls BELOW the 1024-char floor so the floor wins, and the resulting total deliberately EXCEEDS the group budget. Budget 1100: min-set 5+5+4*256=1034 fits; groupBudget 992 => charsBudget 3968 => share 992 < 1024, so every plan is held at the floor. This is the case that proves a floor is a per-fragment guarantee, not a budget cap.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
|
|
},
|
|
{
|
|
"file": "b.md",
|
|
"content": "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
|
|
},
|
|
{
|
|
"file": "c.md",
|
|
"content": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
{
|
|
"file": "d.md",
|
|
"content": "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
|
|
}
|
|
]
|
|
},
|
|
"budget": 1100,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 1100,
|
|
"effectiveBudget": 1100,
|
|
"estimatedTokens": 1106,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 48.8,
|
|
"hardFailed": true,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B8-zero-sized-plans",
|
|
"why": "B8/row 11 — total original chars 0; no divide-by-zero, pct stays 0",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": ""
|
|
},
|
|
{
|
|
"file": "b.md",
|
|
"content": ""
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 60,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 60,
|
|
"effectiveBudget": 60,
|
|
"estimatedTokens": 86,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B9-nonpositive-plan-budget",
|
|
"why": "B9/row 12 — computed plan budget <= 0 skips the truncate step ENTIRELY rather than clamping",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 100,
|
|
"estimatedTokens": 101,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B11-drop-order-all-three",
|
|
"why": "B11/row 14 — droppables leave in declared order: context, research, requirements",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC",
|
|
"research": "SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS",
|
|
"requirements": "QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: context, research, requirements.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 119,
|
|
"omitted": [
|
|
"context",
|
|
"research",
|
|
"requirements"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B11b-drop-context-only",
|
|
"why": "B11 — pressure relieved after the first drop; research and requirements survive",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC",
|
|
"research": "SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS",
|
|
"requirements": "QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
|
|
},
|
|
"budget": 300,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 300-token budget.\nOmitted sections: context.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP\n\n## Research\n\nSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS\n\n## Requirements\n\nQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ",
|
|
"metadata": {
|
|
"budget": 300,
|
|
"effectiveBudget": 300,
|
|
"estimatedTokens": 142,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B12-droppables-absent",
|
|
"why": "B12/row 15 — null droppables are not dropped and never appear in omitted. Budget 400 (not 120) so this actually RENDERS: at 120 the min-set pre-check hard-fails and the case would compare two empty strings.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": null,
|
|
"research": null,
|
|
"requirements": null
|
|
},
|
|
"budget": 400,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 400,
|
|
"effectiveBudget": 400,
|
|
"estimatedTokens": 329,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B13-droppables-empty-string",
|
|
"why": "B13/row 23 — empty-string droppables. Paired with B12 to pin whether \"\" and null are distinguished. They are NOT: applyBudget uses truthy checks throughout, so \"\" behaves as absent. This case records that fact rather than the design doc's claim that they differ.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "",
|
|
"research": "",
|
|
"requirements": ""
|
|
},
|
|
"budget": 400,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 400,
|
|
"effectiveBudget": 400,
|
|
"estimatedTokens": 329,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "B13b-empty-string-droppable-under-pressure",
|
|
"why": "B13 companion — an empty-string droppable while the ladder is ACTIVELY running. Pins that \"\" is never recorded in omitted even under real pressure, which B12/B13 (no pressure) cannot show. research is real and IS dropped, so the ladder is demonstrably engaged.",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "",
|
|
"research": "SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS",
|
|
"requirements": ""
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n<note>\nPrompt automatically trimmed to fit a 200-token budget.\nOmitted sections: research.\nPlan content truncated by approximately 0%.\nTreat any missing context as out-of-scope rather than a review concern.\n</note>\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 103,
|
|
"omitted": [
|
|
"research"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "C1-no-trim-no-note",
|
|
"why": "C1/row 1 — everything fits; no note, noteInjected false",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"projectMd": "0------------------\n1------------------\n2------------------",
|
|
"context": "CCCCCCCCCCCCCCCCCCCC",
|
|
"research": "SSSSSSSSSSSSSSSSSSSS",
|
|
"requirements": "QQQQQQQQQQQQQQQQQQQQ"
|
|
},
|
|
"budget": 1000,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Project\n\n0------------------\n1------------------\n2------------------\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP\n\n## Context\n\nCCCCCCCCCCCCCCCCCCCC\n\n## Research\n\nSSSSSSSSSSSSSSSSSSSS\n\n## Requirements\n\nQQQQQQQQQQQQQQQQQQQQ",
|
|
"metadata": {
|
|
"budget": 1000,
|
|
"effectiveBudget": 900,
|
|
"estimatedTokens": 85,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "C4-min-set-hard-fail",
|
|
"why": "C4/row 16 — min-set pre-check exceeds budget; empty output and estimatedTokens 0",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 100,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 100,
|
|
"effectiveBudget": 90,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "C5-post-assembly-hard-fail",
|
|
"why": "C5/row 17 — survives the min-set check but the assembled prompt still overflows; real measured size reported",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "C7-custom-note-template",
|
|
"why": "note template placeholders {budget} {omittedList} {planTruncationPct} all substitute",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
|
|
},
|
|
"budget": 200,
|
|
"options": {
|
|
"safetyMarginPct": 0,
|
|
"noteTemplate": "TRIMMED b={budget} o={omittedList} p={planTruncationPct}"
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\nTRIMMED b=200 o=context p=0\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 200,
|
|
"effectiveBudget": 200,
|
|
"estimatedTokens": 67,
|
|
"omitted": [
|
|
"context"
|
|
],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "C8-omitted-list-none",
|
|
"why": "renderNote emits the literal \"none\" when a trim occurred but nothing was dropped",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
],
|
|
"projectMd": "0------------------\n1------------------\n2------------------\n3------------------\n4------------------\n5------------------\n6------------------\n7------------------\n8------------------\n9------------------\n10-----------------\n11-----------------\n12-----------------\n13-----------------\n14-----------------\n15-----------------\n16-----------------\n17-----------------\n18-----------------\n19-----------------\n20-----------------\n21-----------------\n22-----------------\n23-----------------\n24-----------------\n25-----------------\n26-----------------\n27-----------------\n28-----------------\n29-----------------\n30-----------------\n31-----------------\n32-----------------\n33-----------------\n34-----------------\n35-----------------\n36-----------------\n37-----------------\n38-----------------\n39-----------------\n40-----------------\n41-----------------\n42-----------------\n43-----------------\n44-----------------\n45-----------------\n46-----------------\n47-----------------\n48-----------------\n49-----------------\n50-----------------\n51-----------------\n52-----------------\n53-----------------\n54-----------------\n55-----------------\n56-----------------\n57-----------------\n58-----------------\n59-----------------\n60-----------------\n61-----------------\n62-----------------\n63-----------------\n64-----------------\n65-----------------\n66-----------------\n67-----------------\n68-----------------\n69-----------------\n70-----------------\n71-----------------\n72-----------------\n73-----------------\n74-----------------\n75-----------------\n76-----------------\n77-----------------\n78-----------------\n79-----------------\n80-----------------\n81-----------------\n82-----------------\n83-----------------\n84-----------------\n85-----------------\n86-----------------\n87-----------------\n88-----------------\n89-----------------\n90-----------------\n91-----------------\n92-----------------\n93-----------------\n94-----------------\n95-----------------\n96-----------------\n97-----------------\n98-----------------\n99-----------------\n100----------------\n101----------------\n102----------------\n103----------------\n104----------------\n105----------------\n106----------------\n107----------------\n108----------------\n109----------------\n110----------------\n111----------------\n112----------------\n113----------------\n114----------------\n115----------------\n116----------------\n117----------------\n118----------------\n119----------------"
|
|
},
|
|
"budget": 120,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 120,
|
|
"effectiveBudget": 120,
|
|
"estimatedTokens": 316,
|
|
"omitted": [],
|
|
"projectMdShrunk": true,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "D1-all-sections-present",
|
|
"why": "full assembly order: instructions, note, roadmap, project, plans, context, research, requirements",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "one.md",
|
|
"content": "1111111111111111111111111111111111111111"
|
|
},
|
|
{
|
|
"file": "two.md",
|
|
"content": "2222222222222222222222222222222222222222"
|
|
}
|
|
],
|
|
"projectMd": "0------------------\n1------------------\n2------------------\n3------------------",
|
|
"context": "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC",
|
|
"research": "SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS",
|
|
"requirements": "QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
|
|
},
|
|
"budget": 5000,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Project\n\n0------------------\n1------------------\n2------------------\n3------------------\n\n## Plans\n\n### one.md\n\n1111111111111111111111111111111111111111\n\n### two.md\n\n2222222222222222222222222222222222222222\n\n## Context\n\nCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC\n\n## Research\n\nSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS\n\n## Requirements\n\nQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ",
|
|
"metadata": {
|
|
"budget": 5000,
|
|
"effectiveBudget": 4500,
|
|
"estimatedTokens": 119,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "D2-no-optional-sections",
|
|
"why": "minimum viable shape — only the two never-droppables plus one plan",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 5000,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 5000,
|
|
"effectiveBudget": 4500,
|
|
"estimatedTokens": 39,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "D3-zero-plans",
|
|
"why": "empty plans array — headers still assembled, reduce over [] is 0",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": []
|
|
},
|
|
"budget": 5000,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n",
|
|
"metadata": {
|
|
"budget": 5000,
|
|
"effectiveBudget": 4500,
|
|
"estimatedTokens": 27,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "D4-crlf-content",
|
|
"why": "row 25 — CRLF measured and sliced identically to LF under the token unit",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "alpha\r\nbeta\r\ngamma",
|
|
"roadmap": "one\r\ntwo\r\nthree",
|
|
"plans": [
|
|
{
|
|
"file": "a.md",
|
|
"content": "line 0\r\nline 1\r\nline 2\r\nline 3\r\nline 4\r\nline 5\r\nline 6\r\nline 7\r\nline 8\r\nline 9\r\nline 10\r\nline 11\r\nline 12\r\nline 13\r\nline 14\r\nline 15\r\nline 16\r\nline 17\r\nline 18\r\nline 19\r\nline 20\r\nline 21\r\nline 22\r\nline 23\r\nline 24\r\nline 25\r\nline 26\r\nline 27\r\nline 28\r\nline 29\r\nline 30\r\nline 31\r\nline 32\r\nline 33\r\nline 34\r\nline 35\r\nline 36\r\nline 37\r\nline 38\r\nline 39\r\nline 40\r\nline 41\r\nline 42\r\nline 43\r\nline 44\r\nline 45\r\nline 46\r\nline 47\r\nline 48\r\nline 49\r\nline 50\r\nline 51\r\nline 52\r\nline 53\r\nline 54\r\nline 55\r\nline 56\r\nline 57\r\nline 58\r\nline 59"
|
|
}
|
|
],
|
|
"projectMd": "p0\r\np1\r\np2\r\np3\r\np4\r\np5\r\np6\r\np7\r\np8\r\np9\r\np10\r\np11\r\np12\r\np13\r\np14\r\np15\r\np16\r\np17\r\np18\r\np19\r\np20\r\np21\r\np22\r\np23\r\np24\r\np25\r\np26\r\np27\r\np28\r\np29\r\np30\r\np31\r\np32\r\np33\r\np34\r\np35\r\np36\r\np37\r\np38\r\np39\r\np40\r\np41\r\np42\r\np43\r\np44\r\np45\r\np46\r\np47\r\np48\r\np49\r\np50\r\np51\r\np52\r\np53\r\np54\r\np55\r\np56\r\np57\r\np58\r\np59\r\np60\r\np61\r\np62\r\np63\r\np64\r\np65\r\np66\r\np67\r\np68\r\np69\r\np70\r\np71\r\np72\r\np73\r\np74\r\np75\r\np76\r\np77\r\np78\r\np79"
|
|
},
|
|
"budget": 120,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 120,
|
|
"effectiveBudget": 120,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "D5-unicode-content",
|
|
"why": "row 26 — multibyte and astral content; chars/4 counts UTF-16 units, and slice may split a surrogate pair (pinned as current behavior)",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "héllo wörld ünicode",
|
|
"roadmap": "日本語のロードマップ",
|
|
"plans": [
|
|
{
|
|
"file": "ünï.md",
|
|
"content": "🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉"
|
|
}
|
|
],
|
|
"context": "ΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩΩ"
|
|
},
|
|
"budget": 150,
|
|
"options": {
|
|
"safetyMarginPct": 0
|
|
}
|
|
},
|
|
"expected": {
|
|
"prompt": "",
|
|
"metadata": {
|
|
"budget": 150,
|
|
"effectiveBudget": 150,
|
|
"estimatedTokens": 0,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": true,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "D6-plan-filename-affects-budget",
|
|
"why": "S5 — per-plan wrapper cost \"### <file>\\n\\n\" counts toward staticBaseTokens",
|
|
"input": {
|
|
"sections": {
|
|
"instructions": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
|
|
"roadmap": "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR",
|
|
"plans": [
|
|
{
|
|
"file": "a-very-long-plan-filename-that-costs-tokens.md",
|
|
"content": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
}
|
|
]
|
|
},
|
|
"budget": 5000,
|
|
"options": {}
|
|
},
|
|
"expected": {
|
|
"prompt": "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII\n\n## Roadmap\n\nRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR\n\n## Plans\n\n### a-very-long-plan-filename-that-costs-tokens.md\n\nPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP",
|
|
"metadata": {
|
|
"budget": 5000,
|
|
"effectiveBudget": 4500,
|
|
"estimatedTokens": 50,
|
|
"omitted": [],
|
|
"projectMdShrunk": false,
|
|
"planTruncationPct": 0,
|
|
"hardFailed": false,
|
|
"noteInjected": false
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|