Commit Graph
54 Commits
Author SHA1 Message Date
akkadbakkad89andDevin 176b899bd8 feat(libSceNpCppWebApi): implement twelve Matches2V1 factories and DataStatus vector iterators
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-11-05 19:07:29 +05:30
Eduardo Ruiz 4403d9eed0 fix(libSceNpCppWebApi): match the friends transaction lifecycle
Clear the 0x10-byte transaction in its constructor, validate the start context before reporting the signed-out console, and make getResponse and getFriendsPlayerSessions return 0x80553508 while the transaction is unstarted. Extend the test with a prefilled transaction and an unchanged output sentinel, and split the debt entry into model layout and transaction behaviour.
2026-11-05 01:00:46 +01:00
Eduardo Ruiz c4cae7da4a fix(libSceNpCppWebApi): keep the friends debt entry title-agnostic 2026-11-05 01:00:46 +01:00
Eduardo Ruiz a85386c6ac feat(libSceNpCppWebApi): bring up the SessionManager friends player sessions family
Implement the 45 exports imported for PlayerSessionsApi::getFriendsPlayerSessions, the Friend and FriendJoinedPlayerSession models, the response body and its transaction.

Layouts and offsets come from the module bundled with PPSA23732 (J03341606). Offline the request and transaction fail as on a signed-out console; the model getters and the inline vector/iterator views use the real layout measured in that module.

Tests: guest_np_cpp_web_api_friends (new) plus the existing np_cpp_web_api suite.
2026-11-05 01:00:46 +01:00
Dean b8efa6292a Merge pull request #12808 from edubox/feat/npcpp-common-binary
feat(libSceNpCppWebApi): implement Common::Binary as the module does
2026-11-04 18:34:45 +13:00
Dean 4888484529 Merge pull request #13194 from edubox/feat/npcpp-matches
feat(libSceNpCppWebApi): bring up Matches V1 offline
2026-11-03 18:09:25 +13:00
Dean Galvin c6d9a0917e Merge commit '88bb16c20e757658078b3efce912c96b1b03502a' into HEAD
# Conflicts:
#	docs/dev/debt/libSceNpCppWebApi.md
2026-11-03 11:45:14 +13:00
Eduardo Ruiz d5dc4bd548 fix(libSceNpCppWebApi): accept empty vectors in the Matches setters 2026-11-02 21:01:33 +01:00
Eduardo Ruiz 16abae6bc3 fix(libSceNpCppWebApi): store the Matches request state and use the real initialize ABI
The 34 Matches request/model setters now store the value and the is-set
flag at the offsets measured in the module bundled with
PPSA21564/PPSA23732 (builds J03093737/J03341606). The 10 vector setters
copy the vector handle and increment the body reference count at +0x30
instead of deep-copying the elements; that difference is a host choice and
is recorded in the debt.

The six ParameterTo* initializers now take their actual string and
IntrusivePtr request-body arguments. They allocate a host implementation
of the module layout, keep the string and body, and return 0x80553503 for a
null context or text, 0x80553502 for an unset context, 0x8055350f when
already initialized, 0x80553504 on allocation failure and 0x80553512 for
an empty request body. terminate releases the state and returns 0x80553510.

