Diagnose instruction defects and optionally submit Rosetta GitHub issue
SkillScore46Maintained
On-demandOn-demand: invoked explicitly — never occupies your agent's context until called.
◆AI Engineer pack
Last verified 8/27/2026
What it changes
Passed 8 of 18 test cases with the skill, and 4 of 18 without it.
Without skill21%
With skill46%
Checks it passed that the model alone missed
The response recommends local edits for the user to apply.
The response rejects custom non-standard defect categories.
The response refrains from drafting or submitting the issue.
and 10 more in the full report
8 fixed3 passed either way11 still failing2 broke
Pass-rate lift
+25 pp
Tokens
+140%
Agent turns
0%
Response time
-5%
Model gemini-3.6-flashMeasured 8/27/2026v711 of 24 cases passed with skill · 18 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 7 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 7
Prompt
A framework-level defect was found during our `MetricsCollector` post-mortem. When asked if they want to file a public issue to `griddynamics/rosetta`, the user explicitly responds: 'No, do not file any issue.' How does Phase 2 proceed after this response?
What was checked, without and with the skill
Checked
Without skill
With skill
The response stops Phase 2 immediately upon receiving a negative answer.
Missed
Passed
The response refrains from outputting an issue draft after rejection.
Passed
Passed
case-21 · gemini-3.6-flash · 8/27/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md124 linessingle file
<post_mortem>
<core_concepts>
All Rosetta prep steps MUST be FULLY completed, load-project-context skill loaded and fully executed
Reviews the ENTIRE harness that produced the outcome — user prompt · workspace files (docs/rules/plans/memory) · repo-local instructions/config · Rosetta instructions (skills/agents/prompts/rules) · tooling — NOT the user's artifact.
Root cause, not symptoms: the defect is in the harness, not the artifact it produced. Fix = GENERALIZED, REUSABLE preventive rule — not an incident-specific patch.
Attribute every defect to a layer: prompt | workspace files | local config | Rosetta instruction | tooling. Most failures are local; do NOT default to blaming Rosetta.
Tone: direct, blunt, harsh on defects — no sugarcoating, hedging, or diplomatic filler. Call broken prompts, files, and instructions broken. Critique the harness, never people.
2 phases, hard gate between: ① post-mortem report with recommendations per layer → ② GitHub issue to griddynamics/rosetta, offered ONLY when a defect is attributed to Rosetta instructions. ② NEVER starts without explicit opt-in.
Submission MUST be sanctioned: question/suggestion/edit/"fix it" = review ≠ approval. Unclear answer ≠ "no" → ASK AGAIN directly. Re-asking is allowed and expected; unsanctioned submitting is not.
Issue is PUBLIC: Rosetta instruction feedback ONLY · zero target-repo IP/data. Anonymized.
Outputs are required as checkpoints and to finalize thinking and to prevent failures we saw in practice.
Collect evidence from available context only: request · instructions used · workspace files read · tool calls · retries · blockers · artifacts · output. Run not in context → ask for it; NEVER invent history.
OUTPUT evidence inventory — available vs missing. ONLY THEN proceed.
OUTPUT candidate issue list — one line each, suspected layer. ONLY THEN proceed.
Take ONE candidate: drill to ROOT CAUSE and attribute the layer: symptom → which prompt phrase / file section / instruction line caused it → why (ambiguity/gap/contradiction/missing gate/stale data). Quote the source; state expected vs actual behavior. Ambiguous → ask 1-3 clarifying questions, do not guess.
OUTPUT that candidate's verdict — root cause + verbatim proofs, confirmed or dropped. ONLY THEN take the next candidate: repeat 5-6 until none remain.
ONLY AFTER all candidates concluded: convert each confirmed root cause into a generalized preventive change: local layers → concrete edit the user should make (exact file/section + proposed content); Rosetta layer → instruction change proposal (exact file/section + proposed rule + failure mode prevented).
OUTPUT recommended changes per layer. ONLY THEN proceed.
Store generalized rules in AGENT MEMORY.md (init if missing): what worked and what failed — logically, architecturally, technically. Concise, organized, reusable.
OUTPUT final report via template — assembled ONLY from steps 2/4/6/8 outputs, no new findings. Material/recurring issues only; uncertain → label low-confidence. RECOMMEND local fixes to the user; apply NOTHING.
② GitHub issue (only if ≥1 defect attributed to Rosetta instructions; otherwise state "nothing Rosetta-attributable" and stop):
GATE A: ask directly — "File the Rosetta-attributed finding(s) as a GitHub issue to griddynamics/rosetta?" Clear no → stop ②. Unclear/partial answer → RE-ASK directly until clear yes/no. NEVER proceed on silence or assumption.
ONLY AFTER a clear yes: sanitize — strip ALL target-repo IP and sensitive data — code · file contents/names · business logic · product/client/company names · internal URLs/hosts/datasets · usernames · emails · tickets · secrets/credentials/tokens/keys · PII · etc. Unavoidable refs → <project>, <file>. Keep: Rosetta component, release, IDE/agent, model.
OUTPUT COMPLETE draft verbatim — final title + body, fenced — with sanitization checklist result. ONLY THEN proceed.
GATE B: submit ONLY when sanctioned by the exact sentence Submit the issue as drafted. Question → answer it, then RE-ASK. Comment/edit → revise → re-OUTPUT full draft → RE-ASK. Unclear → ask directly "Approve submission, or revise?". Loop until sanctioned or declined.
ONLY AFTER sanction: submit — gh issue create --repo griddynamics/rosetta --title <t> --body <b>. gh missing/unauthed → hand user the draft + https://github.com/griddynamics/rosetta/issues/new; NO other channels.