251148c3ff
## Summary - add repository-wide quality tooling and verification scaffolding, including CI workflows, pnpm workspace setup, ESLint/Prettier/markdown checks, and generated-output verification helpers - reorganize skill sources and generation flow by introducing canonical `_source` variants, generator/manifests, reusable helper abstractions, and shared web-automation/browser utilities - clean up and expand documentation so the root README flows into docs and skill docs, with clearer development, reviewer, installer, and workflow guidance ## Notable changes - docs flow and consistency cleanup across `README.md`, `docs/README.md`, and related docs - new scripts for `check`, docs verification, generated-file verification, shell portability, and safe directory replacement - refactors in Atlassian and web-automation skill runtimes to reduce duplication and centralize reusable code - changelog, development documentation, and CI surface updates ## Test Plan - [ ] `pnpm run check` - [ ] review generated/manifests and skill sync outputs - [ ] smoke-check docs flow from `README.md` to `docs/README.md` to skill docs ## Notes - this branch currently includes tracked `skills/web-automation/shared/node_modules` content that should be reviewed carefully as potentially noisy/accidental committed artifacts Co-authored-by: Stefano Fiorini <stefano.fiorini@firsthorizon.com> Reviewed-on: #1
29 lines
730 B
Bash
29 lines
730 B
Bash
#!/usr/bin/env bash
|
|
# portable.sh — POSIX-safe helper functions for BSD/GNU shell portability
|
|
#
|
|
# Source this file in scripts that need cross-platform variants of:
|
|
# - stat(1) — BSD uses -f, GNU uses -c
|
|
#
|
|
# Usage:
|
|
# source "$(dirname "${BASH_SOURCE[0]}")/portable.sh"
|
|
# portable_stat_perms "$file" # -> octal permissions string, e.g. "755"
|
|
#
|
|
# Supported platforms:
|
|
# - macOS (BSD stat)
|
|
# - Linux/Ubuntu (GNU stat)
|
|
|
|
# portable_stat_perms <path>
|
|
# Outputs the file's permission bits as an octal string (e.g. "755").
|
|
# Exits non-zero if stat fails.
|
|
portable_stat_perms() {
|
|
local path="$1"
|
|
case "$(uname -s)" in
|
|
Darwin)
|
|
stat -f '%Lp' "$path"
|
|
;;
|
|
*)
|
|
stat -c '%a' "$path"
|
|
;;
|
|
esac
|
|
}
|