Proven skills / Compare

Design vs Testing · both proven

improve-codebase-architecture vs test-driven-development

Both skills were run through Claude twice: once on a fixed brief without the skill, once with it. The briefs differ because each is written for the job the skill claims to do, so compare each skill against its own baseline, then decide which difference matters for your work. They are in different categories, so this is a choice of job, not a head-to-head on the same job.

improve-codebase-architecture

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

Category
Design
Source
mattpocock/skills
License
MIT
Proof model
claude-opus-5-5
Brief
“Here is the orders module of a small Express app. ```js // orders.js const db = require("./db"); const stripe = require("stripe")(process.env.STRIPE_KEY); const mailer = require("./mailer"); async function createOrder(req, res) { const { items, couponCode } = req.body; if (!req.user) return res.status(401).end(); let total = 0; for (const i of items) { const p = await db.query("select price, stock from products where id = $1", [i.id]); if (p.rows[0].stock < i.qty) return res.status(409).json({ error: "out of stock" }); total += p.rows[0].price * i.qty; } if (couponCode) { const c = await db.query("select pct, expires from coupons where code = $1", [couponCode]); if (c.rows[0] && new Date(c.rows[0].expires) > new Date()) total = total * (1 - c.rows[0].pct / 100); } const charge = await stripe.paymentIntents.create({ amount: Math.round(total * 100), currency: "usd", customer: req.user.stripeId, confirm: true }); const o = await db.query("insert into orders (user_id, total, status) values ($1, $2, $3) returning id", [req.user.id, total, charge.status]); for (const i of items) await db.query("update products set stock = stock - $1 where id = $2", [i.qty, i.id]); await mailer.send(req.user.email, "Order " + o.rows[0].id, "Thanks! Total: $" + total.toFixed(2)); res.json({ id: o.rows[0].id, total }); } module.exports = { createOrder }; ``` The team keeps breaking checkout when they change coupons or stock rules, and the code is hard to test. Review the architecture and present your findings as a single HTML report: the problems you see, the changes you recommend in order of value, and what the code would look like after the most important change.”
Skill commit
5beb35b
Without the skillWith improve-codebase-architecture
⇆
Without, runWith improve-codebase-architecture, run3 independent runs per side, none selected by hand.

Download the with-skill page

test-driven-development

Use when implementing any feature or bugfix, before writing implementation code

Category
Testing
Source
obra/superpowers
License
MIT
Proof model
claude-opus-5-5
Brief
“Implement a function that parses a cron expression (the standard five fields) and returns the next run time after a given date, in TypeScript. Present the work as a single HTML page with two columns: the test file on the left and the implementation on the right, each in a code block, with a short note at the top on the order you did things in and anything you decided not to support.”
Skill commit
bb92a77
Without the skillWith test-driven-development
⇆
Without, runWith test-driven-development, run3 independent runs per side, none selected by hand.

Download the with-skill page

We don’t pick a winner for you: the pages are the evidence. Both proofs can be repeated with the brief, model and commit shown above. See alternatives to improve-codebase-architecture or alternatives to test-driven-development.