Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
1c5d866
Initial template fix and cleanup
May 28, 2026
29338c9
Apply formal review fixes across all 43 review-sets (Groups 1-9)
Malcolmnixon May 28, 2026
4820a59
Apply formal review fixes for Group 9 (ValidateUpdatePackage, PathHel…
May 29, 2026
c236828
Apply formal review fixes across all review-sets (groups 1-9)
May 30, 2026
1406a55
Fix Group 1 formal review findings
May 30, 2026
37d92d8
Fix Group 2 formal review findings
May 30, 2026
833188d
Fix Group 3 formal review findings
May 30, 2026
62016b4
Fix Group 4 formal review findings
May 30, 2026
d55f1a0
Fix Group 5 formal review findings
May 30, 2026
3732e47
Fix Group 6 formal review findings
May 30, 2026
63fc273
Fix Group 7 formal review findings
May 30, 2026
b88da2a
Fix Group 8 formal review findings
May 30, 2026
ba096a8
Fix Group 9 formal review findings
May 30, 2026
78fab9e
Updates based on reviews.
May 31, 2026
ff6ce55
Minor fixes.
May 31, 2026
400ad81
Numerous template synchronizations.
May 31, 2026
47fcf82
Minor cleanups.
May 31, 2026
e3754cb
Cleanups from CI reviews.
May 31, 2026
224b3dd
Fix lint issues
May 31, 2026
1164e35
Fix versionmark verification tests.
Jun 1, 2026
7528d26
Normalized build and PDF names.
Jun 1, 2026
709f190
Cleanup unnecessary OTS tests where self-validation was already avail…
Jun 1, 2026
3c94d94
Clean up duplicate code.
Jun 1, 2026
92899b3
Merge common code.
Jun 1, 2026
e0a3c67
Minor sonar fixes.
Jun 1, 2026
31d2cae
Fix markdown paths.
Jun 1, 2026
e5c6a14
Updates for GitHub agent chrome/puppeteer.
Malcolmnixon Jun 1, 2026
f2b02dc
Add TemporaryDirectory
Malcolmnixon Jun 1, 2026
0ea3eed
Lint cleanups.
Malcolmnixon Jun 1, 2026
29d769c
Fixes based on review.
Malcolmnixon Jun 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
61 changes: 42 additions & 19 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,59 +2,82 @@
"version": 1,
"isRoot": true,
"tools": {
"dotnet-sonarscanner": {
"version": "11.2.1",
"commands": [
"dotnet-sonarscanner"
]
},
"demaconsulting.pandoctool": {
"version": "3.9.0.2",
"commands": [
"pandoc"
]
],
"rollForward": false
},
"demaconsulting.weasyprinttool": {
"version": "68.1.0",
"commands": [
"weasyprint"
]
},
"demaconsulting.sonarmark": {
"version": "1.5.0",
"commands": [
"sonarmark"
]
],
"rollForward": false
},
"demaconsulting.sarifmark": {
"version": "1.3.2",
"commands": [
"sarifmark"
]
],
"rollForward": false
},
"demaconsulting.sonarmark": {
"version": "1.5.0",
"commands": [
"sonarmark"
],
"rollForward": false
},
"demaconsulting.reqstream": {
"version": "1.10.0",
"commands": [
"reqstream"
]
],
"rollForward": false
},
"demaconsulting.buildmark": {
"version": "1.2.2",
"commands": [
"buildmark"
]
],
"rollForward": false
},
"demaconsulting.versionmark": {
"version": "1.4.3",
"commands": [
"versionmark"
]
],
"rollForward": false
},
"demaconsulting.reviewmark": {
"version": "1.2.0",
"commands": [
"reviewmark"
]
],
"rollForward": false
},
"demaconsulting.fileassert": {
"version": "0.3.0",
"commands": [
"fileassert"
],
"rollForward": false
},
"demaconsulting.dictionarymark": {
"version": "0.1.0-beta.1",
"commands": [
"dictionarymark"
],
"rollForward": false
},
"dotnet-sonarscanner": {
"version": "11.2.1",
"commands": [
"dotnet-sonarscanner"
],
"rollForward": false
}
}
}
51 changes: 29 additions & 22 deletions .cspell.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,27 +5,28 @@
# - Maintain professional documentation and code quality
# - Catch spelling errors before publication
# - Support consistent technical terminology usage
# - Misspelled words should be fixed in the source
# - NEVER add a misspelled word to the 'words' list
# - NEVER add a misspelled word - fix the typo in the source instead
# - NEVER add a British-English spelling - correct to US-English in the source
# - PROPOSE only genuine technical terms/names as needed

version: "0.2"
version: '0.2'
language: en

# Project-specific technical terms and tool names
words:
- Anson
- behaviour
- Blockquotes
- buildmark
- BuildMark
- build_notes
- buildMultiTargeting
- camelcase
- Centralising
- Checkmarx
- code_quality
- code_review_plan
- code_review_report
- CodeQL
- colour
- copilot
- cspell
- csproj
Expand All @@ -37,6 +38,8 @@ words:
- DEMACONSULTINGNUGETKEY
- Dependabot
- dependabot
- devtoolof
- displayname
- doctitle
- dotnet
- dotnettool
Expand All @@ -48,9 +51,11 @@ words:
- gitignore
- hotspots
- ibiqlik
- invalidoption
- LINQ
- maintainer
- markdownlint
- metacharacters
- mermaid
- MSBUILD
- MSBUILDDISABLENODEREUSE
Expand All @@ -59,6 +64,8 @@ words:
- myterm
- ncipollo
- NOASSERTION
- notools
- noversion
- ntia
- nuget
- nupkg
Expand All @@ -77,6 +84,7 @@ words:
- reviewmark
- ReviewMark
- rezip
- rollup
- sandboxed
- Sarif
- SarifMark
Expand All @@ -100,37 +108,36 @@ words:
- streetsidesoftware
- templatetool
- TemplateDotNetTool
- testtoolof
- testname
- TMPL
- trace_matrix
- triaging
- Trivy
- trx
- validfile
- vbproj
- vcxproj
- versionmark
- xunit
- Xunit
- VersionMark
- Weasyprint
- withtools
- wildcards
- YamlDotNet
- yamlfix
- yamllint

