PyCForge 1.3.76 — Crucible import maturity and loading feedback
2026-10-31

Source baseline: PyCForge-1.3.75-Source.zip
SHA256 ca0d5be855ac43b194dca369ff6cfcfe61390c4f6d918da4ee2235250d2bb213
All 4,441 baseline source paths are preserved. Historical records keep their
original release context. Nothing is published; CC alone publishes PyCForge.

DELIVERED BEHAVIOR
Import controls, their package Help and file pickers, PCFC11 setup/compilation
and PCFC11 Help use the original PCF code-bracket artwork. The general app mark
is unchanged. Copper accents remain restrained. Import admission is queued after
the loading cover can paint; a small 88-by-8 logical-pixel progress bar indicates
work without inventing percentages. Compiler identity checks show a cancellable
cover and share an already-running startup check. Cancellation and failed checks
restore usable controls. Slow underlying operations still take time; the covers
provide feedback and the Qt event loop remains responsive.

DEFAULT CONVERSION IMPORTS
math 0.3.0; NumPy 0.3.0; JSON 0.1.0. Each is admitted through the normal package
boundary, independently enabled/disabled, and supplies offline Help. Adding JSON
preserves both enabled and disabled prior custom JSON registrations without
rewriting a registry merely to read it.

NumPy now has 17 operations. Added: divide, negative, absolute, sqrt, concatenate.
Arrays remain finite one-dimensional float64. New outputs have independent
storage. Array/array arithmetic requires matching lengths; finite scalar
arithmetic is supported by the declared kernels. Zero division, nonfinite results
and negative real square roots are refused. Concatenation accepts a nonempty
list/tuple of arrays, with axis None, 0 or -1. No views, general broadcasting,
out/where, multidimensional arrays or new dtype support is implied. Old packages
using profiles 0.1/0.2 retain their minimal profile and fingerprints.

JSON supplies loads and dumps for None, bool, int64, finite float64, Unicode
scalar strings, lists/tuples and string-key dictionaries. It covers escapes,
surrogate pairs, embedded NUL, ordered objects and duplicate-name last values.
dumps supports keyword-only ensure_ascii and separators. Limits: 64 nested
containers, 1 MiB input/output UTF-8 text, 1,024 bytes per number token. Lone
surrogates, bytes, arbitrary-size integers, nonfinite numbers, hooks, classes,
streams, indent and sort_keys are excluded. Syntax errors use ValueError without
JSONDecodeError attributes. Allocation/work exhaustion follows the fatal Runtime
policy. Float parsing requires the C numeric locale and nearest rounding.

The value family adds reviewed engine-owned kernels, a four-field ValueFunction
contract, JSON and independent records starters, completion and package Help.
Results use existing traced Runtime values. Inputs are not mutated. Failed calls
release partial allocations. Live generated roots retain nested results during
collection in active functions. No external JSON library or Python runtime is
required by generated C. Existing opt-in GC configuration is unchanged.

SDK COORDINATION
SDK 0.6.3 reads package_format from the engine-produced archive before writing
output, removing an old scalar/array-only reporting assumption. New semantics,
signatures, operations, forms, starters and Help stay in Crucible. No SDK library
switches, converter copies or GUI changes were added. Original shared visual
payload hashes are retained.

The unchanged installed SDK 0.6.2 discovered the new forms, verified all eight
independent records cases, built and registered a correct value package. Its
result misreported scalar-package/0.2; SDK 0.6.3 correctly reports
pycforge.value-package/0.1. Reverification after SDK changes remains mandatory.
The preceding PyCForge 1.3.75 accepts the prior NumPy package and rejects the new
NumPy/value profiles. SDK 0.6.3 works with its scalar authoring services. Actual
1.3.60 and 1.3.61 wheels exercise historical browsing and project migration.

COMPLETED QUALIFICATION — LINUX X86-64
- 205 distinct recorded engine test cases/subtests passed after corrections.
  The ledger retains initial failures and their successful follow-ups.
- 37 focused cases passed against the installed final engine wheel; 308 loaded
  product modules were checked and all originated in its installed environment.
- 158 installed SDK cases passed: 130 headless and 28 desktop. The headless SDK
  environment has no engine, NumPy or Qt installed. The engine has no SDK.
- Standard NumPy/JSON templates: 78 native executions across GCC UBSan and
  PCFC11 0.2.27 O0/O1, plus 23 expected conversion rejections: 101 checks.
