# Reported issues for renforge

Pod holds 18 of 20 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to [renforge](/mcp/renforge).

## Most discussed

### i18n internationalization (I can contribute zh-CN)

## Context

I'm using RenForge v0.6.5 as an MCP server integrated with [Hermes Agent](https://github.com/NousResearch/hermes-agent) (a desktop AI assistant by Nous Research) on Windows 11.

My setup:
- **OS**: Windows 11
- **Python**: 3.13.14
- **Install method**: `pip install renforge` (user site-packages)
- **MCP integration**: configured in Hermes Agent's `config.yaml` under `mcp_servers.renforge`, so the AI agent calls RenForge tools directly during Ren'Py development sessions
- **Dashboard*

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/13) · 2026-07-24 · closed · outside contributor · 3 comments

### Extract SDL drag event synthesis from the bridge input handler

## What problem would this solve?

The drag path in `_renforge_h_send_input` currently combines payload validation, coordinate normalization, pygame compatibility handling, and SDL mouse event construction/posting. Even though the behavior merged in #25 is covered and working, these responsibilities make the handler harder to reason about and make event-sequence changes risky.

This was identified as deferred maintainability work during the review of #25.

## Proposed solution

Extract the const

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/30) · 2026-07-31 · closed · 1 comment

### refactor: modularize MCP tool registration without changing the public API

## Context

Discovered while centralizing metadata for all 54 MCP tools in #85.

`src/renforge/server.py::_register_tools` still contains the 54 nested MCP wrapper functions in one large registration block. #85 adds a centralized contract catalog and strict drift tests, which prevents undocumented tools and schema mismatches, but the implementation remains difficult to review and maintain by domain.

This is intentionally out of scope for #85 because moving all wrappers at the same time would ob

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/87) · 2026-08-13 · closed · 0 comments

### feat: enforce runtime policies for high-risk MCP tool actions

## Context

Discovered while hardening all 54 MCP contracts in #85.

MCP `ToolAnnotations` are static hints. They can classify a whole tool conservatively, but they cannot express that individual actions inside overloaded tools have different risk levels. For example:

- `renforge_control`: `advance` and `quit` do not have the same impact
- `renforge_saves`: `list`, `save`, and `load` have different effects
- `renforge_run_scenario`: the risk depends on its step sequence
- `renforge_eval`: arbit

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/86) · 2026-08-13 · closed · 0 comments

### Support source-safe movement of style-backed `say.what` dialogue text

## What problem would this solve?

The live editor can select the standard Ren'Py dialogue text widget, but it cannot move it and does not explain the real ownership of its position.

### Observed behavior

Environment used for the reproduction:

- Ren'Py 8.5.3
- RenForge Demo 1.0
- In-game live editor, Move tool active
- Standard `screen say(who, what)`
- Selected target: `screen=say`, `widget_id=what`

Reproduction:

1. Open the live editor while a dialogue line is visible.
2. Select the rende

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/81) · 2026-08-10 · closed · 0 comments

### Track currently blocked visual editor capabilities

## Purpose

This is the single place to track RenForge features that have been tested but cannot yet be enabled safely.

**Blocked does not mean broken.** It means the underlying idea works partially, but a required safety or correctness guarantee is still missing.

## Currently blocked

### Unbuilt capabilities (high unlock cost / core mechanism missing)

