PyCForge 1.3.8 — single inheritance conversion
15 October 2026

Runtime conversion supports single inheritance between declared classes,
including explicitly imported and re-exported bases. Subclasses inherit fields,
methods and constructors. Instance calls select the nearest override, including
calls made within inherited methods. An overriding constructor may initialize
its base with super().__init__(...).

Zero-argument super() retains its declaring class and uses the current first
positional argument. Two-argument super supports compatible instance or class
receivers. Stored proxies and bound methods retain their lookup and receiver
behavior. Decorated methods, variadic calls, defaults and lexical class cells
work across inheritance chains. Each runtime context owns its class cells.

Class annotations accept subclass instances, including within supported
containers. An inherited field may be redeclared; its most-derived annotation
checks assignments to that subclass instance. isinstance and issubclass support
the declared hierarchy, admitted builtin types and nested class-info tuples.
Empty classes and the object root are supported.

Verification

- All 14 inheritance test groups and 24 subtests passed under GCC
  AddressSanitizer and UndefinedBehaviorSanitizer. These cover dispatch,
  constructor chains, decorators, subtype checks, imported classes, lexical
  scope, failure effects, resource limits and cleanup. An external C caller
  supplies nine input combinations across two isolated contexts. LeakSanitizer
  was disabled because process inspection is unavailable in this environment;
  no leak-inspection pass is claimed.
- Converter regression checks passed 101 tests and 160 subtests across
  decorators, functions, Runtime values, modules, files, arena cleanup,
  conversion correctness and earlier extended operations.
- All 21 Help pages opened in offscreen Qt. All 55 Python examples (33 Runtime,
  22 Typed), five API examples, three C callers, two module examples and three
  README examples passed. Links, navigation and search passed. The updated
  class page was rendered and visually inspected.
- The 37-case offline corpus compares delivered 1.3.7 with this application
  snapshot. Supported fixture matches increase from 21 to 29; eight cases
  remain explicit unsupported rejections. Both runs have zero unexpected
  outcomes and zero observed network attempts. A blocked-socket probe verifies
  Linux seccomp enforcement. All 330 recorded application source hashes match
  this release; 52 corpus JSON documents passed their schemas.
- The installed wheel passed a Python/native-C comparison of a multilevel
  constructor and method chain, super, subtype annotations and relationship
  queries. Typed conversion and all 21 installed Help pages passed. Its 829
  RECORD hashes, 820 application files, all 495 icons, metadata and dependencies
  were checked. Distribution hashes and preservation details accompany this
  report.

The full historical suite was not rerun. The 1.3.5 report records 20 pre-existing
historical metadata/README/module-budget failure records; this upgrade does not
claim to resolve those checks. Verification used Linux x86-64, Python 3.12.14,
GCC and offscreen Qt. Native Windows/PowerShell and PCFC11 checks remain
outstanding. No PyPI publication was made.

Documentation and packaging

The approved README remains byte-for-byte unchanged, including its 1.3.4 heading
while conversion upgrades continue. SHA256:
28dec8e51de9f5a3e05ea06ec9528abadcc61f7914e2675a01066ca57ad6fc7f
Application and distribution metadata report 1.3.8. HTML Help retains its
21-page structure and 55-example count. Existing sections describe the new
coverage and its boundaries without development-status sections or additional
example collections.

All previous application files, icons, original README images, licenses and
dependencies are retained. The 91 historical generated documentation screenshots
remain excluded, and no new verification screenshots are bundled. Build caches
and older embedded distributions are excluded. The current wheel and source
archive are in dist/. Runtime dependencies remain PySide6, numpy, numba, jedi
and autopep8. The source-only corpus is excluded from the wheel.

A hierarchy permits at most 64 fields, 64 distinct user-defined method names
and 64 user classes. Multiple inheritance, dynamic bases, builtin bases other
than object, class decorators, metaclasses, properties, static/class methods,
operator protocols and general descriptors remain unsupported. One-argument
unbound super proxies and custom instance/subclass protocols are unsupported.
Existing argument, capture, memory, work and call-depth limits remain active.
Exception recovery, generators, async/await, nested classes, mutable module
globals, binary files and general third-party API conversion remain outside
this upgrade. C-to-Assembly is deferred. Runtime C-IR proof validation and exact
ForgeLens mappings remain unavailable.

Raw checks and installed/distribution records are in evidence/inheritance_1_3_8.
The initial inheritance log retains a Python 3.12 error-category mismatch for a
deleted receiver; the focused correction and final sanitizer run record its
resolution. The corpus comparison is
training_corpus/comparisons/1.3.7-to-1.3.8.json.