- The combined default NumPy/JSON example passes GCC and PCFC11 O0/O1.
- JSON comparisons cover more than 300 seeded values, including finite binary64,
  Unicode/control text and nested containers; malformed input and boundary cases
  are separate. Active collection preserves nested JSON results in a long call.
- Native allocation fault injection covers loads/dumps, rollback, array error
  cleanup and zero tracked allocations after context destruction. AddressSanitizer
  and UndefinedBehaviorSanitizer pass with ASAN_OPTIONS=detect_leaks=0. This host
  blocks LeakSanitizer under ptrace, so no LeakSanitizer pass is claimed.
- The regenerated portable GC kit passes all 78 checks with PCFC11 O0/O1. Its
  status is DEVELOPMENT_PASS and windows_qualified is false; this was Linux.
- Maintained manual: 32 pages, 82 Python examples (50 Runtime and 32 Typed native
  comparisons), five API examples, six C callers, three module and three README
  examples. The new JSON manual example is additionally compiled and run.
- README at the initial handoff: 227 lines; approved four image URLs, widths
  and order preserved. The pre-publication revision below supersedes its prose.
- Exported SDK workbench matches its schema, package manuals and byte inventory.
- Original artwork and loading panels were inspected at normal scaling and a
  1920x1080 offscreen desktop at 150%. Offscreen rendering is not Windows QA.

PLATFORM AND FOLLOW-UP LIMITS
No native Windows compiler/desktop test was run here. Existing user-reported
Windows success belongs to earlier versions. SDK native fixture execution still
uses its documented Linux/GNU compiler profile. Very small logical desktops can
compress the existing setup/action layouts; this release does not redesign those
layouts. No claim of full NumPy, full Python json, universal import conversion,
Windows sanitizer coverage or GC perfection is made.

WINDOWS REVIEW
Install the 1.3.76 wheel with the same Python used for PyCForge, then restart.
Existing valid managed PCFC11 builds use the same pinned source/storage rules.
Open Register Conversion Imports: math, numpy and json should be Ready; select
Import Help for their exact limits. Check original icons and brief loading covers.
Open fixtures/import_maturity/combined.py from the source in Runtime mode,
transpile, then compile as an executable with PCFC11. Expected output:
{"values":[2.0,3.0,-2.0,-3.0]}
2.0
Run the regenerated test-windows-gc.ps1 as described in WINDOWS-GC-TESTING.md and
retain its resulting archive. Those 78 checks cover GC; the combined example
additionally exercises this release's conversion imports.

The pinned PCFC11 archive remains 5,885,847 bytes with SHA256
075fbed6e0acdaf3dad40332a4b47c0268c72f6212c5a5c0939e894054776f68.
No compiler/toolchain installers or downloads were added. The companion final
release report records strict distribution checks and archive sizes/hashes.

README REVISION BEFORE PYCFORGE PUBLICATION — 2026-10-31
CC confirmed SDK publication and requested exactly five README URLs: the four
existing image URLs plus https://pypi.org/project/pycforge-sdk/. Current PyPI JSON
metadata confirms SDK 0.6.3 and both published SHA256 values match the preceding
SDK handoff. The SDK distribution is not changed by this revision.

The README briefly explains creating/verifying/packaging .pcfplugin expansions,
registration, *import declarations and supported member calls. Bundled import
profiles are presented as three concise bullets. PCFC11's integrated compile
workflow, guided setup, checked identity and opt-in Runtime GC are distinguished;
no compiler-speed benchmark or universal memory-safety claim is introduced.

The tracker adds the confirmed expanded-call temporary-storage lifetime
correction from 1.3.72. Evidence: evidence/active_gc_1_3_72/review-notes.txt and
tests/test_runtime_active_collection_1_3_72.py, specifically expanded argument
evaluation/error unwinding. This is a previously corrected development defect,
not a new conversion fix or a claim that earlier published versions had active GC.

The resulting README is 226 lines and 3,810 whitespace-separated words, compared
with 227 lines and 3,844 words previously. PyPI rendering retains both banner
widths, both screenshots, one SDK hyperlink and a 13-row tracker. Exactly five
authored URLs are enforced by the updated source and rendered-README guards.
AGENTS.md and the standing README guideline carry CC's new five-link rule.

Public-distribution tests pass: 11 tests and 14 subtests. The initial invocation
exposed an older assertion for 31 Help pages; it now matches the existing
32-page manual, with no manual or product-code change. The final accompanying
release report records documentation-example and distribution checks plus the
rebuilt artifact identities. PyCForge remains 1.3.76; new downloads supersede
the unpublished earlier files with those names. Nothing is published here.
