skills/dag-feedback-synthesizer/SKILL.md
Synthesizes actionable feedback from validation results, confidence scores, and iteration triggers. Creates structured improvement guidance for re-execution. Activate on 'synthesize feedback', 'improvement suggestions', 'actionable feedback', 'iteration guidance', 'feedback generation'. NOT for iteration detection (use dag-iteration-detector) or convergence tracking (use dag-convergence-monitor).
npx skillsauth add curiositech/windags-skills dag-feedback-synthesizerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a DAG Feedback Synthesizer, transforming quality signals into actionable improvement guidance that maximizes re-execution success.
Multiple conflicting quality signals detected?
├─ Validation FAILED + Confidence HIGH (>0.8)
│ └─ Priority: Fix validation errors first (structure over content)
│ └─ Action: Generate structural improvements, preserve content approach
├─ Validation PASSED + Confidence LOW (<0.5)
│ └─ Priority: Address confidence factors (content over structure)
│ └─ Action: Focus on accuracy, sources, completeness improvements
├─ Hallucination DETECTED + User Feedback POSITIVE
│ └─ Priority: Verify hallucination severity vs user satisfaction
│ └─ Action: If severity > 0.8, prioritize factual fixes over user preferences
└─ All Signals NEGATIVE
└─ Priority: Triage by estimated impact score
└─ Action: Select top 3 improvements by impact × feasibility
Total improvements count?
├─ 1-3 improvements: Individual handling
│ └─ Create detailed guidance for each
├─ 4-8 improvements: Category grouping
│ └─ Group by: missing_content > incorrect_content > structural > quality
├─ 9+ improvements: Priority filtering
│ └─ Filter to critical/high only, defer medium/low to next iteration
└─ Budget constraints (tokens < 1000)?
└─ Emergency mode: Critical validation fixes only
Iteration number?
├─ First iteration (n=1):
│ └─ Comprehensive feedback, include examples and context
├─ Second iteration (n=2):
│ └─ Focus on unaddressed items from iteration 1, add anti-patterns
├─ Third+ iteration (n≥3):
│ └─ Radical strategy change - question fundamental approach
└─ Final iteration (budget exhausted)?
└─ Accept best effort - generate "good enough" criteria
Symptoms: Multiple contradictory quality signals create unclear priorities Detection Rule: If improvement priorities contain both "fix X" and "preserve X" for same element Fix: Apply signal hierarchy (validation > confidence > hallucination > iteration triggers)
Symptoms: Feedback addresses detected issues but creates new problems of equal severity Detection Rule: If sum(improvement.estimatedImpact) < 0.1 or creates circular dependencies Fix: Focus on single highest-impact change, defer others to subsequent iterations
Symptoms: Feedback too vague to act on ("improve quality", "be more specific") Detection Rule: If improvement suggestions lack concrete examples or success criteria Fix: Generate specific examples, measurable criteria, and exact change instructions
Symptoms: Improvements erase successful elements while fixing problems Detection Rule: If preserveElements overlap with improvement targets Fix: Explicitly protect working elements in guidance, use additive rather than replacement suggestions
Symptoms: Too many improvements overwhelm agent execution capacity Detection Rule: If improvement count > 8 or total estimated impact > 3.0 Fix: Apply ruthless prioritization - only critical and high priority items
Input Signals:
Decision Process:
Generated Feedback:
improvements:
- priority: critical
issue: "Hallucination detected: Claims JWT tokens are stored in localStorage"
suggestion: "Remove claim about localStorage. State that token storage method should be specified in implementation"
successCriteria: "No hallucination findings for security claims"
- priority: high
issue: "Sources score 20% - no documentation references"
suggestion: "Add links to Express.js security docs, OWASP guidelines"
successCriteria: "Sources score above 70%"
Input Signals:
Decision Process:
Generated Feedback:
summary:
overallAssessment: needs_work
strategy: "Focus on single critical fix rather than multiple small changes"
improvements:
- priority: critical
issue: "Missing required 'installation' section"
suggestion: "Add ## Installation section with npm install command and basic setup"
estimatedImpact: 0.9
This skill should NOT be used for:
dag-iteration-detectordag-convergence-monitordag-output-validatordag-confidence-scorerdag-hallucination-detectorDelegate to other skills when:
dag-iteration-detectordag-convergence-monitordag-output-validatordag-iteration-detectortools
Building resilient distributed systems with circuit breakers, retries with full-jitter exponential backoff, retry budgets (per-request 3-attempt + per-client 10% ratio per Google SRE), deadline propagation, and the cascading-failure math (4 layers × 3 retries = 64x amplification). Grounded in Resilience4j, Microsoft Cloud Patterns, AWS Architecture Blog (Marc Brooker), and Google SRE Book.
testing
Designing HTTP cache headers that work correctly across browsers, CDNs, and shared proxies — `Cache-Control` directives per RFC 9111, `stale-while-revalidate` and `stale-if-error` per RFC 5861, the Vary header for varying responses, and surrogate keys for tag-based purging. Grounded in IETF RFCs and Cloudflare/Fastly docs.
development
Use when designing or fixing a Content Security Policy on a real site, choosing between nonce-based and hash-based CSP, adding strict-dynamic, debugging "Refused to execute inline script" errors, deploying CSP in report-only mode first, configuring report-to / report-uri, or auditing an existing policy for unsafe-inline / unsafe-eval / wildcards. Triggers: "CSP blocks legitimate inline script", strict-dynamic, nonce-{RANDOM}, sha256-{HASH}, object-src none, base-uri none, frame-ancestors, Trusted Types, X-Content-Security-Policy obsolete, report-only vs enforced. NOT for general HTTP security headers (HSTS, COOP/COEP), Trusted Types deep dive, CORS configuration, or building a WAF.
tools
Choosing and operating an HTTP API versioning strategy that doesn't break clients — Stripe's date-based pinned versions, the Deprecation/Sunset header pair (RFC 9745 + RFC 8594), URI vs header vs media-type approaches, and the version-transformer pattern. Grounded in Stripe's published architecture and IETF RFCs.