Refactor to matrix-based parallel workflow with automated issue management #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The sequential workflow hits 10 bank endpoints every 5 minutes, resulting in high GitHub Actions costs and brittle execution where single failures affect all banks.
Changes
Unified Fetcher (
scripts/fetch-bank.ts).jspostprocessors into single TypeScript script with bank config mapdeno run --allow-all scripts/fetch-bank.ts akbanklogs/failures.jsonlwith timestamp/stack tracesreadJSONhelper replaces external dependencyMatrix Workflow (
.github/workflows/flat.yml)*/5→*/10(50% cost reduction)max-parallel: 5,fail-fast: falsegroup: ${{ github.workflow }}-${{ github.ref }}Automated Issue Management
automated,data-fetchCode Quality
forEachrace conditions →for...ofloopsExample
Manual trigger for specific banks:
Error log structure:
{"timestamp": "2026-01-07T12:00:00.000Z", "bank": "akbank", "error": "HTTP 500", "stack": "..."}CSV output format and data processing logic unchanged. Compatible with existing
archive.py.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
dl.deno.land/usr/bin/curl curl -s REDACTED(dns block)/usr/bin/curl curl --fail --location --progress-bar --output /home/REDACTED/.deno/bin/deno.zip REDACTED(dns block)/usr/local/bin/deno deno run --unsafely-ignore-certificate-errors --allow-all scripts/fetch-bank.ts hsbc(dns block)esm.ubuntu.com/usr/lib/apt/methods/https /usr/lib/apt/methods/https tcp --destination-port 53 -j ACCEPT(dns block)www.hsbcyatirim.com.tr/usr/local/bin/deno deno run --unsafely-ignore-certificate-errors --allow-all scripts/fetch-bank.ts hsbc(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
This pull request was created from Copilot chat.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.