diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 9a97f58..ab85bb6 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,13 +1,23 @@
 ---
 
 # -----------------------------------------------------------------------
+# [NOTE] - Propogate .pre-commit-config.yaml edits to all repositories!
+# -----------------------------------------------------------------------
+# [TODO]
+#    - pre-commit yaml config exists individually within repositories.
+#    - Generally lint config and benavior is consistent for all repos.
+#    - Exclusions and bulk cleanup necessitate per-repo custom configs.
+#    - Dynamically generate this config file from common and custom
+# -----------------------------------------------------------------------
+
+# -----------------------------------------------------------------------
 # Copyright 2024 Open Networking Foundation Contributors
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -21,58 +31,92 @@
 # See https://pre-commit.com for more information
 # See https://pre-commit.com/hooks.html for more hooks
 # -----------------------------------------------------------------------
-# .pre-commiit-config-yaml v0.2
+# .pre-commit-config-yaml 2024-04-10 v0.3
 # -----------------------------------------------------------------------
 
+# ci:
+#   skip: [sync]
+
 repos:
--   repo: https://github.com/pre-commit/pre-commit-hooks
+  # Sync from repo
+  - repo: https://github.com/pre-commit/pre-commit-hooks
     rev: v4.5.0
     hooks:
       - id: trailing-whitespace
       - id: end-of-file-fixer
       - id: check-yaml
       - id: check-added-large-files
-#      - id: check-yaml
-#        args: [--allow-multiple-documents]
-#      - id: check-added-large-files
-#        args: [--maxkb=100]        
+#     - id: fix-encoding-pragma
+#     - id: double-quote-string-fixer
 
--   repo: https://github.com/koalaman/shellcheck-precommit
+  - repo: https://github.com/koalaman/shellcheck-precommit
     rev: v0.10.0
     hooks:
       - id: shellcheck
 
--   repo: https://github.com/adrienverge/yamllint.git
+  - repo: https://github.com/adrienverge/yamllint.git
     rev: v1.35.1
     hooks:
       - id: yamllint
 
 ## -----------------------------------------------------------------------
+## [SOURCE] Documentation
+## -----------------------------------------------------------------------
+  - repo: https://github.com/rstcheck/rstcheck
+    rev: v6.2.1
+    hooks:
+      - id: rstcheck
+
+  - repo: https://github.com/markdownlint/markdownlint
+    rev: v0.13.0
+    hooks:
+      - id: markdownlint
+#      - id: markdownlint_docker
+
+
+## -----------------------------------------------------------------------
+## [SOURCE] Docker
+## -----------------------------------------------------------------------
+  - repo: https://github.com/hadolint/hadolint
+    rev: v2.12.0
+    hooks:
+      - id: hadolint
+#      - id: hadolint-docker
+
+## -----------------------------------------------------------------------
 ## [SOURCE] REUSE License Checking
 ## -----------------------------------------------------------------------
 # - repo: https://github.com/ansys/pre-commit-hooks
-# rev: v0.2.9
-# hooks:
-# - id: add-license-headers
+#   rev: v0.2.9
+#   hooks:
+#     - id: add-license-headers
 #   args:
 # - --custom_copyright=custom copyright phrase
 # - --custom_template=template_name
 # - --custom_license=license_name
 # - --ignore_license_check
-# - --start_year=2023  
-  
+# - --start_year=2023
+
 ## -----------------------------------------------------------------------
 ## [SOURCE] Python
 ## -----------------------------------------------------------------------
-# -   repo: https://github.com/psf/black
-#    rev: 22.10.0
-#    hooks:
-#      - id: black
+# - repo: https://github.com/psf/black
+#   rev: 22.10.0
+#   hooks:
+#     - id: black
 
-# -   repo: https://github.com/PyCQA/doc8
-#    rev: v1.1.1
-#    hooks:
-#    - id: doc8
+# - repo: https://github.com/PyCQA/doc8
+#   rev: v1.1.1
+#   hooks:
+#     - id: doc8
+
+## -----------------------------------------------------------------------
+## [SOURCE] Testing
+## -----------------------------------------------------------------------
+  - repo: https://github.com/MarketSquare/robotframework-tidy
+    rev: 4.11.0
+    hooks:
+      - id: robotidy
 
 # -------------------------------------------------------------------
 # https://docs.python.org/3/library/re.html#regular-expression-syntax
diff --git a/makefiles/lint/doc8/excl.mk b/makefiles/lint/doc8/excl.mk
index 60e3f8d..cc68ab0 100644
--- a/makefiles/lint/doc8/excl.mk
+++ b/makefiles/lint/doc8/excl.mk
@@ -6,7 +6,7 @@
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -17,7 +17,8 @@
 # SPDX-FileCopyrightText: 2017-2024 Open Networking Foundation Contributors
 # SPDX-License-Identifier: Apache-2.0
 # -----------------------------------------------------------------------
-# Intent:
+# Intent: This makefile maintains file and directory exclusion lists
+#         for doc8 linting.
 # -----------------------------------------------------------------------
 
 $(if $(DEBUG),$(warning ENTER))
@@ -28,6 +29,7 @@
 lint-doc8-excl-raw += '*/.git'
 lint-doc8-excl-raw += '$(venv-name)'
 lint-doc8-excl-raw += '*/$(venv-name)'
+lint-doc8-excl-raw += './lf/onf-make'
 lint-doc8-excl-raw += 'LICENSES/'
 
 # Should we filter generated content as redundant ?
@@ -43,7 +45,7 @@
 #   o [TODO] Ignore submodules, individual repos should check their sources.
 # -----------------------------------------------------------------------
 lint-doc8-excl-raw += '*/venv_*'#   # '*/venv_cord'
-lint-doc8-excl-raw += '*/*_cord'#   # '*/vst_venv'
+lint-doc8-excl-raw += '*/*_venv'#   # '*/vst_venv'
 
 ## -----------------------------------------------------------------------
 ## repo:voltha-docs exclusions
