Skip to content

chore(ci): harden CI + roadmap for fearless-utils hygiene#1297

Merged
takemiyamakoto merged 664 commits into
developfrom
chore/ci-utils-roadmap-hardening
May 19, 2026
Merged

chore(ci): harden CI + roadmap for fearless-utils hygiene#1297
takemiyamakoto merged 664 commits into
developfrom
chore/ci-utils-roadmap-hardening

Conversation

@WRRicht3r
Copy link
Copy Markdown
Contributor

Notes: references:
- shared-features-spm pin 6d6cb16
- web3-swift dedupe 7.7.7
- optional Google keys injection
- FearlessKeys gated by INCLUDE_FEARLESS_KEYS

@WRRicht3r WRRicht3r force-pushed the chore/ci-utils-roadmap-hardening branch 2 times, most recently from 9c91aeb to b7a28f0 Compare November 4, 2025 12:54
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex critique this codebase

@soramitsu soramitsu deleted a comment from chatgpt-codex-connector Bot Nov 6, 2025
@chatgpt-codex-connector
Copy link
Copy Markdown

Summary

  • Added docs/CodexCritique.md documenting scene-management regressions, singleton coupling risks, and cancellation handling gaps observed in the Fearless iOS codebase. docs/CodexCritique.mdL1-L11

Testing

  • ⚠️ Not run (docs-only change)

View task →

@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex critique this codebase

@chatgpt-codex-connector
Copy link
Copy Markdown

Summary

  • Added docs/CodexCritique.md to document scene-management gaps, singleton-heavy composition, concurrency cancellation risks, and URL handler synchronization issues in the Fearless root stack. docs/CodexCritique.mdL1-L45

Testing

  • ⚠️ Tests not run (docs-only change)

View task →

@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex fix the codecov issues once and for all

@chatgpt-codex-connector
Copy link
Copy Markdown

Summary

Testing

  • ⚠️ Not run (Xcode simulator tooling unavailable in the current container).

View task →

…les under build/coverage and ignore in git

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…ult Jenkins destination to generic to avoid ambiguous matches

