Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions .github/ISSUE_TEMPLATE/compatibility.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Compatibility bug
description: Report a reproducible GTA IV gameplay, mission, world, save, or content compatibility failure.
title: "[Compatibility] "
body:
- type: markdown
attributes:
value: |
Describe behavior without uploading Rockstar assets, saves containing proprietary payloads, executables, or archives.
- type: input
id: commit
attributes:
label: LibertyRecomp-iOS commit
placeholder: 40-character commit SHA
validations:
required: true
- type: input
id: revision
attributes:
label: Supported game revision ID / executable SHA-256
description: Hashes/IDs are okay; do not upload the executable.
validations:
required: true
- type: input
id: location
attributes:
label: Mission / area / gameplay system
placeholder: Opening mission, Broker street streaming, save/load, vehicle physics, etc.
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Reproduction steps
description: Give the shortest deterministic sequence from a known state.
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected Xbox 360 behavior
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual behavior
validations:
required: true
- type: dropdown
id: severity
attributes:
label: Severity
options:
- Progression blocker
- Major gameplay break
- Partial / intermittent
- Cosmetic / minor
validations:
required: true
- type: textarea
id: diagnostics
attributes:
label: Diagnostics / first known divergence
description: Guest PC, asset/resource ID, collision trace, renderer trace, save error, or other diagnostic evidence.
render: text
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
blank_issues_enabled: false
contact_links: []
58 changes: 58 additions & 0 deletions .github/ISSUE_TEMPLATE/cpu-runtime.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: CPU / runtime bug
description: Report a static-recomp, PowerPC semantic, guest-memory, or runtime divergence.
title: "[CPU/Runtime] "
body:
- type: markdown
attributes:
value: |
Use this for low-level runtime failures. Do not attach Rockstar game files, `default.xex`, RPF archives, keys, or signing material.
- type: input
id: ios_commit
attributes:
label: LibertyRecomp-iOS commit
description: Exact commit SHA that reproduced the problem.
placeholder: 40-character commit SHA
validations:
required: true
- type: input
id: upstream_commit
attributes:
label: Pinned LibertyRecomp commit
placeholder: 40-character upstream commit SHA
validations:
required: true
- type: input
id: revision
attributes:
label: Game revision ID / executable SHA-256
description: Hashes/IDs are okay; do not upload the executable itself.
- type: textarea
id: reproduction
attributes:
label: Reproduction steps
description: Smallest deterministic sequence that triggers the failure.
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected Xbox 360 behavior
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual behavior
validations:
required: true
- type: textarea
id: diagnostics
attributes:
label: First divergence and diagnostics
description: Include guest PC/LR, instruction, thread, memory address, assertion, or trace if available.
render: text
- type: textarea
id: regression
attributes:
label: Regression-test idea
description: If the root cause is known, describe the smallest test that should permanently cover it.
70 changes: 70 additions & 0 deletions .github/ISSUE_TEMPLATE/ios-platform.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: iOS platform bug
description: Report Apple-platform lifecycle, storage, audio-session, controller, signing, or shell issues.
title: "[iOS] "
body:
- type: markdown
attributes:
value: |
Use this for native iOS platform behavior. Do not include certificates, provisioning profiles, private keys, or game files.
- type: input
id: commit
attributes:
label: LibertyRecomp-iOS commit
placeholder: 40-character commit SHA
validations:
required: true
- type: input
id: device
attributes:
label: Device
placeholder: iPhone 11 / Apple A13
validations:
required: true
- type: input
id: ios
attributes:
label: iOS version
placeholder: iOS 16.x / 17.x / 18.x
validations:
required: true
- type: dropdown
id: area
attributes:
label: Platform area
options:
- App launch / lifecycle
- Background / foreground
- Files / storage
- Audio session
- Controller discovery
- Thermal / memory pressure
- Orientation / safe area
- Signing / installation
- Diagnostics / logging
- Other
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Reproduction steps
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected behavior
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual behavior
validations:
required: true
- type: textarea
id: logs
attributes:
label: Relevant logs
description: Redact identifiers and secrets before posting.
render: text
61 changes: 61 additions & 0 deletions .github/ISSUE_TEMPLATE/performance.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Performance issue
description: Report measurable CPU, GPU, memory, I/O, shader, or thermal regressions.
title: "[Performance] "
body:
- type: markdown
attributes:
value: |
Performance reports need measurements. iPhone 11 / A13 is the baseline target; avoid conclusions from simulator timing.
- type: input
id: commit
attributes:
label: LibertyRecomp-iOS commit
placeholder: 40-character commit SHA
validations:
required: true
- type: input
id: device
attributes:
label: Physical device
placeholder: iPhone 11 / Apple A13
validations:
required: true
- type: input
id: ios
attributes:
label: iOS version
validations:
required: true
- type: input
id: scene
attributes:
label: Scene / workload
description: Area, mission, menu, driving route, or synthetic test.
validations:
required: true
- type: textarea
id: settings
attributes:
label: Graphics/runtime settings
description: Resolution scale, frame cap, quality settings, controller state, mods, and other relevant settings.
validations:
required: true
- type: textarea
id: metrics
attributes:
label: Measurements
description: FPS/frame time, CPU time, GPU time, resident memory, streaming latency, shader stalls, thermal state, and duration where available.
render: text
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Reproduction steps
validations:
required: true
- type: textarea
id: profile
attributes:
label: Profiling evidence
description: Summarize Instruments/Xcode GPU capture findings without uploading copyrighted game data.
62 changes: 62 additions & 0 deletions .github/ISSUE_TEMPLATE/renderer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Renderer bug
description: Report Metal/Xenos rendering, resource-conversion, shader, or presentation problems.
title: "[Renderer] "
body:
- type: markdown
attributes:
value: |
Keep reports focused on the first rendering divergence. Do not attach copyrighted game payloads.
- type: input
id: commit
attributes:
label: LibertyRecomp-iOS commit
placeholder: 40-character commit SHA
validations:
required: true
- type: input
id: device
attributes:
label: Device / macOS reference hardware
placeholder: iPhone 11 / Apple A13, or Mac model
validations:
required: true
- type: dropdown
id: stage
attributes:
label: Rendering stage
options:
- Metal shell clear/present
- Resource upload/conversion
- Shader translation
- Pipeline state
- GTA draw submission
- Depth/stencil/blending
- Texture/sampler
- Post-processing/presentation
- Unknown
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Reproduction steps
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected result
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual result
validations:
required: true
- type: textarea
id: evidence
attributes:
label: Diagnostics
description: Metal validation output, debug labels, draw/resource IDs, pipeline keys, or relevant logs.
render: text
49 changes: 49 additions & 0 deletions .github/workflows/apple.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Apple Foundation Build

on:
push:
branches: [main]
pull_request:
workflow_dispatch:

permissions:
contents: read

jobs:
macos-foundation-reference:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Host architecture and Xcode version
run: |
uname -m
xcodebuild -version
- name: Configure macOS foundation reference
run: cmake --preset host-debug
- name: Compile macOS foundation reference
run: cmake --build --preset host-debug --parallel 2
- name: Run macOS foundation tests
run: ctest --preset host-debug

ios-arm64-shell:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Xcode version
run: xcodebuild -version
- name: Configure unsigned iOS ARM64 shell
run: cmake --preset ios-ci
- name: Compile unsigned iOS ARM64 shell
run: cmake --build --preset ios-ci --parallel 2
- name: Confirm app bundle exists
run: |
APP="$(find out/build/ios-ci -type d -name 'Liberty Recompiled.app' -print -quit)"
test -n "$APP"
echo "Built: $APP"

upstream-reference-source:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Verify pinned LibertyRecomp reference source
run: ./scripts/ci-macos-reference.sh "$RUNNER_TEMP/LibertyRecomp"
Loading
Loading