[codex] Add keyed OpenCapTable v35 package#232
Conversation
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 23 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (14)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 68d7d5f996
ℹ️ 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".
…36-contract-keys # Conflicts: # Test/daml.yaml # dars/dars.lock
|
-v35 has never been uploaded to a network. we should be able to use v35 0.0.1 still since there is nothing to maintain compatibility with. @codex |
|
To use Codex here, create an environment for this repo. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit c2a16f7. Configure here.

Summary
OpenCapTable-v35as version0.0.1; v35 has not been uploaded/vetted on a network, so this is still the first v35 package shapeIssuerAuthorizationandCapTableOcpFactorykey because factory discovery is deployment/config driven and the key was not used by any on-ledger workflowOpenCapTable-v35/0.0.1DAR backup anddars.lockContract key policy for this PR
These keys are lookup helpers, not ledger-wide database constraints.
They are useful when a transaction already knows the logical object it is looking for and wants to resolve the current visible contract by a stable business identifier. They are not used here to prove global uniqueness, prove absence, enumerate contracts, or replace cap-table invariants.
In particular:
CapTablecontract, not from key existenceKeys kept
IssuerAuthorizationKey:
Maintainer:
Why this key is useful:
OcpFactory.LookupIssuerAuthorizationgives a positive lookup path for that pending authorization without requiring callers to persist the authorization contract id out of bandWhat a more standard approach would be:
IssuerAuthorizationcontracts by template and filter oncontext.system_operatorandcontext.issuerWhat this key does not do:
AuthorizeIssueridempotentCapTableKey:
Maintainer:
Why this key is useful:
CapTablecontract id forever after setupWhat a more standard approach would be:
CapTablecontracts by template and filter oncontext.system_operatorandcontext.issuerWhat this key does not do:
Key removed
OcpFactoryRemoved key:
Why it was removed:
generated/ocp-factory-contract-id.json)scripts/create-ocp-factory.tsalready reuses an existing factory through an ACS query by template and operatorlookupByKeyorfetchByKeyonOcpFactoryWhy v35
0.0.1OpenCapTable-v35has not been uploaded/vetted on a network. Thedars.lockentry for v35 hasnetworks: [], so there is no deployed v35 package line to preserve upgrade compatibility with.The earlier v36 direction came from
dpm upgrade-checkrejecting keys as an upgrade to an already-backed-up v35 shape. Since that v35 shape was never deployed, this PR treats keyed v350.0.1as the first v35 release instead of creating an unnecessary v36 line.Validation
npm run buildnpm run check-upgrade-compatnpm run lint:damlnpm run testnpm run codegennpm run verify-packagenpm run verify-darsnpm run build:tsnpm run lint(passes with two existing warnings inscripts/remove-participant-dar.ts)npm run formatgit diff --check