Signed-off-by: William Richter <richter@soramitsu.co.jp>
Signed-off-by: William Richter <richter@soramitsu.co.jp>
…lve ChainModel/ChainAsset/StakingType in generated mock signatures

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…to fearless module not SSFModels

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…ed mock references

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…ous type lookups and Cuckoo mock conformance failures\n\n- Pin app module types via typealiases (MetaAccountModel, ChainRegistryProtocol, SchedulerProtocol, etc.)\n- Pin SSF models where appropriate (RuntimeMetadataItem)\n\nThis unblocks Jenkins PR build (#1297) by removing Swift ‘ambiguous for type lookup’ errors.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…alias to to match production protocols (RuntimeProviderFactoryProtocol/Pool). Fixes mismatch errors in Jenkins PR #1297.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…riceData\n\nExpose SSFModels types to tests via central alias files to resolve 'Cannot find type … in scope' errors during Jenkins build.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…out the relationship\n\n- Check entity.propertiesByName before KVC get/set to avoid NSUnknownKeyException when older/alternate models are loaded during tests.\n- Keeps behavior unchanged when relationship exists.\n\nStabilizes unit tests on CI that load differing Core Data models (SSFAcountManagmentStorage vs local).

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…formables\n\n- Clean SubstrateDataModel v2–v8 and base model XML: drop customClassName on Transformable attributes (purchaseProviders, availableSources, forceSmartIds, availableAssets, assets).\n- Keeps NSSecureUnarchiveFromDataTransformer where present; no functional change.\n- Silences Core Data runtime warnings on CI.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
…del\n\n- AccountExportPasswordTests: stub SheetAlertPresentable.present(viewModel:from:)\n- ControllerAccountTests: stub view.didReceive(feeViewModel:)\n\nFixes intermittent Cuckoo 'No stub for method' failures on CI.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r WRRicht3r force-pushed the chore/ci-utils-roadmap-hardening branch from 3e72500 to 65b012c Compare November 7, 2025 12:54
- Podfile: inhibit SoraUI warnings; disable warnings-as-errors for Pods
- test-matrix: allow NO_XCPRETTY=1 for raw xcodebuild output

This should unblock hanging tests due to SoraUI PinView warning and provide clearer logs.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r WRRicht3r force-pushed the chore/ci-utils-roadmap-hardening branch from 65b012c to 514c4e3 Compare November 7, 2025 12:58
Signed-off-by: William Richter <richter@soramitsu.co.jp>
…evelop

- Restore fearlessTests and fearlessIntegrationTests to match origin/develop
- Remove branch-only test shims and mocks

This isolates recent CI failures to app code and stabilizes the test suite.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
- Add SSFModels/SSFCrypto imports to tests
- Fix AccountCreationHelper to pass defaultChainId/isBackuped
- Conform SubstrateStorageTestFacade to StorageFacadeProtocol
- Disambiguate OperationManagerFacade type in era test
- Restate @unchecked Sendable for Operation subclasses (Swift 6)

Signed-off-by: William Richter <richter@soramitsu.co.jp>
- Add githubNotify-safe wrapper to set commit status context 'jenkins/ios-tests'
- Wrap test stage in try/catch to mark PENDING/SUCCESS/FAILURE

This ensures PRs show a Jenkins check in addition to Codecov.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
- Jenkinsfile: restore to pre-Codecov version
- scripts/test-matrix.sh: restore pre-Codecov behavior
- Remove Codecov helper scripts and doc; restore codecov.yml/.gitignore

Return CI to previous process without Codecov stage.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
- Add ghNotifySafe helper and wrap Unit Tests with commit statuses
- Run scripts/test-matrix.sh using auto-picked simulator destination

This makes Jenkins appear as an independent check on PRs.

Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ef80742c25

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread fearless/Common/Services/ChainRegistry/ChainSyncService.swift
Comment thread fearless/Common/Services/ChainRegistry/ChainRegistry.swift
WRRicht3r added 2 commits May 14, 2026 10:45
Signed-off-by: William Richter <richter@soramitsu.co.jp>
Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8eedb65075

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread fearless/ApplicationLayer/Services/WalletConnect/WalletConnectService.swift Outdated
Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 223b8c4e00

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread fearless/Common/Services/ChainRegistry/ChainSyncService.swift Outdated
Comment thread scripts/ci/select-simulator.sh Outdated
Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

let updateClosure: ([DataProviderChange<ChainModel>]) -> Void = { changes in
runningInQueue.async {
updateClosure(changes)
}

P1 Badge Call caller-provided update closure in chainsSubscribe

The local updateClosure constant shadows the function parameter, and the inner updateClosure(changes) call therefore invokes the wrapper itself rather than the caller’s callback. On any chain update this creates unbounded recursive dispatching on runningInQueue, so observers do not receive the intended update payload and the queue can be flooded. Capture the parameter under a different name and call that inside the async block.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7c886d22be

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread fearless/Modules/Send/Validators/XcmMinAmountInspectorShim.swift Outdated
WRRicht3r added 2 commits May 15, 2026 15:15
Signed-off-by: William Richter <richter@soramitsu.co.jp>
Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 738c630b3b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread fearless/Common/Services/ChainRegistry/ConnectionPool/ConnectionFactory.swift Outdated
WRRicht3r added 2 commits May 15, 2026 21:19
Signed-off-by: William Richter <richter@soramitsu.co.jp>
Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

1 similar comment
@takemiyamakoto
Copy link
Copy Markdown
Contributor

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e4c2b1482d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread Podfile
Signed-off-by: William Richter <richter@soramitsu.co.jp>
@WRRicht3r
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. What shall we delve into next?

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@takemiyamakoto takemiyamakoto merged commit 947b154 into develop May 19, 2026
1 check passed
@takemiyamakoto takemiyamakoto deleted the chore/ci-utils-roadmap-hardening branch May 19, 2026 15:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants