Repository navigation
Releases
Releases · LemurDaniel/claude-code-storyline-style
v0.6.0
- PowerShell: Pester tests live in their own folder
<Module>.Tests/next to the module instead oftests/inside it, so the module folder holds only what ships. The test folder mirrors the subfolders of the module, one test file per function (Naming/Get-UtilsResourceName.Tests.ps1). The shared setup lives once inBeforeAll.ps1at the root of the test folder and is dot-sourced with$PSScriptRoot/../BeforeAll.ps1. The Verify line lints the test folder too.
v0.5.0
- "Tiny file" is defined: one unit that does one step (a
.bicepparam, a values override, a workflow with one job, a function that maps, formats or delegates). One unit per file is no reason to skip the chapter, a function that runs several steps gets one chapter with a section per step. - A section outside a chapter gets a chapter around it, it is never removed.
- Every file has a header, also a file with one function and a doc comment: the doc comment documents the parameters, the header names prerequisites and the call.
- Banners stand on the level of the file or of the body of its unit, never inside a loop, a branch, a
tryor a callback; such a block is one section. - PowerShell: the shape of a function file (header, table of contents, chapter inside the body after
param) is shown inpowershell.md, it was only in the repo exampleGet-UtilsConfig.ps1, which is not shipped with the skill.
v0.4.0
- Sections stand out more: a
-frame around the title and a one-line description indented by 3 spaces. In a flow chapter the description repeats the explanation of the numbered step. YAML headers use the same frame,Name - explanationtitles are split into title and description. The banner check fails on a section without description or closing line. - Every file with sections has at least one chapter, sections only live inside a chapter. Only a tiny file with one unit (a
.bicepparam, a values override, a workflow with one job) has no banner. The banner check fails on a section outside a chapter. - The table of contents is its own comment block below the header (in YAML below the closing line of the header), separated by an empty line and framed by empty comment lines. The banner check fails on a table of contents inside the header.
- C++: the groups of a class that fills a whole header chapter are sections, not group comments.
- After the closing line of a section an empty line, in YAML (pipelines, Compose, Kubernetes / Helm) the key follows directly.
- PowerShell: in a file with chapters,
CLEANis its own epilogue chapter, no section stands outside a chapter. - Shelve as the code grows: a folder with more than five source files or several roles side by side gets shelves before the next file goes in, also in a proof of concept. A new file counts as a change to its folder (Scope). New shelf check
.scripts/Test-StorylineShelf.ps1in CI. - PowerShell, JavaScript and C++: the banner bullets that only repeated SKILL.md → "Comments" are removed.
- Bicep: chapters and sections exactly as in SKILL.md, no Bicep-specific banner rule, an empty line after every section title.
- Bicep: one module is one file
module.<name>.bicepin a category folder with aREADME.md,main.bicepis the entry point andmain.<env>.bicepparamthe test deployment. No more folder andexample/per module. - Kubernetes manifests / Helm: new
references/kubernetes.mdandexamples/kubernetes/(plain issuer manifest, Helm chart with values per environment). The values per environment live outside the chart inenv/values.<chart>.<env>.yaml, the chart only holds the defaults. Plain manifests live on their own shelfcluster/. The example check runs helm lint, helm template and kubeconform. - Docker Compose: the reverse proxy rule (
exposeinstead ofports, proxy onexternalnetworks) is removed, it described one setup, not a style. What stays: every published port gets a comment on what for. The volume rule loses the host layout (relative config, absolute payload paths, data folders in.gitignore) and keeps the comment per mount and:ro. Thedepends_on/ healthcheck / service name rule is removed. - YAML pipelines and Docker Compose may use chapters, a large file groups its jobs or services into chapters.
- YAML pipelines: the Bicep-specific WhatIf artifact rule (
Start-Transcript,bicep_whatif_<stage>) is removed. The general rule stays: WhatIf or plan is published as an artifact, its name carries the stage. - Table of contents in every file with chapters, also with only one. Terraform: the header of
main.tflists every.tffile of the module with its chapter, the banner check compares the list with the files. - "The story" in
SKILL.md: two annotated examples below the glossary, a folder tree (library, shelf, shelf label, call number) and one book with every part named on the left. - Review checklist grouped by the sections of the rules, one item per rule, so a review walks through every section in order.
- Priorities in
SKILL.md: correctness is the boundary, readability the goal, everything else comes after. Rules serve readability, a deliberate deviation gets a comment saying why. Reviews report correctness first. - Verify before done (proofreading): run the parser, linter, formatter check and tests of the language, name every check that could not run. Every language file has a
Verifyline. - PowerShell:
Set-StrictMode -Version 1.0and$ErrorActionPreference = 'Stop'in every script and.psm1,$LASTEXITCODEafter native commands. - JavaScript: every promise is awaited or returned.
- Example check
.scripts/Test-StorylineExample.ps1and workflowcheck.examples.yaml: PowerShell parser and PSScriptAnalyzer, terraform fmt/validate/test, bicep build, node --check, docker compose config on every push and PR.
v0.3.0
- Table of contents in the header from two chapters on instead of three. A file with chapters always lists them, so the reader never has to guess whether a list is missing or just not required. Banner check and example files updated.
- Show the shape change: a non-obvious parse or reshape gets one comment with a sample input and its result (
azurerm_disk::os => disk). - A test file says what it covers: it opens with a chapter that lists its test cases. Terraform example module gets
tests/registry.tftest.hclwithmock_provider.
v0.2.2
- Plugin directory lint: Key Vault, keepass and keyFile snippets replaced by storage account and notes examples, the healthcheck example uses promtool instead of wget.
v0.2.1
- Plugin directory lint: SKILL.md snippets no longer resolve a token, build a remote URL or copy a secret value. Neutral examples (region, backup path, blob upload) instead.