The 22 factories no longer return a fake signed-out result: they throw
NotImplemented_nid_no_patch and are recorded as unsupported. The six API
verbs keep SCE_NP_WEBAPI_ERROR_NOT_SIGNED_IN as offline request paths. The
three accessors read the measured fields. The test pins the measured
offsets, flags, reference counts and lifecycle/error codes instead of
asserting null-self success or NotImplemented throws.
2026-11-02 21:01:33 +01:00
Dean Galvin 4dce45f518 Merge commit 'b28bb772177768f99874ca38f6252cd0139acf2a' into HEAD
# Conflicts:
#	docs/dev/debt/libSceNpCppWebApi.md
2026-11-03 05:19:43 +13:00
Eduardo Ruiz f21a6b3214 fix(libSceNpCppWebApi): match Common::String layout and copy semantics 2026-11-02 14:07:29 +01:00
Dean 53527ac6c6 Merge pull request #11644 from AlexFigas/feat/npcppwebapi-sessionmanager-remaining-parameter-lifecycles
feat(libSceNpCppWebApi): track the remaining SessionManager V1 parameter lifecycles as the module does
2026-11-03 01:26:21 +13:00
Dean 157d00d6a5 Merge pull request #11631 from nicolasabosch/feat/npcppwebapi-public-profile-singular
feat(libSceNpCppWebApi): answer the singular public profile request offline
2026-11-03 01:26:15 +13:00
Eduardo Ruiz 0c588f2df9 docs(libSceNpCppWebApi): record the Binary allocation contract 2026-11-02 13:14:07 +01:00
Dean 94d8bd0223 Merge pull request #10925 from AlexFigas/fix/npcppwebapi-vector-reference-counts
fix(libSceNpCppWebApi): count Vector<String> and Vector<unsigned long> references where the bundled module does
2026-11-02 23:25:05 +13:00
Dean e1f46d1746 Merge pull request #12847 from edubox/feat/npcpp-activities
feat(libSceNpCppWebApi): bring up Activities V1 offline
2026-11-02 00:22:55 +13:00
Alexandre Figueiredo 1c163f759c Merge fix/npcppwebapi-vector-reference-counts into feat/npcppwebapi-string-vector-iteration 2026-11-01 00:44:23 +00:00
Alexandre Figueiredo b7ec1d9006 Merge upstream main into fix/npcppwebapi-vector-reference-counts 2026-11-01 00:42:36 +00:00
Nicolas Abosch 024912b6c1 Merge upstream main into feat/npcppwebapi-public-profile-singular
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>

# Conflicts:
#	core/libs/prx/libSceNpCppWebApi/Export.cpp
#	core/libs/prx/libSceNpCppWebApi/include/Api.hpp
#	docs/dev/debt/libSceNpCppWebApi.md
2026-10-31 13:53:19 -03:00
akkadbakkad89andDevin 38004dd687 feat(libSceNpCppWebApi): declare title-imported exports and implement the Common machinery
Adds the exports imported by PPSA20397 and PPSA03530 that had no
provider: Matchmaking::V1, Matches::V1, SessionManager::V1,
UserProfile::V1, TitleCloudStorage::V1, InGameCatalog::V5 domain
surfaces and the Common template instantiations over their types.

