diff --git a/.github/workflows/rename-folder.yml b/.github/workflows/rename-folder.yml
new file mode 100644
index 00000000000..24f7af200b5
--- /dev/null
+++ b/.github/workflows/rename-folder.yml
@@ -0,0 +1,64 @@
+name: Rename Folder
+
+on:
+ pull_request:
+ paths:
+ - '**/rule.md'
+ types: [opened, synchronize]
+
+jobs:
+ rename-folder:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ issues: write
+ repository-projects: read
+ pull-requests: write
+
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v3
+ with:
+ fetch-depth: 0
+ token: ${{ secrets.GITHUB_TOKEN }}
+ ref: ${{ github.event.pull_request.head.ref }}
+ repository: ${{ github.event.pull_request.head.repo.full_name }}
+
+ - name: Check for modified rule.md
+ id: check_modified
+ run: |
+ if git diff --name-only $(git merge-base origin/main HEAD) | grep -q 'rule.md'; then
+ echo "modified=true" >> "$GITHUB_OUTPUT"
+ else
+ echo "modified=false" >> "$GITHUB_OUTPUT"
+ fi
+
+ # - name: Rename folder if necessary
+ # id: rename_folder
+ # if: steps.check_modified.outputs.modified == 'true'
+ # run: |
+ # folder_name=$(dirname $(git diff --name-only $(git merge-base origin/main HEAD) | grep 'rule.md' | head -n 1))
+ # uri=$(grep -m 1 '^uri:' ${{ github.workspace }}/$folder_name/rule.md | awk '{print $2}')
+ # if [ "$folder_name" != "$uri" ]; then
+ # mv $folder_name $uri
+ # echo "rename=true" >> "$GITHUB_OUTPUT"
+ # else
+ # echo "rename=false" >> "$GITHUB_OUTPUT"
+ # fi
+
+ - name: Rename folders if necessary
+ id: rename_folders
+ if: steps.check_modified.outputs.modified == 'true'
+ run: |
+ sh .workflow/rename-folders.sh
+
+ - name: Commit and push changes
+ if: steps.rename_folders.outputs.rename == 'true'
+ run: |
+ git config --global user.name 'github-actions[bot]'
+ git config --global user.email 'github-actions[bot]@users.noreply.github.com'
+ git add .
+ git commit -m "Rename folder to match URI"
+ git push || true
+ echo "Auto-fix applied"
+
diff --git a/.workflow/rename-folders.sh b/.workflow/rename-folders.sh
new file mode 100644
index 00000000000..0695119e22c
--- /dev/null
+++ b/.workflow/rename-folders.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+is_rename=false
+for rule_file in $(git diff --name-only $(git merge-base origin/main HEAD) | grep 'rule.md'); do
+ folder_path=$(dirname $rule_file)
+ folder_name=${folder_path#rules/}
+ echo "Folder path: $folder_path"
+ echo "Folder name: $folder_name"
+
+ uri=$(grep -m 1 '^uri:' "${GITHUB_WORKSPACE}/$rule_file" | awk '{print $2}')
+ echo "URI: $uri"
+
+ if [ "$folder_name" != "$uri" ]; then
+ mv "${GITHUB_WORKSPACE}/$folder_path" "${GITHUB_WORKSPACE}/$uri"
+ is_rename=true
+
+ if grep -q "^redirects: \[\]$" "${GITHUB_WORKSPACE}/$uri/rule.md"; then
+ sed -i "/^redirects: \[\]$/d" "${GITHUB_WORKSPACE}/$uri/rule.md"
+ fi
+
+ if grep -q '^redirects:' "${GITHUB_WORKSPACE}/$uri/rule.md"; then
+ # if grep -q "redirects:.*- $folder_name$" "${GITHUB_WORKSPACE}/$uri/rule.md"; then
+ if grep -q "^ *- $folder_name$" "${GITHUB_WORKSPACE}/$uri/rule.md"; then
+ echo "Old folder name is already in redirects"
+ else
+ sed -i "/^redirects:/a \ \ - $folder_name" "${GITHUB_WORKSPACE}/$uri/rule.md"
+ fi
+ else
+ sed -i "/uri:.*/a\\redirects:\\n - $folder_name" "${GITHUB_WORKSPACE}/$uri/rule.md"
+ fi
+ fi
+done
+echo "rename=$is_rename" >> "$GITHUB_OUTPUT"
diff --git a/rules/3-steps-to-a-pbi/3StepsToAPBI.jpg b/3-steps-to-a-pbi123/3StepsToAPBI.jpg
similarity index 100%
rename from rules/3-steps-to-a-pbi/3StepsToAPBI.jpg
rename to 3-steps-to-a-pbi123/3StepsToAPBI.jpg
diff --git a/rules/3-steps-to-a-pbi/KB-customize-board-columns.png b/3-steps-to-a-pbi123/KB-customize-board-columns.png
similarity index 100%
rename from rules/3-steps-to-a-pbi/KB-customize-board-columns.png
rename to 3-steps-to-a-pbi123/KB-customize-board-columns.png
diff --git a/rules/3-steps-to-a-pbi/Testing-task.png b/3-steps-to-a-pbi123/Testing-task.png
similarity index 100%
rename from rules/3-steps-to-a-pbi/Testing-task.png
rename to 3-steps-to-a-pbi123/Testing-task.png
diff --git a/rules/3-steps-to-a-pbi/rule.md b/3-steps-to-a-pbi123/rule.md
similarity index 97%
rename from rules/3-steps-to-a-pbi/rule.md
rename to 3-steps-to-a-pbi123/rule.md
index f1a4e5dac08..d8831670d25 100644
--- a/rules/3-steps-to-a-pbi/rule.md
+++ b/3-steps-to-a-pbi123/rule.md
@@ -5,7 +5,7 @@ seoDescription: Master the 3 essential steps of PBI management with SSW's expert
guide. From readiness to coding and finalization, streamline your Agile
processes for maximum efficiency. Learn more and enhance your project
management skills today.
-uri: 3-steps-to-a-pbi
+uri: 3-steps-to-a-pbi123
authors:
- title: Adam Cogan
url: https://ssw.com.au/people/adam-cogan
@@ -24,8 +24,11 @@ related:
- done-do-you-know-when-to-send-a-done-email-in-scrum
- close-pbis-with-context
redirects:
+ - rules/3-steps-to-a-pbi1
- do-you-know-the-3-steps-to-completing-a-pbi
- do-you-know-the-3-steps-to-a-pbi
+ - 3-steps-to-a-pbi
+ - 3-steps-to-a-pbi12
created: 2013-08-30T06:33:21.000Z
archivedreason: null
guid: 1de9df77-9b69-4242-b648-e08e5980e9a6
diff --git a/rules/404-error-avoid-changing-the-url/404-good_1710232021928.jpg b/404-error-avoid-changing-the-url12/404-good_1710232021928.jpg
similarity index 100%
rename from rules/404-error-avoid-changing-the-url/404-good_1710232021928.jpg
rename to 404-error-avoid-changing-the-url12/404-good_1710232021928.jpg
diff --git a/rules/404-error-avoid-changing-the-url/rule.md b/404-error-avoid-changing-the-url12/rule.md
similarity index 93%
rename from rules/404-error-avoid-changing-the-url/rule.md
rename to 404-error-avoid-changing-the-url12/rule.md
index d72b38293e4..f4b0686dd82 100644
--- a/rules/404-error-avoid-changing-the-url/rule.md
+++ b/404-error-avoid-changing-the-url12/rule.md
@@ -3,7 +3,7 @@ type: rule
archivedreason:
title: Do you avoid changing the URL on a 404 error?
guid: 0d3576ad-6b39-4682-b425-3d68751a100b
-uri: 404-error-avoid-changing-the-url
+uri: 404-error-avoid-changing-the-url12
created: 2016-08-11T18:08:44.0000000Z
authors:
- title: Adam Cogan
@@ -11,11 +11,13 @@ authors:
related:
- 404-useful-error-page
redirects:
+ - 404-error-avoid-changing-the-url1
- do-you-avoid-changing-the-url-on-a-404-error
+- 404-error-avoid-changing-the-url
---
-When you request a URL of a file that doesn't exist, you will get an error message. You should make sure that the URL in the browser doesn't change. This way, it's easy for the user to correct.
+When you request a URL of a file that doesn't exist, you will get an error message. You should make sure that the URL in the browser doesn't change. This way, it's easy for the user to correct.
E.g. The user doesn't have to retype the whole URL if there is a spelling mistake or a forgotten/mixed up letter.
@@ -49,4 +51,5 @@ To show the customized error page while not change the original URL, you can use
``` cs
Server.Transfer("/ssw/ErrorPage.aspx")
```
-**Figure: Custom error page handler in Global.asax**
+
+**Figure: Custom error page handler in Global.asax**
diff --git a/rules/404-error-avoid-changing-the-url/url_asp.gif b/404-error-avoid-changing-the-url12/url_asp.gif
similarity index 100%
rename from rules/404-error-avoid-changing-the-url/url_asp.gif
rename to 404-error-avoid-changing-the-url12/url_asp.gif
diff --git a/rules/404-useful-error-page/404-bad.jpg b/404-useful-error-page1/404-bad.jpg
similarity index 100%
rename from rules/404-useful-error-page/404-bad.jpg
rename to 404-useful-error-page1/404-bad.jpg
diff --git a/rules/404-useful-error-page/404-good.jpg b/404-useful-error-page1/404-good.jpg
similarity index 100%
rename from rules/404-useful-error-page/404-good.jpg
rename to 404-useful-error-page1/404-good.jpg
diff --git a/rules/404-useful-error-page/rule.md b/404-useful-error-page1/rule.md
similarity index 94%
rename from rules/404-useful-error-page/rule.md
rename to 404-useful-error-page1/rule.md
index 6595a3e75a6..03995aac96b 100644
--- a/rules/404-useful-error-page/rule.md
+++ b/404-useful-error-page1/rule.md
@@ -3,7 +3,7 @@ type: rule
archivedreason:
title: Do you have a useful 404 error page?
guid: a006213a-e97b-46a7-a66b-beb52b205533
-uri: 404-useful-error-page
+uri: 404-useful-error-page1
created: 2016-08-11T17:30:01.0000000Z
authors:
- title: Adam Cogan
@@ -13,7 +13,9 @@ authors:
related:
- 404-error-avoid-changing-the-url
redirects:
+ - 404-useful-error-page
- do-you-replace-the-404-error-with-a-useful-error-page
+- 404-useful-error-page
---
@@ -26,8 +28,9 @@ A well-designed custom error page encourages surfers to remain in your site and
```xml
```
+
::: bad
-Figure: Bad example - The default code on web.config
+Figure: Bad example - The default code on web.config
:::
```xml
@@ -35,6 +38,7 @@ Figure: Bad example - The default code on web.config
```
+
::: good
Figure: Good example - The custom code in the web.config
:::
@@ -46,11 +50,11 @@ This error information is useful for the developer to do debugging. However, it
```xml
```
+
::: good
Figure: Good example - Turning on "customErrors" protects sensitive information against Hacker
:::
-
::: bad

:::
diff --git a/rules/8-steps-to-scrum/8StepstoScrum-V5-1.pdf b/8-steps-to-scrum-test-doub/8StepstoScrum-V5-1.pdf
similarity index 100%
rename from rules/8-steps-to-scrum/8StepstoScrum-V5-1.pdf
rename to 8-steps-to-scrum-test-doub/8StepstoScrum-V5-1.pdf
diff --git a/rules/8-steps-to-scrum/8StepstoScrum-V5-2.pdf b/8-steps-to-scrum-test-doub/8StepstoScrum-V5-2.pdf
similarity index 100%
rename from rules/8-steps-to-scrum/8StepstoScrum-V5-2.pdf
rename to 8-steps-to-scrum-test-doub/8StepstoScrum-V5-2.pdf
diff --git a/rules/8-steps-to-scrum/8StepstoScrum-v2.pdf b/8-steps-to-scrum-test-doub/8StepstoScrum-v2.pdf
similarity index 100%
rename from rules/8-steps-to-scrum/8StepstoScrum-v2.pdf
rename to 8-steps-to-scrum-test-doub/8StepstoScrum-v2.pdf
diff --git a/rules/8-steps-to-scrum/8StepstoScrum.png b/8-steps-to-scrum-test-doub/8StepstoScrum.png
similarity index 100%
rename from rules/8-steps-to-scrum/8StepstoScrum.png
rename to 8-steps-to-scrum-test-doub/8StepstoScrum.png
diff --git a/rules/8-steps-to-scrum/8stepstoscrum-v5-1.jpg b/8-steps-to-scrum-test-doub/8stepstoscrum-v5-1.jpg
similarity index 100%
rename from rules/8-steps-to-scrum/8stepstoscrum-v5-1.jpg
rename to 8-steps-to-scrum-test-doub/8stepstoscrum-v5-1.jpg
diff --git a/rules/8-steps-to-scrum/8stepstoscrum-v5-2.jpg b/8-steps-to-scrum-test-doub/8stepstoscrum-v5-2.jpg
similarity index 100%
rename from rules/8-steps-to-scrum/8stepstoscrum-v5-2.jpg
rename to 8-steps-to-scrum-test-doub/8stepstoscrum-v5-2.jpg
diff --git a/rules/8-steps-to-scrum/rule.md b/8-steps-to-scrum-test-doub/rule.md
similarity index 98%
rename from rules/8-steps-to-scrum/rule.md
rename to 8-steps-to-scrum-test-doub/rule.md
index fffb3848569..affd833ffdc 100644
--- a/rules/8-steps-to-scrum/rule.md
+++ b/8-steps-to-scrum-test-doub/rule.md
@@ -1,7 +1,7 @@
---
type: rule
title: Do you know the 8 Steps to Scrum?
-uri: 8-steps-to-scrum
+uri: 8-steps-to-scrum-test-doub
authors:
- title: Adam Cogan
url: https://ssw.com.au/people/adam-cogan
@@ -10,7 +10,7 @@ authors:
related:
- backlog-refinement-meeting
redirects:
- - do-you-know-the-8-steps-to-scrum
+ - 8-steps-to-scrum
created: 2013-06-28T03:50:10.000Z
archivedreason: null
guid: 5759f753-1524-4803-869c-8b881eae28a1
diff --git a/rules/8-steps-to-scrum/scrum-image.png b/8-steps-to-scrum-test-doub/scrum-image.png
similarity index 100%
rename from rules/8-steps-to-scrum/scrum-image.png
rename to 8-steps-to-scrum-test-doub/scrum-image.png
diff --git a/rules/a-b-testing/rule.md b/a-b-testing1234/rule.md
similarity index 70%
rename from rules/a-b-testing/rule.md
rename to a-b-testing1234/rule.md
index e9675f214a9..7a0f3aca8aa 100644
--- a/rules/a-b-testing/rule.md
+++ b/a-b-testing1234/rule.md
@@ -1,20 +1,23 @@
---
type: rule
title: Do you know the best way to do A/B testing?
-uri: a-b-testing
+uri: a-b-testing1234
+redirects:
+ - a-b-testing123
+ - a-b-testing123
authors:
- title: Piers Sinclair
url: https://www.ssw.com.au/people/piers-sinclair
created: 2022-04-20T05:56:17.498Z
guid: bb49a520-59fa-4190-b19e-b70a6b450975
---
-A/B Testing is the process of testing different versions of an application on different users to gather empirical evidence to learn which version is better.
+A/B Testing is the process of testing different versions of an application on different users to gather empirical evidence to learn which version is better.
Using A/B Testing enables you to get features tested and when used effectively means that **a bug will never be deployed to 100% of users.** Generally, new features should be tested on 20% of users and rolled out to others once they are reliable.
`youtube: https://www.youtube.com/embed/v=zFMgpxG-chM`
-**Video: What is A/B Testing? | Data Science in Minutes**
+**Video: What is A/B Testing? | Data Science in Minutes**
There are several ways this can be done...
@@ -25,13 +28,14 @@ There are several ways this can be done...
Feature flags are a modern way to toggle features for users. They are essentially a little bit of code that can be turned on and off at will. That means you can choose, when features are deployed and who gets them.
Feature flags are often implemented by developers writing their own code. However, there are better solutions today:
-* [LaunchDarkly](https://launchdarkly.com/)
- * [Video interview](https://tv.ssw.com/ndc-sydney-2017-ask-me-anything-with-adam-cogan-and-edith-harbaugh-launchdarkly-tripit-devops/) of LaunchDarkly CEO Edith Harbaugh
+* [LaunchDarkly](https://launchdarkly.com/)
+
+ * [Video interview](https://tv.ssw.com/ndc-sydney-2017-ask-me-anything-with-adam-cogan-and-edith-harbaugh-launchdarkly-tripit-devops/) of LaunchDarkly CEO Edith Harbaugh
* [Azure App Configuration](https://docs.microsoft.com/en-us/azure/azure-app-configuration/overview) is the recommended solution and there are some great tutorials that help developers get up and running in minutes:
- * [Use feature filters to enable conditional feature flags](https://docs.microsoft.com/en-us/azure/azure-app-configuration/howto-feature-filters-aspnet-core)
- * [Tutorial: Use feature flags in an ASP.NET Core app](https://docs.microsoft.com/en-us/azure/azure-app-configuration/use-feature-flags-dotnet-core)
+ * [Use feature filters to enable conditional feature flags](https://docs.microsoft.com/en-us/azure/azure-app-configuration/howto-feature-filters-aspnet-core)
+ * [Tutorial: Use feature flags in an ASP.NET Core app](https://docs.microsoft.com/en-us/azure/azure-app-configuration/use-feature-flags-dotnet-core)
## Azure Deployment Slots
@@ -39,4 +43,4 @@ Feature flags are often implemented by developers writing their own code. Howeve
## Azure FrontDoor
-[Azure FrontDoor](https://docs.microsoft.com/en-us/azure/frontdoor/front-door-overview) is an offering that lets developers direct traffic to different versions of an app.
\ No newline at end of file
+[Azure FrontDoor](https://docs.microsoft.com/en-us/azure/frontdoor/front-door-overview) is an offering that lets developers direct traffic to different versions of an app.
diff --git a/a-b-testing12345/rule.md b/a-b-testing12345/rule.md
new file mode 100644
index 00000000000..3deceb37bc4
--- /dev/null
+++ b/a-b-testing12345/rule.md
@@ -0,0 +1,46 @@
+---
+type: rule
+title: Do you know the best way to do A/B testing?
+uri: a-b-testing12345
+redirects:
+ - a-b-testing123
+ - a-b-testing1234
+authors:
+ - title: Piers Sinclair
+ url: https://www.ssw.com.au/people/piers-sinclair
+created: 2022-04-20T05:56:17.498Z
+guid: bb49a520-59fa-4190-b19e-b70a6b450975
+---
+A/B Testing is the process of testing different versions of an application on different users to gather empirical evidence to learn which version is better.
+
+Using A/B Testing enables you to get features tested and when used effectively means that **a bug will never be deployed to 100% of users.** Generally, new features should be tested on 20% of users and rolled out to others once they are reliable.
+
+`youtube: https://www.youtube.com/embed/v=zFMgpxG-chM`
+
+**Video: What is A/B Testing? | Data Science in Minutes**
+
+There are several ways this can be done...
+
+
+
+## Feature Flags (Recommended)
+
+Feature flags are a modern way to toggle features for users. They are essentially a little bit of code that can be turned on and off at will. That means you can choose, when features are deployed and who gets them.
+
+Feature flags are often implemented by developers writing their own code. However, there are better solutions today:
+
+* [LaunchDarkly](https://launchdarkly.com/)
+
+ * [Video interview](https://tv.ssw.com/ndc-sydney-2017-ask-me-anything-with-adam-cogan-and-edith-harbaugh-launchdarkly-tripit-devops/) of LaunchDarkly CEO Edith Harbaugh
+* [Azure App Configuration](https://docs.microsoft.com/en-us/azure/azure-app-configuration/overview) is the recommended solution and there are some great tutorials that help developers get up and running in minutes:
+
+ * [Use feature filters to enable conditional feature flags](https://docs.microsoft.com/en-us/azure/azure-app-configuration/howto-feature-filters-aspnet-core)
+ * [Tutorial: Use feature flags in an ASP.NET Core app](https://docs.microsoft.com/en-us/azure/azure-app-configuration/use-feature-flags-dotnet-core)
+
+## Azure Deployment Slots
+
+[Azure Deployment Slots](https://docs.microsoft.com/en-us/azure/app-service/deploy-staging-slots) are another way of doing A/B testing, you essentially deploy 2 versions of your app and then direct traffic to different versions.
+
+## Azure FrontDoor
+
+[Azure FrontDoor](https://docs.microsoft.com/en-us/azure/frontdoor/front-door-overview) is an offering that lets developers direct traffic to different versions of an app.
diff --git a/rules/add-a-comment-when-you-use-thread-sleep/rule.md b/add-a-comment-when-you-use-thread-sleep2/rule.md
similarity index 90%
rename from rules/add-a-comment-when-you-use-thread-sleep/rule.md
rename to add-a-comment-when-you-use-thread-sleep2/rule.md
index 93331d9a84e..b6dce5f0cab 100644
--- a/rules/add-a-comment-when-you-use-thread-sleep/rule.md
+++ b/add-a-comment-when-you-use-thread-sleep2/rule.md
@@ -3,7 +3,7 @@ type: rule
archivedreason:
title: Comments - Do you add a comment when you use Thread.Sleep?
guid: 34e9cb81-73a3-4d80-ad1b-141bc19eb37f
-uri: add-a-comment-when-you-use-thread-sleep
+uri: add-a-comment-when-you-use-thread-sleep2
created: 2018-04-26T22:00:01.0000000Z
authors:
- title: Adam Cogan
@@ -11,6 +11,7 @@ authors:
related: []
redirects:
- comments-do-you-add-a-comment-when-you-use-thread-sleep
+- add-a-comment-when-you-use-thread-sleep
---
diff --git a/rules/add-a-customized-column-in-grid-if-there-are-default-values/badexampleforcustomizedcolumn.gif b/add-a-customized-column-in-grid-if-there-are-default-values3/badexampleforcustomizedcolumn.gif
similarity index 100%
rename from rules/add-a-customized-column-in-grid-if-there-are-default-values/badexampleforcustomizedcolumn.gif
rename to add-a-customized-column-in-grid-if-there-are-default-values3/badexampleforcustomizedcolumn.gif
diff --git a/rules/add-a-customized-column-in-grid-if-there-are-default-values/goodexampleforcustomizedcolumn.gif b/add-a-customized-column-in-grid-if-there-are-default-values3/goodexampleforcustomizedcolumn.gif
similarity index 100%
rename from rules/add-a-customized-column-in-grid-if-there-are-default-values/goodexampleforcustomizedcolumn.gif
rename to add-a-customized-column-in-grid-if-there-are-default-values3/goodexampleforcustomizedcolumn.gif
diff --git a/rules/add-a-customized-column-in-grid-if-there-are-default-values/rule.md b/add-a-customized-column-in-grid-if-there-are-default-values3/rule.md
similarity index 90%
rename from rules/add-a-customized-column-in-grid-if-there-are-default-values/rule.md
rename to add-a-customized-column-in-grid-if-there-are-default-values3/rule.md
index 46725e6eec5..7e4696fc0df 100644
--- a/rules/add-a-customized-column-in-grid-if-there-are-default-values/rule.md
+++ b/add-a-customized-column-in-grid-if-there-are-default-values3/rule.md
@@ -1,7 +1,9 @@
---
type: rule
title: Do you add a "(customized)" column in grid if there are default values?
-uri: add-a-customized-column-in-grid-if-there-are-default-values
+uri: add-a-customized-column-in-grid-if-there-are-default-values3
+redirects:
+ - add-a-customized-column-in-grid-if-there-are-default-values
authors:
- title: Adam Cogan
url: https://ssw.com.au/people/adam-cogan/
diff --git a/rules/add-a-description-to-github-repositories/bad-no-description.png b/add-a-description-to-github-repositories22-t/bad-no-description.png
similarity index 100%
rename from rules/add-a-description-to-github-repositories/bad-no-description.png
rename to add-a-description-to-github-repositories22-t/bad-no-description.png
diff --git a/rules/add-a-description-to-github-repositories/good-nice-description.png b/add-a-description-to-github-repositories22-t/good-nice-description.png
similarity index 100%
rename from rules/add-a-description-to-github-repositories/good-nice-description.png
rename to add-a-description-to-github-repositories22-t/good-nice-description.png
diff --git a/rules/add-a-description-to-github-repositories/rule.md b/add-a-description-to-github-repositories22-t/rule.md
similarity index 80%
rename from rules/add-a-description-to-github-repositories/rule.md
rename to add-a-description-to-github-repositories22-t/rule.md
index 21463b209be..606bdf252b8 100644
--- a/rules/add-a-description-to-github-repositories/rule.md
+++ b/add-a-description-to-github-repositories22-t/rule.md
@@ -3,14 +3,16 @@ type: rule
archivedreason:
title: Do you add a description to your GitHub repositories?
guid: 1c244aed-36dd-48c5-9232-1b02f2ca90e3
-uri: add-a-description-to-github-repositories
+uri: add-a-description-to-github-repositories22-t
+redirects:
+ - add-a-description-to-github-repositories22
+ - add-a-description-to-github-repositories2
created: 2021-05-19T05:09:16.0000000Z
authors:
- title: Brady Stroud
url: https://ssw.com.au/people/brady-stroud
related:
- do-you-know-how-to-name-a-github-repository
-redirects: []
---
diff --git a/rules/add-a-featured-image-to-your-blog-post/blog-no-feat-image.jpg b/add-a-featured-image-to-your-blog-post2/blog-no-feat-image.jpg
similarity index 100%
rename from rules/add-a-featured-image-to-your-blog-post/blog-no-feat-image.jpg
rename to add-a-featured-image-to-your-blog-post2/blog-no-feat-image.jpg
diff --git a/rules/add-a-featured-image-to-your-blog-post/blog-with-feat-image.jpg b/add-a-featured-image-to-your-blog-post2/blog-with-feat-image.jpg
similarity index 100%
rename from rules/add-a-featured-image-to-your-blog-post/blog-with-feat-image.jpg
rename to add-a-featured-image-to-your-blog-post2/blog-with-feat-image.jpg
diff --git a/rules/add-a-featured-image-to-your-blog-post/rule.md b/add-a-featured-image-to-your-blog-post2/rule.md
similarity index 88%
rename from rules/add-a-featured-image-to-your-blog-post/rule.md
rename to add-a-featured-image-to-your-blog-post2/rule.md
index 3919bd447cf..333f074a5d6 100644
--- a/rules/add-a-featured-image-to-your-blog-post/rule.md
+++ b/add-a-featured-image-to-your-blog-post2/rule.md
@@ -3,13 +3,14 @@ type: rule
archivedreason:
title: Do you add a featured image to your blog post?
guid: 70b94631-7f63-4209-87f1-9f854ba8db38
-uri: add-a-featured-image-to-your-blog-post
+uri: add-a-featured-image-to-your-blog-post2
created: 2018-04-03T23:31:26.0000000Z
authors:
- title: Adam Cogan
url: https://ssw.com.au/people/adam-cogan
related: []
redirects:
+ - add-a-featured-image-to-your-blog-post
- do-you-add-a-featured-image-to-your-blog-post
---
@@ -18,12 +19,10 @@ A relevant featured image is a great way to add a splash of color to your blog a
-
::: bad

:::
-
::: good

:::
diff --git a/rules/add-local-configuration-file-for-developer-specific-settings/local-config-file-1.png b/add-local-configuration-file-for-developer-specific-settings222/local-config-file-1.png
similarity index 100%
rename from rules/add-local-configuration-file-for-developer-specific-settings/local-config-file-1.png
rename to add-local-configuration-file-for-developer-specific-settings222/local-config-file-1.png
diff --git a/rules/add-local-configuration-file-for-developer-specific-settings/local-config-file-2.jpg b/add-local-configuration-file-for-developer-specific-settings222/local-config-file-2.jpg
similarity index 100%
rename from rules/add-local-configuration-file-for-developer-specific-settings/local-config-file-2.jpg
rename to add-local-configuration-file-for-developer-specific-settings222/local-config-file-2.jpg
diff --git a/rules/add-local-configuration-file-for-developer-specific-settings/rule.md b/add-local-configuration-file-for-developer-specific-settings222/rule.md
similarity index 95%
rename from rules/add-local-configuration-file-for-developer-specific-settings/rule.md
rename to add-local-configuration-file-for-developer-specific-settings222/rule.md
index 7e70c90d4e5..06638aee79d 100644
--- a/rules/add-local-configuration-file-for-developer-specific-settings/rule.md
+++ b/add-local-configuration-file-for-developer-specific-settings222/rule.md
@@ -3,7 +3,7 @@ type: rule
archivedreason:
title: Do you add a local configuration file for developer-specific settings?
guid: 3687d1f8-1a96-476c-898e-a363fa4ae599
-uri: add-local-configuration-file-for-developer-specific-settings
+uri: add-local-configuration-file-for-developer-specific-settings222
created: 2019-01-11T19:45:12.0000000Z
authors:
- title: Adam Cogan
@@ -12,6 +12,7 @@ authors:
url: https://ssw.com.au/people/brendan-richards
related: []
redirects:
+ - add-local-configuration-file-for-developer-specific-settings
- do-you-add-a-local-configuration-file-for-developer-specific-settings
---
diff --git a/rules/add-quality-control-to-dones/SpellAndLinkCheck.jpg b/add-quality-control-to-dones1/SpellAndLinkCheck.jpg
similarity index 100%
rename from rules/add-quality-control-to-dones/SpellAndLinkCheck.jpg
rename to add-quality-control-to-dones1/SpellAndLinkCheck.jpg
diff --git a/rules/add-quality-control-to-dones/rule.md b/add-quality-control-to-dones1/rule.md
similarity index 96%
rename from rules/add-quality-control-to-dones/rule.md
rename to add-quality-control-to-dones1/rule.md
index ed6fa41b50e..954a760e979 100644
--- a/rules/add-quality-control-to-dones/rule.md
+++ b/add-quality-control-to-dones1/rule.md
@@ -3,7 +3,7 @@ type: rule
archivedreason: Merged to [https://ssw.com.au/rules/checked-by-xxx](/rules/checked-by-xxx)
title: Dones - Do you show quality control with "Checked by xxx"?
guid: 9e0e6476-651a-4271-95b0-e7169eba1607
-uri: add-quality-control-to-dones
+uri: add-quality-control-to-dones1
created: 2009-04-08T09:31:23.0000000Z
authors:
- title: Adam Cogan
@@ -14,6 +14,7 @@ related: []
redirects:
- dones-do-you-add-(or-show)-your-quality-control
- dones-do-you-show-quality-control-with-checked-by-xxx
+- add-quality-control-to-dones
---
diff --git a/rules/add-quality-control-to-dones/ruleDoneCheckedBy.png b/add-quality-control-to-dones1/ruleDoneCheckedBy.png
similarity index 100%
rename from rules/add-quality-control-to-dones/ruleDoneCheckedBy.png
rename to add-quality-control-to-dones1/ruleDoneCheckedBy.png
diff --git a/rules/add-redirect-from-http-to-https-for-owa/rule.md b/add-redirect-from-http-to-https-for-owa1/rule.md
similarity index 96%
rename from rules/add-redirect-from-http-to-https-for-owa/rule.md
rename to add-redirect-from-http-to-https-for-owa1/rule.md
index 7359e09459b..81332f7e603 100644
--- a/rules/add-redirect-from-http-to-https-for-owa/rule.md
+++ b/add-redirect-from-http-to-https-for-owa1/rule.md
@@ -3,15 +3,17 @@ type: rule
archivedreason:
title: Do you add a redirect from http to https for OWA?
guid: df2d7b63-316f-4989-912e-09543657f80c
-uri: add-redirect-from-http-to-https-for-owa
+uri: add-redirect-from-http-to-https-for-owa1
created: 2016-05-02T06:48:16.0000000Z
authors:
- title: Stanley Sidik
url: https://ssw.com.au/people/stanley-sidik
related: []
redirects:
+ - add-redirect-from-http-to-https-for-owa
- do-you-add-a-redirect-from-http-to-https-for-owa
- configure-redirection-to-https-owa
+- add-redirect-from-http-to-https-for-owa
---
diff --git a/rules/acceptance-criteria/13_Anvil_1408_Customer.pdf b/rules/acceptance-criteria12/13_Anvil_1408_Customer.pdf
similarity index 100%
rename from rules/acceptance-criteria/13_Anvil_1408_Customer.pdf
rename to rules/acceptance-criteria12/13_Anvil_1408_Customer.pdf
diff --git a/rules/acceptance-criteria/DevsAndUsers.jpg b/rules/acceptance-criteria12/DevsAndUsers.jpg
similarity index 100%
rename from rules/acceptance-criteria/DevsAndUsers.jpg
rename to rules/acceptance-criteria12/DevsAndUsers.jpg
diff --git a/rules/acceptance-criteria/acceptance-criteria-detail.jpg b/rules/acceptance-criteria12/acceptance-criteria-detail.jpg
similarity index 100%
rename from rules/acceptance-criteria/acceptance-criteria-detail.jpg
rename to rules/acceptance-criteria12/acceptance-criteria-detail.jpg
diff --git a/rules/acceptance-criteria/acceptance-criteria-discussion.png b/rules/acceptance-criteria12/acceptance-criteria-discussion.png
similarity index 100%
rename from rules/acceptance-criteria/acceptance-criteria-discussion.png
rename to rules/acceptance-criteria12/acceptance-criteria-discussion.png
diff --git a/rules/acceptance-criteria/acceptance-criteria.jpg b/rules/acceptance-criteria12/acceptance-criteria.jpg
similarity index 100%
rename from rules/acceptance-criteria/acceptance-criteria.jpg
rename to rules/acceptance-criteria12/acceptance-criteria.jpg
diff --git a/rules/acceptance-criteria/rule.md b/rules/acceptance-criteria12/rule.md
similarity index 96%
rename from rules/acceptance-criteria/rule.md
rename to rules/acceptance-criteria12/rule.md
index 565c8866949..cbf3c7183d2 100644
--- a/rules/acceptance-criteria/rule.md
+++ b/rules/acceptance-criteria12/rule.md
@@ -1,7 +1,7 @@
---
type: rule
title: Do your User Stories include Acceptance Criteria?
-uri: acceptance-criteria
+uri: acceptance-criteria12
authors:
- title: Adam Cogan
url: https://ssw.com.au/people/adam-cogan
@@ -23,7 +23,7 @@ guid: dbe9010e-da5b-4617-8ff3-0e1e5fdc7772
---
User Stories are a great way to capture requirements, but it can be difficult to work out when the implementation of a story is complete.
-**Acceptance Criteria** (from the Product Owner) help to answer the question *"How will I know when I'm done with this User Story?".* It
+**Acceptance Criteria** (from the Product Owner) help to answer the question *"How will I know when I'm done with this User Story?".* It
defines the exact requirements that must be met for the User Story to be completed.
@@ -45,10 +45,11 @@ They must be specified in the Acceptance Criteria if required for the story to b
When I enter ‘Adam’ in the search box and click 'Search' I will see all entries starting with 'Adam' in the grid
:::
::: bad
-Figure: Bad example of Acceptance Criteria - Incomplete
+Figure: Bad example of Acceptance Criteria - Incomplete
:::
::: greybox
+
* When I enter ‘Adam’ in the Search box and click ‘Search’ I will see all entries starting with Adam in the Grid
* When I enter ‘zzz’ in the Search box and click ‘Search’ I will see **no** entries in the Grid
:::
@@ -57,6 +58,7 @@ Figure: OK example of Acceptance Criteria - However the Product Owner probably h
:::
::: greybox
+
* When I enter ‘Adam’ in the Search box and click ‘Search’ I will see all entries starting with Adam in the Grid
* When I enter ‘zzz’ in the Search box and click ‘Search’ I will see **no** entries in the Grid
* If no results are returned, show a message box ‘No results found’
@@ -70,7 +72,7 @@ Figure: Good example of Acceptance Criteria
::: info
**Note:** For tiny User Stories, you can omit Acceptance Criteria. Sometimes you just need a **screenshot** or, even better, a **video**.
-Be mindful that such small User Stories are the exception and not the rule when it comes to the need for Acceptance Criteria.
+Be mindful that such small User Stories are the exception and not the rule when it comes to the need for Acceptance Criteria.
:::
### Negotiating "gold plating"
@@ -82,6 +84,7 @@ Any requirements that the Product Owner considers "nice to have" - as opposed to
:::
### Technical Acceptance Criteria
+
Sometimes, the team may discuss including technical requirements in Acceptance Criteria. Typically, technical Acceptance Criteria should be avoided. However, there are some situations where it makes sense, such as when:
* The team is trying out something new
@@ -108,7 +111,7 @@ It is good practice to make sure that each of the Acceptance Criteria is **testa
Acceptance Criteria help to answer the question *"How will I know when I'm done with this User Story?"*. **The Acceptance Criteria are different for each User Story**, provided by the Product Owner and used as a way to communicate to all involved that the requirements for a particular User Story have been met.
-The [Definition of Done](/definition-of-done) is a structured list of items, each one used to validate a User Story, which exists to ensure that the team agrees about the quality of work they’re producing. It is defined by the team and serves as a checklist that is used to check each User Story for completeness. **The definition of "Done" is intended to be applicable to all items in the Product Backlog**, not just a single User Story.
+The [Definition of Done](/definition-of-done) is a structured list of items, each one used to validate a User Story, which exists to ensure that the team agrees about the quality of work they’re producing. It is defined by the team and serves as a checklist that is used to check each User Story for completeness. **The definition of "Done" is intended to be applicable to all items in the Product Backlog**, not just a single User Story.
Examples of items in a Definition of Done that would **not** be part of Acceptance Criteria include:
@@ -116,13 +119,13 @@ Examples of items in a Definition of Done that would **not** be part of Acceptan
* Unit tests passed
* Code deployed to production
-::: info
+::: info
The term "Definition of Done" is defined in the Scrum Guide, while "Acceptance Criteria" is not.
:::
### Capture changes to the PBI from discussions
-The Acceptance Criteria are the source of truth for what functionality needs to be implemented for the PBI to be considered complete, so it's important to capture any changes to the PBI and the Acceptance Criteria (e.g. adding or removing "nice to have" aspects of the story).
+The Acceptance Criteria are the source of truth for what functionality needs to be implemented for the PBI to be considered complete, so it's important to capture any changes to the PBI and the Acceptance Criteria (e.g. adding or removing "nice to have" aspects of the story).
Any discussion that changes the story and/or the Acceptance Criteria should be noted in the Discussion section of the PBI for reference.