Conversation
added 30 commits
March 9, 2026 06:49
Add missing Ruby and C#/.NET entries, update Java to Maven Central, update C/C++ to GitHub Releases. Fix stale Java Quick Start tab. Add bindings table consistency requirement to documentation spec.
Update 6 existing crate CLAUDE.md files with verified corrections: - iscc-lib: fix symbol count, add META_TRIM_META, document feature gates - iscc-py: fix function count (21→27), add SumCodeResult, correct build matrix - iscc-napi: itemize API surface, fix conformance count, correct NPM secret - iscc-wasm: 12 fixes including wasm-opt flags, publishing flow, struct exceptions - iscc-ffi: add csbindgen section, complete symbol lists, opaque handle types - iscc-rb: expand test entries, add unsafe as_slice() safety pattern Create 4 new CLAUDE.md files for previously undocumented directories: - iscc-jni: JNI naming, opaque pointer pattern, Maven build, 12 pitfalls - packages/go: pure Go reimplementation, embedded conformance, 9 pitfalls - packages/dotnet: P/Invoke bindings, SafeHandle, NuGet publishing, 9 pitfalls - packages/cpp: header-only C++17, RAII guards, vcpkg portfile, 6 pitfalls
… 14 CI jobs green
- update-state: sonnet→opus with effort medium - define-next: effort max - advance: effort high - review: effort high - Swift and Kotlin binding issues: low→normal priority
…ty, no source changes
Add crates/iscc-uniffi/ — shared UniFFI scaffolding crate exposing all 32 Tier 1 symbols from iscc-lib via proc macros. This is the foundation for Swift and Kotlin bindings. - 10 gen function wrappers with owned-type signatures - 4 text utilities, 4 algorithm primitives, 1 soft hash - 2 encoding utilities, 3 codec operations, 5 constant getters - 2 streaming Object types (DataHasher/InstanceHasher with Mutex<Option>) - 1 diagnostic (conformance_selftest) - 11 result Record types + IsccUniError enum - 21 unit tests, clippy clean, workspace unaffected
…erified All verification criteria pass: build, 21 tests, clippy clean, no regressions. Updated learnings with UniFFI patterns, agent memory with review shortcuts.
Debian's ruby package ships bundler as a default gem (library only) without installing a binstub. Add explicit gem install bundler so the bundle executable lands in /usr/local/bin/.
Add uniffi-bindgen CLI binary to iscc-uniffi crate (bindgen feature + [[bin]] section). Create packages/swift/ with SPM manifest, UniFFI-generated Swift bindings (all 32 Tier 1 symbols), C header + module map for FFI target, XCTest conformance tests (9 methods, 50 vectors), vendored data.json, and per-package README.
…mance tests verified
…ation still needed
Add `swift:` job to ci.yml that builds the UniFFI native library and runs `swift test` on macos-14. Uses -Xlinker -rpath for runtime library discovery.
…uniffiFFI vs IsccLibFFI)
Rename IsccLibFFI → iscc_uniffiFFI in SPM target name, directory, and modulemap to match the UniFFI-generated `canImport(iscc_uniffiFFI)` import in iscc_uniffi.swift.
- Create docs/howto/swift.md with full Swift howto guide (all 10 gen functions, streaming, codec, text utils, constants, conformance) - Create packages/swift/CLAUDE.md with per-package agent documentation - Add Swift install/quickstart sections and polyglot mention to README.md - Add Swift to zensical.toml nav and gen_llms_full.py ORDERED_PAGES
Create Constants.swift with public isccLibVersion constant and add Swift sync target (_get_swift_version / _sync_swift_version) to scripts/version_sync.py. All 14 targets now stay in sync with the workspace version from root Cargo.toml.
added 29 commits
March 22, 2026 08:17
…xed; 6 open issues
…kflow Add 4 Android ABI targets (aarch64, armv7, x86_64, x86) to build-kotlin-native matrix. Conditional steps: NDK setup via nttld/setup-ndk@v1 (r27c), cargo-ndk install, and cargo ndk build. Desktop build step unchanged but now conditional to skip Android targets.
…32 path issue found Verified all 11 next.md criteria pass. Codex review found JNA ARM32 resource path mismatch: spec says `android-armv7/` but JNA expects `android-arm/`. Filed as new issue. Deleted resolved critical issue (Android native libs).
…th issue pending human review
Add JAR content validation to test-kotlin-release job: depends on assemble-kotlin, downloads the assembled JAR artifact, and verifies all 9 JNA native library resource paths are present before publish.
…e JAR selection fixed Codex review caught that `ls *.jar | head -1` picks -javadoc.jar alphabetically instead of the runtime JAR. Fixed by filtering out classifier JARs. Resolved Kotlin JAR smoke test issue from issues.md.
Add build script, Swift FFI headers, per-crate Cargo.toml files, and root Cargo.toml to the hashFiles() cache key, preventing stale XCFramework artifacts when these inputs change.
Adds a "Verify main matches tag" step that fails fast on tag-triggered releases if main HEAD has diverged from the tagged commit SHA. Prevents building XCFramework binaries from source different than what was tagged. The guard is conditional on tag triggers only — workflow_dispatch re-triggers are unaffected.
Add `swift package dump-package` step to the swift CI job that validates the consumer-facing root Package.swift parses correctly. Runs early (before UniFFI build) with no working-directory override, catching structural regressions in the SPM manifest.
…y complete; 1 low issue remains
… update Replace tag-push trigger with workflow_dispatch. New prepare-release job builds Swift XCFramework, updates Package.swift checksum, commits to main, then creates the tag — so the tagged commit always has the correct checksum. Eliminates force-retag that broke release reproducibility.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
crates/iscc-uniffi/) exposing all 32 Tier 1 API symbolspackages/swift/) with generated bindings and full conformance testspackages/kotlin/) with generated bindings and full conformance testsdocs/howto/swift.md)scripts/version_sync.pyeffortlevels to CID agent definitionsbundlenot on PATH in devcontainer DockerfileTest plan
cargo test --workspace)pytest)gen_*_v0functions)gen_*_v0functions)