Skip to content

[WIP] Add GitHub Actions workflow for creating issues from FUN targets#2

Draft
Voidless7125 with Copilot wants to merge 1 commit into
devfrom
copilot/create-github-issues-workflow
Draft

[WIP] Add GitHub Actions workflow for creating issues from FUN targets#2
Voidless7125 with Copilot wants to merge 1 commit into
devfrom
copilot/create-github-issues-workflow

Conversation

Copilot AI commented Jul 3, 2026

Copy link
Copy Markdown

Thanks for asking me to work on this. I will get started on it and keep this PR's description up to date as I form a plan and make progress.

Create a GitHub Actions workflow in Voidless7125/OIS-Decompile that automatically creates GitHub issues for decompilation targets named FUN_* found in the main client decompile files.

Requirements

  1. Add a workflow (e.g., .github/workflows/create-fun-issues.yml) that can be triggered manually via workflow_dispatch.
  2. The workflow must scan only these files if they exist:
    • OIS.exe.c
    • OIS.exe.h
  3. The workflow must ignore any server-related files (for example names containing server, Server, OISServer, etc.).
  4. Parse function-like identifiers matching FUN_[A-Za-z0-9_]+ from the targeted files.
  5. Deduplicate discovered function names before issue creation.
  6. For each discovered function, create an issue with a stable title format:
    • Decompile: FUN_xxxxxxxx
  7. Make issue creation idempotent:
    • Before creating an issue, check whether an issue with the exact same title already exists (open or closed).
    • If it exists, skip creation.
  8. Use built-in GitHub tooling where possible (actions/github-script preferred) and avoid external dependencies.
  9. Keep permissions minimal but sufficient (e.g., issues: write, contents: read).
  10. Add logging so the run output clearly shows:
    • files scanned
    • number of FUN_* names found
    • number skipped due to duplicates
    • number of issues created

Implementation guidance

  • You can implement scanning and creation in one actions/github-script step or split steps.
  • Use Node/JavaScript regex extraction from file contents.
  • Treat matching as case-sensitive for FUN_ prefix.
  • Ensure the workflow exits successfully even when no matches are found.

Deliverables

  • New workflow file committed to a branch and opened as a pull request.
  • PR description should summarize behavior, idempotency approach, and how to run via workflow_dispatch.

The following is the prior conversation context from the user's chat exploration (may be truncated):

User: Can you start working on making a GitHub action that makes issues for all functions that have FUN_ as their name, so that I can start work on them? (OIS.exe.c/OIS.exe.h) files, IGNORE THE OIS SERVER ONES.

Assistant: Absolutely — I can start this.

I’ll add a GitHub Actions workflow that scans OIS.exe.c / OIS.exe.h (and ignores server variants), finds function names matching FUN_..., and opens GitHub issues for each one so you can track decompilation work.

Before I run it, I’ll implement it in a safe/idempotent way so it won’t spam duplicates (e.g., by searching for an existing issue title like Decompile: FUN_xxxxxxxx first).

User: Before I run it, I’ll implement it in a safe/idempotent way so it won’t spam duplicates (e.g., by searching for an existing issue title like Decompile: FUN_xxxxxxxx first).
Okay, are you going to run this? As an agent?

Assistant: Yes — I can run this as an agent and have it open a PR with the workflow implementation.

If you want, I’ll start now against:

  • Repository: Voidless7125/OIS-Decompile
  • Goal: Add a GitHub Action that scans OIS.exe.c / OIS.exe.h, ignores server files, creates one issue per FUN_*, and avoids duplicates by checking existing issue titles first.

Reply “run it” and I’ll kick off the coding agent session.

User: run it

Assistant: We’re currently waiting on your confirmation in GitHub’s prompt, and as soon as you accept it I can continue and run the agent task.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants