Apply updated Codex kit guidance
Some checks failed
Codex Template Compliance / template-compliance (push) Failing after 7s
Build / build-windows (push) Successful in 35m52s

This commit is contained in:
MrSphay
2026-05-15 17:39:59 +02:00
parent b130cced60
commit 1ebaab2750
5 changed files with 66 additions and 21 deletions

View File

@@ -79,27 +79,34 @@ jobs:
app_version="$(node -p "require('./apps/app-frontend/package.json').version")"
package_version="${app_version}-${GITHUB_SHA::7}"
package_name="modrinth-plus"
latest_url="https://git.wilkensxl.de/api/packages/MrSphay/generic/${package_name}/latest"
repository_owner="${GITHUB_REPOSITORY%%/*}"
if [ -z "${repository_owner}" ] || [ "${repository_owner}" = "${GITHUB_REPOSITORY}" ]; then
repository_owner="MrSphay"
fi
gitea_server="${GITHUB_SERVER_URL:-https://git.wilkensxl.de}"
gitea_server="${gitea_server%/}"
package_dir="package-registry"
latest_url="${gitea_server}/api/packages/${repository_owner}/generic/${package_name}/latest"
shopt -s nullglob
artifacts=(target/x86_64-pc-windows-msvc/release/bundle/nsis/*.exe)
mapfile -d '' artifacts < <(find target/x86_64-pc-windows-msvc/release/bundle/nsis -maxdepth 1 -type f -name '*.exe' -print0)
if [ "${#artifacts[@]}" -eq 0 ]; then
echo "No Windows installer found to publish"
exit 1
fi
mkdir -p package-latest
cp "${artifacts[0]}" "package-latest/Modrinth-Plus-Windows-Setup-${package_version}.exe"
rm -rf "${package_dir}"
mkdir -p "${package_dir}/versioned" "${package_dir}/latest"
cp "${artifacts[0]}" "${package_dir}/versioned/Modrinth-Plus-Windows-Setup-${package_version}.exe"
curl --fail-with-body \
--user "MrSphay:${REGISTRY_TOKEN}" \
--upload-file "package-latest/Modrinth-Plus-Windows-Setup-${package_version}.exe" \
"https://git.wilkensxl.de/api/packages/MrSphay/generic/${package_name}/${package_version}/Modrinth-Plus-Windows-Setup-${package_version}.exe"
--user "${repository_owner}:${REGISTRY_TOKEN}" \
--upload-file "${package_dir}/versioned/Modrinth-Plus-Windows-Setup-${package_version}.exe" \
"${gitea_server}/api/packages/${repository_owner}/generic/${package_name}/${package_version}/Modrinth-Plus-Windows-Setup-${package_version}.exe"
curl --silent --show-error --user "MrSphay:${REGISTRY_TOKEN}" --request DELETE "${latest_url}" || true
cp "${artifacts[0]}" "package-latest/Modrinth-Plus-Windows-Setup.exe"
curl --silent --show-error --user "${repository_owner}:${REGISTRY_TOKEN}" --request DELETE "${latest_url}" || true
cp "${artifacts[0]}" "${package_dir}/latest/Modrinth-Plus-Windows-Setup.exe"
curl --fail-with-body \
--user "MrSphay:${REGISTRY_TOKEN}" \
--upload-file "package-latest/Modrinth-Plus-Windows-Setup.exe" \
--user "${repository_owner}:${REGISTRY_TOKEN}" \
--upload-file "${package_dir}/latest/Modrinth-Plus-Windows-Setup.exe" \
"${latest_url}/Modrinth-Plus-Windows-Setup.exe"

View File

@@ -21,6 +21,7 @@ jobs:
missing=0
required_files=(
"AGENTS.md"
".codex/project.md"
"README.md"
)
@@ -31,11 +32,6 @@ jobs:
"docs/agent-handoff.md"
)
if [ ! -f "AGENTS.md" ] && [ ! -f "CLAUDE.md" ]; then
echo "Missing required Codex agent file: AGENTS.md or CLAUDE.md"
missing=1
fi
for file in "${required_files[@]}"; do
if [ ! -f "$file" ]; then
echo "Missing required Codex file: $file"
@@ -57,12 +53,12 @@ jobs:
shell: bash
run: |
found=0
paths=(AGENTS.md README.md SECURITY.md CHANGELOG.md .codex docs blueprint.md blueprint.json)
pattern='PROJECT_NAME|PROJECT_DESCRIPTION|REPOSITORY_OWNER|REPOSITORY_NAME|PACKAGE_NAME|ARTIFACT_NAME|ARTIFACT_OUTPUT_DIRECTORY|AUTHOR_NAME|PROJECT_STACK|DOWNLOAD_URL|BUILD_COMMAND|TEST_COMMAND|LINT_COMMAND|AUDIT_COMMAND|README_COMMAND|INSTALL_COMMAND|DEV_COMMAND|PACKAGE_MANAGER|PROJECT_VERSION'
paths=(AGENTS.md README.md SECURITY.md CHANGELOG.md .codex docs .gitea blueprint.md blueprint.json)
pattern='PROJECT_NAME|PROJECT_DESCRIPTION|REPOSITORY_OWNER|REPOSITORY_NAME|PACKAGE_NAME|ARTIFACT_NAME|ARTIFACT_OUTPUT_DIRECTORY|AUTHOR_NAME|PROJECT_STACK|DOWNLOAD_URL|CI_URL|RELEASES_URL|BUILD_COMMAND|TEST_COMMAND|LINT_COMMAND|AUDIT_COMMAND|README_COMMAND|INSTALL_COMMAND|DEV_COMMAND|PACKAGE_MANAGER|PROJECT_VERSION|COMMIT_OR_VERSION'
for path in "${paths[@]}"; do
[ -e "$path" ] || continue
if grep -RInE --exclude-dir=.git "$pattern" "$path"; then
if grep -RInE --exclude-dir=.git --exclude=template-compliance.yml "$pattern" "$path"; then
found=1
fi
done
@@ -72,12 +68,30 @@ jobs:
exit 1
fi
- name: Check README divider convention
shell: bash
run: |
if [ -f blueprint.md ] || [ -f blueprint.json ]; then
if ! grep -q 'template:section-line' blueprint.md 2>/dev/null; then
echo "README blueprint exists but does not use {{ template:section-line }}."
exit 1
fi
fi
- name: Check workflow baseline
shell: bash
run: |
echo "Detected Gitea workflows:"
find .gitea/workflows -maxdepth 1 -type f -name '*.yml' -print 2>/dev/null || true
if [ ! -f ".gitea/workflows/security-scan.yml" ]; then
echo "Recommended workflow missing: .gitea/workflows/security-scan.yml"
fi
if [ ! -f ".gitea/workflows/repo-cleanup.yml" ]; then
echo "Recommended workflow missing: .gitea/workflows/repo-cleanup.yml"
fi
- name: Compliance guidance
shell: bash
run: |
@@ -86,4 +100,10 @@ jobs:
This workflow verifies agent context and template hygiene. It does
not change files automatically.
Recommended manual follow-up:
- add missing required Codex context files,
- replace unresolved placeholders,
- keep README blueprint and README output aligned,
- document intentional exceptions in .codex/project.md.
EOF