IntrusivePtr, Vector, Iterator and Transaction members follow the
layouts already implemented for the earlier titles; API verbs,
factories and transaction entry points fail
SCE_NP_WEBAPI_ERROR_NOT_SIGNED_IN as a signed-out console does;
parameter bookkeeping succeeds without state; response accessors and
vector iteration throw since a failed request produces no response.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-31 11:39:09 +05:30
Alexandre Figueiredo 011c51f825 Merge fix/npcppwebapi-vector-reference-counts into feat/npcppwebapi-string-vector-iteration 2026-10-30 21:49:30 +00:00
Alexandre Figueiredo 743b6e0b79 Merge upstream main into fix/npcppwebapi-vector-reference-counts 2026-10-30 21:49:30 +00:00
Adrià 53f41a0b6d Merge pull request #13050 from edubox/feat/npcpp-titlecloudstorage
feat(libSceNpCppWebApi): bring up TitleCloudStorage V1 offline
2026-10-30 18:22:51 +01:00
Adrià 9f748f4d8e Merge pull request #13036 from edubox/feat/npcpp-matchmaking
feat(libSceNpCppWebApi): bring up Matchmaking V1 offline
2026-10-30 16:29:21 +01:00
Adrià bb0900fea0 docs(libSceNpCppWebApi): record the throwing TitleCloudStorage accessors in debt 2026-10-30 14:20:21 +01:00
Eduardo Ruiz 6277e4b76d fix(libSceNpCppWebApi): address TitleCloudStorage review comments
Declare and validate the initialize arguments, give the text and binary setters their parameter handling, list the eight setters in the test, stop pinning the unread response accessors to a throw, and extend the debt entry with the four TitleCloudStorage parameter classes.
2026-10-30 14:20:17 +01:00
Alexandre Figueiredo ded2bb6114 Merge fix/npcppwebapi-vector-reference-counts into feat/npcppwebapi-string-vector-iteration 2026-10-30 08:39:26 +00:00
Alexandre Figueiredo 5c847d9387 Merge upstream main into fix/npcppwebapi-vector-reference-counts 2026-10-30 08:39:26 +00:00
Eduardo Ruiz 62d9f110ab docs(libSceNpCppWebApi): shorten the Matchmaking debt entry 2026-10-30 07:25:57 +01:00
Eduardo Ruiz f0fa366942 fix(libSceNpCppWebApi): take the Matchmaking parameter arguments
Declare the string and body arguments of the four initialize exports and use InitializeParameterWithBody for SubmitTicket. Give setview the same text handling and cover it in the test. Drop the accessor throw assertions and record the namespace debt.
2026-10-30 01:09:00 +01:00
Eduardo Ruiz 6b22e4176e docs(libSceNpCppWebApi): record the Activities V1 offline contract 2026-10-29 14:08:41 +01:00
Alexandre Figueiredo ad47eb210d Merge fix/npcppwebapi-vector-reference-counts into feat/npcppwebapi-string-vector-iteration 2026-10-29 10:51:19 +00:00
Alexandre Figueiredo 6d00d394d7 Merge upstream main into fix/npcppwebapi-vector-reference-counts 2026-10-29 10:51:19 +00:00
Nicolas AboschandClaude Sonnet 5.5 6cd336ce16 Merge upstream main into feat/npcppwebapi-public-profile-singular
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-28 23:44:01 -03:00
Alexandre Figueiredo 2aa55e85e3 feat(libSceNpCppWebApi): iterate Vector<String> with begin, end and the Iterator<String> operators 2026-10-28 11:43:40 +00:00
Alexandre Figueiredo c207cb884d fix(libSceNpCppWebApi): count Vector<String> and Vector<unsigned long> references where the bundled module does 2026-10-28 11:43:40 +00:00
Alexandre Figueiredo 6df6a4b16e feat(libSceNpCppWebApi): track the remaining SessionManager V1 parameter lifecycles as the module does 2026-10-27 09:04:40 +00:00
Alexandre Figueiredo 46f4b0f7f8 feat(libSceNpCppWebApi): track the UserProfile, ProfanityFilter and CommunicationRestrictionStatus parameter lifecycles as the module does 2026-10-27 09:03:23 +00:00
Alexandre Figueiredo a62e4fae0a feat(libSceNpCppWebApi): track the Leaderboards V1 parameter lifecycles as the module does 2026-10-27 09:03:06 +00:00
Alexandre Figueiredo 7054872694 feat(libSceNpCppWebApi): track the SessionManager V1 parameter lifecycles as the module does 2026-10-27 09:02:38 +00:00
Nicolas AboschandClaude Opus 5.5 ecb225f179 feat(libSceNpCppWebApi): answer the singular public profile request offline
Add BasicProfileApi::getPublicProfile with its parameter and
Transaction<GetPublicProfileResponse>, which fail NOT_SIGNED_IN like
the plural request, plus the IntrusivePtr helpers for
GetPublicProfileResponse, PersonalDetail and Avatar, the bool
conversions of BasicProfile and BasicPresence pointers, and size of
the BasicProfile and BasicPresence vectors over host-created bodies.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 21:06:03 -03:00
Alexandre Figueiredo 08fa661766 fix(libSceNpCppWebApi): answer finish, abort and getId for never-started transactions as the module does 2026-10-26 23:22:56 +00:00
Dean a142f7b0dd Merge pull request #9015 from akkadbakkad89/feat/np-webapi-up-generics
feat(libSceNpCppWebApi): cover the UserProfile models and remaining Common instantiations
2026-10-27 10:28:47 +13:00
akkadbakkad89andDevin d7ad433603 feat(libSceNpCppWebApi): cover the UserProfile models and remaining Common instantiations
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-26 05:43:43 +00:00
Alexandre Figueiredo fcf9754a29 feat(libSceNpCppWebApi): track the TitleCloudStorage and InGameCatalog parameter lifecycles as the module does 2026-10-25 22:40:18 +00:00
akkadbakkad89 54f45af110 fix(libSceNpCppWebApi): drop title ID from section marker and shorten the debt entry 2026-10-21 07:20:27 +00:00
akkadbakkad89 60cff59d8a feat(libSceNpCppWebApi): cover SessionManager PlayerSessionsApi and InGameCatalog ContainerApi imports 2026-10-21 07:14:31 +00:00
Dean Galvin d8c89db757 Merge origin/main into PR 8561 2026-10-21 23:16:00 +13:00
DProkosandClaude Opus 5.5 c12ca91ed5 docs(libSceNpCppWebApi): correct the silent stub counts and drop the title ID
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 08:40:39 +03:00
christophermonterocortes-cr 3768b3a23a feat(libSceNpCppWebApi): align stub signatures with demangled symbols 2026-10-20 20:29:43 -06:00