49 of 49 posts
What we actually use HTTP 402 for
We wanted the forgotten Payment Required status code for license checkout. It ended up somewhere better: letting AI agents buy single API calls.
Company · September 2026 · 3 min read
SqlCertForge 2.0: every certificate on SQL Server, not just the TLS binding
The tool that bound a TLS certificate to SQL Server now inventories every certificate surface — TDE, Always Encrypted, endpoints, backup encryption, cell-level, PolyBase — and proved every one of them on real SQL Server 2025.
SqlCertForge · September 2026 · 7 min read
Why debugging makes you save first
Start a debug run on an unsaved buffer in DetentShell and you get a prompt: save, or cancel. There is no third button. This generates questions, so here...
DetentShell · August 2026 · 2 min read
What happens when you click Stop
Everyone writes an accidental while ($true) eventually. The interesting question is what the next ten seconds look like. Here they’re uneventful. Click...
DetentShell · August 2026 · 2 min read
There's no telemetry in DetentShell
Most feature lists describe what a product does. This one is about what DetentShell doesn’t do, on purpose, because for a scripting tool the absences ma...
DetentShell · August 2026 · 2 min read
The tab label nobody could see
We once shipped a tab you couldn’t read. The label rendered, technically, in a color that matched its background in one particular theme. A screenshot r...
DetentShell · August 2026 · 2 min read
We run the same test suite in pwsh and in DetentShell
Anyone who’s used an embedded PowerShell console has a story about the day it behaved differently from the real one. The engine is identical; the hostin...
DetentShell · August 2026 · 2 min read
The badge that tells you a script won't survive PowerShell 7
The risky scripts in any shop are the ones nobody has tried on PowerShell 7 yet. They sit in a folder, they matter, and the assumption is they’ll port f...
DetentShell · August 2026 · 2 min read
How we test DetentShell's UI in Windows Sandbox
Our unit suite once told us the debugger was fine while F5 was dead at every breakpoint. Nine hundred tests, all green. Every command and view-model beh...
DetentShell · August 2026 · 2 min read
Small features from the ISE we refused to lose
None of these would headline a release. Together they’re most of what made the ISE feel lived-in, so they all came along. Edit Profile, on the Tools men...
DetentShell · August 2026 · 2 min read
Show-Command and snippets
Both of these features were cut from the plan at one point. Both got built anyway, and when the question of removing them came up, the argument that set...
DetentShell · August 2026 · 2 min read
Remote tabs show you whose machine you're on
The most expensive command in remote administration is the one that runs on the wrong box. Everyone who manages servers has done it or watched it: ident...
DetentShell · August 2026 · 2 min read
Reading a 2,000-line script you didn't write
The scripts that matter are rarely tidy. The one you inherit is two thousand lines long, defines forty functions, and was organized by appending. Detent...
DetentShell · August 2026 · 2 min read
What Narrator hears when it opens DetentShell
Turn on Narrator and tab across the toolbar of most home-grown developer tools. You’ll hear “button.” Then “button” again. Fourteen times, if the toolba...
DetentShell · August 2026 · 3 min read
Running PowerShell 7 and 5.1 in the same window
Ask an admin which PowerShell they use and the answer is usually both. PowerShell 7 for new work. Windows PowerShell 5.1 for the module that never got p...
DetentShell · August 2026 · 2 min read
An ISE for PowerShell 7
Microsoft has said it plainly: the Windows PowerShell ISE is no longer being developed. It belongs to Windows PowerShell 5.1, and 5.1 is in maintenance....
DetentShell · August 2026 · 2 min read
Quick Fix previews everything before it touches your script
Automated code fixers have earned their reputation. Most people have watched one “clean up” a working script into a broken one, or rewrite a file in pla...
DetentShell · August 2026 · 2 min read
Console color without wrecking your log files
PowerShell 7 colors its output with ANSI escape codes. Get-ChildItem gets colored file names, table headers come out green, and in a terminal the engine...
DetentShell · August 2026 · 2 min read
Debugging with the keys you already know
Set a breakpoint by clicking the gutter or pressing F9. Press F5. Execution stops on the red dot. F10 steps over, F11 steps into, Shift+F11 steps out, F...
DetentShell · August 2026 · 2 min read
F1 when the help isn't downloaded yet
Press F1 on Get-ChildItem in a fresh PowerShell 7 install and you run into one of the platform’s quieter awkward facts: there is almost no help on the b...
DetentShell · August 2026 · 2 min read
Autocomplete that knows what you imported
There are two ways to build PowerShell completion. Ship a static catalog of known cmdlets and hope it covers what the user types, or ask the engine that...
DetentShell · August 2026 · 1 min read
From a generated test to project coverage
A generated test file sitting in a tab is only interesting once. The Pester panel is what makes it part of a routine. The panel (View menu, or it appear...
DetentShell · August 2026 · 2 min read
Getting Read-Host right in a GUI host
There’s a classic failure in embedded PowerShell consoles, and it starts with a script asking a question. Read-Host in a GUI host that didn’t plan for i...
DetentShell · August 2026 · 2 min read
How tabs and sessions share state
Our own test checklist got this wrong once, so it earns a full explanation. The checklist item was named “multi-tab isolation.” Set $secret = 42 in tab...
DetentShell · August 2026 · 2 min read
One script runs every test before a release
The question that started this was asked out loud, a little annoyed: we have done a crap ton of testing in the past. Is there any way of making sure we...
DetentShell · August 2026 · 2 min read
Our test generator writes "FILL IN" instead of guessing
A test generator can see your function’s shape: the parameters, the output, the calls inside. It cannot see what the function is supposed to do. Correct...
DetentShell · August 2026 · 2 min read
Rollback, Recovery, and Incident-Generated Pester Tests
A rollback plan is only a theory until Pester proves the prerequisites, restored version, recovered state, and permanent regression test.
PesterForge · July 2026 · 7 min read
Preflight: Stop Before the First Production Change
Use Pester as a strict preflight gate that proves the target, identity, starting state, approvals, and recovery path are ready.
PesterForge · July 2026 · 8 min read
Pester, Drift Detection, Monitoring, and Alerts
Pester can evaluate production expectations, but it should not quietly become your metrics database, dashboard, paging system, and incident process.
PesterForge · July 2026 · 7 min read
Pester 6 Is Here: What It Means for the Pester for Beginners Series
Pester 6 changes assertions, discovery, mocking, coverage, and execution—but your Pester 5 knowledge is still useful.
PesterForge · July 2026 · 9 min read
The Fast Gate: Decisions, Boundaries, and Regression Tests
Build a Pester suite that blocks unsafe code changes without requiring live infrastructure.
PesterForge · July 2026 · 9 min read
Design PowerShell That Can Be Tested—and Stopped
Production safety starts before Pester: separate inspection, decisions, planning, approval, execution, and verification.
PesterForge · July 2026 · 8 min read
Deployment Verification and Progressive Rollout with Pester
A successful copy or install command is not proof that the right code is loaded, callable, and safe to roll across production.
PesterForge · July 2026 · 7 min read
The Real Dependency and the Real Execution Identity
A script that works for you may still fail under the scheduled account, module path, secret store, and noninteractive session used in production.
PesterForge · July 2026 · 8 min read
I measured my own test generator against 195 real functions. It was humbling.
What happened when I pointed PesterForge's evaluation harness at dbatools and my own modules — the numbers, the bugs it exposed, and why the failures pe...
PesterForge · July 2026 · 5 min read
Checking registry listings without scraping anyone
mcp.so and Glama disallow crawling their search pages — and both publish sitemaps. How MCPatrol verifies your MCP server listings with a handful of site...
MCPatrol · July 2026 · 2 min read
Uptime isn't the whole story: monitoring MCP inventory drift
An MCP server can be up while a tool your agents depend on quietly vanishes or changes schema. Why inventory change detection matters as much as uptime,...
MCPatrol · July 2026 · 2 min read
Safe Production Tests and Synthetic Transactions with Pester
Production tests do not have to be read-only, but every state change must be isolated, identifiable, limited, reversible, and owned.
PesterForge · July 2026 · 8 min read
What Decision Does This Pester Test Control?
A production test is useful only when you know what risk it addresses and what its result is allowed to stop.
PesterForge · July 2026 · 9 min read
Capstone: The Complete Partner Feed Guardian Testing Strategy
Assemble unit, integration, preflight, deployment, production, drift, and recovery suites into one controlled PowerShell lifecycle.
PesterForge · July 2026 · 12 min read
State Changes, Partial Failure, and Safe Repetition
Test what remains after a production operation fails halfway—and prove that rerunning it will not make the damage worse.
PesterForge · July 2026 · 8 min read
Read-only is the point
Why ClusterValidator observes your cluster and refuses to touch it, and what that buys you at 2 a.m. and in an audit.
ClusterValidator · June 2026 · 4 min read
How ClusterValidator works offline
No license server, no phone-home. How a signed file and a local public key replace the call home.
ClusterValidator · June 2026 · 3 min read
Meet ClusterValidator
A read-only health validator for Windows Server Failover Clusters. It runs in your network, needs no license for small estates, and changes nothing.
ClusterValidator · June 2026 · 3 min read
Announcing "Pester for Beginners" — the whole 25-part series, all at once
A complete beginner-to-confident series on testing PowerShell with Pester 5 — written offline, finished first, and released as one full set.
Pester series · June 2026 · 3 min read
Save-Work: one command, four Git steps, and three ways I almost leaked your password
A deep look at how GitEasy's core command works under the hood — including the credential security problems I found and fixed along the way.
GitEasy · May 2026 · 5 min read
I built a Kerberos SPN tool because setspn.exe made me feel stupid
SqlSpnManager was the first module I published to PowerShell Gallery — and not the first one I built. Here's what it does, why it exists, and how the pl...
SqlSpnManager · May 2026 · 5 min read
I'm a DBA, not a developer — here's how I save my SQL to Git without learning Git
A SQL DBA explains how GitEasy wraps Git in plain-English PowerShell commands so non-developers can save and publish work without learning the jargon.
GitEasy · May 2026 · 4 min read
Why we built WikiMint
The day an AI tool confidently documented a parameter that did not exist.
WikiMint · May 2026 · 1 min read