- [x] **Animated element editing** — #51 — **closed as won't-do**, not unblocked.
  - User impact: elements carrying an active ATL (`at <atl 

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/70) · 2026-08-02 · closed · 0 comments

### Prove designed failed-gate UI across identity, clipping, and repetition locks

## What problem would this solve?

PR #25 proves the locked-state label for one expression-position case, but the roadmap also requires missing identity, clipping ancestry, and repeated-instance failures to read as designed states rather than silent no-ops.

Roadmap section: **Cross-cutting — UI layer**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Add live fixtures and

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/52) · 2026-07-31 · closed · 0 comments

### Add style editing with a dedicated source-write contract

## What problem would this solve?

Colours, padding, and fonts have different ownership, inheritance, and source-write semantics from position edits. Reusing the position patcher would be unsafe.

Roadmap section: **Stage 5 — Beyond moving**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

After prerequisite stages are settled, define and prove a dedicated style-editing co

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/50) · 2026-07-31 · closed · 0 comments

## Most recent

### Prove rotation editing with transformed selection

## What problem would this solve?

Rotation through `Transform(rotate=)` interacts with axis-aligned selection bounds, and no reliable selection/write proof exists.

Roadmap section: **Stage 5 — Beyond moving**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

After prerequisite stages are settled, run an evidence-gated rotation spike before adding production UI.

Acceptanc

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/48) · 2026-07-31 · closed · 0 comments

### Add adapter-specific resize editing with an explicit size model

## What problem would this solve?

The editor can move proven targets but has no source-safe resize model. Ren'Py may express size through `xsize`, `ysize`, `xysize`, or implicit content dimensions.

Roadmap section: **Stage 5 — Beyond moving**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

After Stages 1–4 are settled, define a size model for one proven adapter and add 

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/47) · 2026-07-31 · closed · 0 comments

### Prove source-safe editing for targets inside `Transform(crop=...)`

## What problem would this solve?

Targets under `Transform(crop=...)` remain locked because transform and crop geometry have not been proven together.

Roadmap section: **Stage 4 — Clipping containers beyond `fixed`**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Build a focused live fixture that combines transform and crop, then prove or disprove selection, preview, p

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/46) · 2026-07-31 · closed · 0 comments

### Prove source-safe editing for targets inside a `viewport`

## What problem would this solve?

Targets under `viewport` ancestry remain locked because scroll offsets and clipping have not been measured end to end.

Roadmap section: **Stage 4 — Clipping containers beyond `fixed`**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Build a focused live fixture and prove or disprove that focus rectangles, preview coordinates, source pat

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/44) · 2026-07-31 · closed · 0 comments

### Prove runtime disambiguation for repeated loop and `use` instances

## What problem would this solve?

A loop or repeated `use` can produce multiple runtime widgets from one source statement. The stable key carries an ordinal, but no UI or write proof shows that one intended instance can be edited safely.

Roadmap section: **Stage 2 — Statement forms beyond the single literal line**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Run an e

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/42) · 2026-07-31 · closed · 0 comments

### Preserve authored `align` positioning during visual moves

## What problem would this solve?

Targets authored with `align` cannot currently be moved without changing source form or losing the relationship between normalized values and pixels.

Roadmap section: **Stage 2 — Statement forms beyond the single literal line**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Add an `align` position model with explicit logical-pixel conv

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/39) · 2026-07-31 · closed · 0 comments

### Support positioned multi-line screen statements without rewriting their blocks

## What problem would this solve?

The source analyzer currently rejects multi-line statements, even when the supported position tokens are literal and unambiguous.

Roadmap section: **Stage 2 — Statement forms beyond the single literal line**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Parse the complete statement span, locate the authored position token spans across

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/37) · 2026-07-31 · closed · 0 comments

### Add a `slider` adapter with its own seven-step live proof

## What problem would this solve?

`slider` is focusable, but its position may be literal, style-driven, or container-driven. It has not passed an adapter-specific live proof.

Roadmap section: **Stage 1 — Widen the adapter allowlist**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Add a dedicated `slider` adapter for directly authored literal positions and retain exact 

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/36) · 2026-07-31 · closed · 0 comments

### Add a `bar` adapter with its own seven-step live proof

## What problem would this solve?

`bar` is focusable, but its position may be literal, style-driven, or container-driven. No adapter-specific evidence currently separates editable from locked cases.

Roadmap section: **Stage 1 — Widen the adapter allowlist**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Add a dedicated `bar` adapter for directly authored literal positi

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/34) · 2026-07-31 · closed · 0 comments

### Add an `imagebutton` adapter with its own seven-step live proof

## What problem would this solve?

V1 proves source-safe visual movement only for `textbutton`. `imagebutton` is focusable and structurally similar, but the roadmap explicitly forbids treating similarity as evidence.

Roadmap section: **Stage 1 — Widen the adapter allowlist**.

Canonical source: https://github.com/alex-jordan547/renforge-mcp/blob/main/docs/superpowers/specs/2026-07-30-renforge-visual-editor-vfull-roadmap.md

## Proposed solution

Add a dedicated `imagebutton` analyzer, patch pat

[Read the thread](https://github.com/alex-jordan547/renforge-mcp/issues/32) · 2026-07-31 · closed · 0 comments

The remaining reports are on [the project's issue tracker](https://github.com/alex-jordan547/renforge-mcp/issues).
