@@ -60,16 +60,20 @@ contract VincentUserFacet is VincentBase {
6060 string [] calldata abilityIpfsCids ,
6161 string [][] calldata policyIpfsCids ,
6262 bytes [][] calldata policyParameterValues
63- ) external appNotDeleted (appId) onlyRegisteredAppVersion (appId, appVersion) appEnabled (appId, appVersion) onlyPkpOwner (pkpTokenId) {
63+ )
64+ external
65+ appNotDeleted (appId)
66+ onlyRegisteredAppVersion (appId, appVersion)
67+ appEnabled (appId, appVersion)
68+ onlyPkpOwner (pkpTokenId)
69+ {
6470 uint256 abilityCount = abilityIpfsCids.length ;
6571
6672 if (abilityCount == 0 || policyIpfsCids.length == 0 || policyParameterValues.length == 0 ) {
6773 revert LibVincentUserFacet.InvalidInput ();
6874 }
6975
70- if (
71- abilityCount != policyIpfsCids.length || abilityCount != policyParameterValues.length
72- ) {
76+ if (abilityCount != policyIpfsCids.length || abilityCount != policyParameterValues.length ) {
7377 revert LibVincentUserFacet.AbilitiesAndPoliciesLengthMismatch ();
7478 }
7579
@@ -119,7 +123,7 @@ contract VincentUserFacet is VincentBase {
119123
120124 // Set the new permitted app version
121125 agentStorage.permittedAppVersion[appId] = appVersion;
122-
126+
123127 // Store this version as the last permitted version for potential re-permitting
124128 agentStorage.lastPermittedVersion[appId] = appVersion;
125129
@@ -188,44 +192,42 @@ contract VincentUserFacet is VincentBase {
188192 * @param pkpTokenId The token ID of the PKP to re-permit the app for
189193 * @param appId The ID of the app to re-permit
190194 */
191- function rePermitApp (uint256 pkpTokenId , uint40 appId )
192- external
193- appNotDeleted (appId)
194- onlyPkpOwner (pkpTokenId)
195- {
195+ function rePermitApp (uint256 pkpTokenId , uint40 appId ) external appNotDeleted (appId) onlyPkpOwner (pkpTokenId) {
196196 VincentUserStorage.UserStorage storage us_ = VincentUserStorage.userStorage ();
197197 VincentUserStorage.AgentStorage storage agentStorage = us_.agentPkpTokenIdToAgentStorage[pkpTokenId];
198-
198+
199199 // Check if app is currently permitted
200200 if (agentStorage.permittedApps.contains (appId)) {
201- revert LibVincentUserFacet.AppVersionAlreadyPermitted (pkpTokenId, appId, agentStorage.permittedAppVersion[appId]);
201+ revert LibVincentUserFacet.AppVersionAlreadyPermitted (
202+ pkpTokenId, appId, agentStorage.permittedAppVersion[appId]
203+ );
202204 }
203-
205+
204206 // Check if app was ever permitted (exists in allPermittedApps)
205207 if (! agentStorage.allPermittedApps.contains (appId)) {
206208 revert LibVincentUserFacet.AppNeverPermitted (pkpTokenId, appId, 0 );
207209 }
208-
210+
209211 // Get the last permitted version
210212 // Note: lastPermittedVersion should never be 0 here because:
211213 // - If app is currently permitted, we already reverted above
212214 // - If app was unpermitted, unPermitAppVersion sets lastPermittedVersion
213215 uint24 lastPermittedVersion = agentStorage.lastPermittedVersion[appId];
214-
216+
215217 // Check if the last permitted version is still enabled
216218 VincentAppStorage.AppStorage storage as_ = VincentAppStorage.appStorage ();
217219 VincentAppStorage.AppVersion storage appVersion =
218220 as_.appIdToApp[appId].appVersions[getAppVersionIndex (lastPermittedVersion)];
219-
221+
220222 if (! appVersion.enabled) {
221223 revert LibVincentUserFacet.AppVersionNotEnabled (appId, lastPermittedVersion);
222224 }
223-
225+
224226 // Re-permit the app with the last permitted version
225227 appVersion.delegatedAgentPkps.add (pkpTokenId);
226228 agentStorage.permittedApps.add (appId);
227229 agentStorage.permittedAppVersion[appId] = lastPermittedVersion;
228-
230+
229231 emit LibVincentUserFacet.AppVersionRePermitted (pkpTokenId, appId, lastPermittedVersion);
230232 }
231233
@@ -256,9 +258,7 @@ contract VincentUserFacet is VincentBase {
256258 revert LibVincentUserFacet.InvalidInput ();
257259 }
258260
259- if (
260- abilityIpfsCids.length != policyIpfsCids.length || abilityIpfsCids.length != policyParameterValues.length
261- ) {
261+ if (abilityIpfsCids.length != policyIpfsCids.length || abilityIpfsCids.length != policyParameterValues.length ) {
262262 revert LibVincentUserFacet.AbilitiesAndPoliciesLengthMismatch ();
263263 }
264264
@@ -320,9 +320,7 @@ contract VincentUserFacet is VincentBase {
320320 // Check nested array lengths at policy level
321321 uint256 policyCount = policyIpfsCids[i].length ;
322322 if (policyCount != policyParameterValues[i].length ) {
323- revert LibVincentUserFacet.PolicyArrayLengthMismatch (
324- i, policyCount, policyParameterValues[i].length
325- );
323+ revert LibVincentUserFacet.PolicyArrayLengthMismatch (i, policyCount, policyParameterValues[i].length );
326324 }
327325
328326 bytes32 hashedAbilityIpfsCid = keccak256 (abi.encodePacked (abilityIpfsCid));
@@ -343,8 +341,8 @@ contract VincentUserFacet is VincentBase {
343341 EnumerableSet.Bytes32Set storage abilityPolicyIpfsCidHashes =
344342 versionedApp.abilityIpfsCidHashToAbilityPolicyIpfsCidHashes[hashedAbilityIpfsCid];
345343
346- mapping (bytes32 => bytes ) storage abilityPolicyParameterValues =
347- us_.agentPkpTokenIdToAgentStorage[pkpTokenId] .abilityPolicyParameterValues[appId][appVersion][hashedAbilityIpfsCid];
344+ mapping (bytes32 => bytes ) storage abilityPolicyParameterValues = us_.agentPkpTokenIdToAgentStorage[pkpTokenId]
345+ .abilityPolicyParameterValues[appId][appVersion][hashedAbilityIpfsCid];
348346
349347 // Step 4: Iterate through each policy associated with the ability.
350348 for (uint256 j = 0 ; j < policyCount; j++ ) {
@@ -367,15 +365,22 @@ contract VincentUserFacet is VincentBase {
367365 // Check for duplicate ability policy IPFS CIDs
368366 for (uint256 k = j + 1 ; k < policyCount; k++ ) {
369367 if (keccak256 (abi.encodePacked (policyIpfsCids[i][k])) == hashedAbilityPolicy) {
370- revert LibVincentUserFacet.DuplicateAbilityPolicyIpfsCid (appId, appVersion, abilityIpfsCid, policyIpfsCids[i][k]);
368+ revert LibVincentUserFacet.DuplicateAbilityPolicyIpfsCid (
369+ appId, appVersion, abilityIpfsCid, policyIpfsCids[i][k]
370+ );
371371 }
372372 }
373373
374374 // Step 5: Store the policy parameter metadata
375375 abilityPolicyParameterValues[hashedAbilityPolicy] = policyParameterValues[i][j];
376376
377377 emit LibVincentUserFacet.AbilityPolicyParametersSet (
378- pkpTokenId, appId, appVersion, hashedAbilityIpfsCid, hashedAbilityPolicy, policyParameterValues[i][j]
378+ pkpTokenId,
379+ appId,
380+ appVersion,
381+ hashedAbilityIpfsCid,
382+ hashedAbilityPolicy,
383+ policyParameterValues[i][j]
379384 );
380385 }
381386 }
0 commit comments