# Exclude common build artifacts, dependencies, and vendored third-party code
ignorePaths:
- "**/.git/**"
- "**/node_modules/**"
- "**/.venv/**"
- "**/thirdparty/**"
- "**/third-party/**"
- "**/3rd-party/**"
- "**/AGENT_REPORT_*.md"
- "**/.agent-logs/**"
- "**/bin/**"
- "**/obj/**"
- "*.nupkg"
- "*.snupkg"
- "*.dll"
- "*.exe"
- "*.trx"
- "*.spdx.json"
- '**/.git/**'
- '**/node_modules/**'
- '**/.venv/**'
- '**/thirdparty/**'
- '**/third-party/**'
- '**/3rd-party/**'
- '**/.agent-logs/**'
- '**/bin/**'
- '**/obj/**'
- '**/generated/**'
- package-lock.json
41 changes: 2 additions & 39 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ root = true

# All files
[*]
charset = utf-8-bom
charset = utf-8
end_of_line = lf
indent_style = space
indent_size = 4
Expand Down Expand Up @@ -36,8 +36,6 @@ indent_size = 4
csharp_prefer_braces = true:warning
csharp_prefer_simple_using_statement = true:suggestion
csharp_style_namespace_declarations = file_scoped:warning
csharp_style_prefer_method_group_conversion = true:silent
csharp_style_prefer_top_level_statements = true:silent
csharp_style_expression_bodied_methods = false:silent
csharp_style_expression_bodied_constructors = false:silent
csharp_style_expression_bodied_operators = false:silent
Expand All @@ -47,7 +45,7 @@ csharp_style_expression_bodied_accessors = true:silent
csharp_style_expression_bodied_lambdas = true:silent
csharp_style_expression_bodied_local_functions = false:silent

# Naming Conventions
# Naming conventions
dotnet_naming_rule.interface_should_be_begins_with_i.severity = warning
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
Expand All @@ -63,57 +61,22 @@ dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
# Symbol specifications
dotnet_naming_symbols.interface.applicable_kinds = interface
dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
dotnet_naming_symbols.interface.required_modifiers =

dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
dotnet_naming_symbols.types.required_modifiers =

dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
dotnet_naming_symbols.non_field_members.required_modifiers =

# Naming styles
dotnet_naming_style.begins_with_i.required_prefix = I
dotnet_naming_style.begins_with_i.required_suffix =
dotnet_naming_style.begins_with_i.word_separator =
dotnet_naming_style.begins_with_i.capitalization = pascal_case

dotnet_naming_style.pascal_case.required_prefix =
dotnet_naming_style.pascal_case.required_suffix =
dotnet_naming_style.pascal_case.word_separator =
dotnet_naming_style.pascal_case.capitalization = pascal_case

# Organize usings
dotnet_sort_system_directives_first = true
dotnet_separate_import_directive_groups = false

# Code quality - set to suggestion to not break existing code
dotnet_code_quality_unused_parameters = all:suggestion

# Nullable reference types
csharp_nullable_reference_types = enable

# Suppress specific CA rules
dotnet_diagnostic.CA1303.severity = none # Do not pass literals as localized parameters (not localizing)
dotnet_diagnostic.CA2007.severity = none # Do not directly await a Task (library code, not UI)
dotnet_diagnostic.CA1062.severity = none # Validate arguments of public methods (nullable context handles this)
dotnet_diagnostic.CA1031.severity = none # Do not catch general exception types (needed for top-level error handling)
dotnet_diagnostic.CA1716.severity = none # Identifiers should not match keywords (existing API)
dotnet_diagnostic.CA1310.severity = none # Specify StringComparison for correctness (to be fixed incrementally)
dotnet_diagnostic.CA1305.severity = none # Specify IFormatProvider (not localizing)
dotnet_diagnostic.CA1307.severity = none # Specify StringComparison for string methods (to be fixed incrementally)
dotnet_diagnostic.CA1308.severity = none # Normalize to uppercase (existing behavior, not security critical)
dotnet_diagnostic.CA1515.severity = none # Make types internal (public API by design)
dotnet_diagnostic.CA1054.severity = none # URI parameters should not be strings (existing API)
dotnet_diagnostic.CA1872.severity = none # Use modern API (to be evaluated for .NET compatibility)
dotnet_diagnostic.CA2000.severity = none # Dispose objects before losing scope (HttpClient handles disposal)
dotnet_diagnostic.CA1707.severity = none # Identifiers should not contain underscores (test naming convention)
dotnet_diagnostic.CA1819.severity = none # Properties should not return arrays (existing API, immutable)
dotnet_diagnostic.CA1032.severity = none # Exception constructors (simplified exceptions)
dotnet_diagnostic.CA2234.severity = none # Pass System.Uri instead of string (existing API)
dotnet_diagnostic.CA5399.severity = none # Enable certificate revocation check (to be evaluated separately)

# Suppress warnings for generated code
[**/obj/**/*.cs]
generated_code = true
Loading
Loading