| 1 |
- {"knowledge_relations":[{"id":251,"source_id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","target_id":"ad5af0bf-bafb-4145-be86-483a17d63d17","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 3bc252fe-a643-4c0d-be8d-e132c98004fc -\u003e ad5af0bf-bafb-4145-be86-483a17d63d17","gmt_create":"2026-05-14T01:11:02.5716394+08:00","gmt_modified":"2026-05-14T01:11:02.5716394+08:00"},{"id":252,"source_id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","target_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 3bc252fe-a643-4c0d-be8d-e132c98004fc -\u003e 8e3ecf95-b320-4ffc-abda-d064f9342d72","gmt_create":"2026-05-14T01:11:02.5741581+08:00","gmt_modified":"2026-05-14T01:11:02.5741581+08:00"},{"id":253,"source_id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","target_id":"25e976c3-5ed2-4cb6-9f9d-0b6618d38195","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 3bc252fe-a643-4c0d-be8d-e132c98004fc -\u003e 25e976c3-5ed2-4cb6-9f9d-0b6618d38195","gmt_create":"2026-05-14T01:11:02.5756998+08:00","gmt_modified":"2026-05-14T01:11:02.5756998+08:00"},{"id":254,"source_id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","target_id":"19858231-aa86-4c6b-8028-b78ab9aa069c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 3bc252fe-a643-4c0d-be8d-e132c98004fc -\u003e 19858231-aa86-4c6b-8028-b78ab9aa069c","gmt_create":"2026-05-14T01:11:02.5756998+08:00","gmt_modified":"2026-05-14T01:11:02.5756998+08:00"},{"id":255,"source_id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","target_id":"b19e4c0a-872e-44d8-a544-de3f6676aac6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 3bc252fe-a643-4c0d-be8d-e132c98004fc -\u003e b19e4c0a-872e-44d8-a544-de3f6676aac6","gmt_create":"2026-05-14T01:11:02.5772198+08:00","gmt_modified":"2026-05-14T01:11:02.5772198+08:00"},{"id":256,"source_id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","target_id":"785b12ca-5bcc-49a9-9b94-ff7bebc8bfbc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 3bc252fe-a643-4c0d-be8d-e132c98004fc -\u003e 785b12ca-5bcc-49a9-9b94-ff7bebc8bfbc","gmt_create":"2026-05-14T01:11:02.5772198+08:00","gmt_modified":"2026-05-14T01:11:02.5772198+08:00"},{"id":257,"source_id":"de8b85c5-21be-462f-9092-4efb87410c78","target_id":"dc68c61e-f219-4b94-9ebe-da0045aad84b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: de8b85c5-21be-462f-9092-4efb87410c78 -\u003e dc68c61e-f219-4b94-9ebe-da0045aad84b","gmt_create":"2026-05-14T01:11:02.5772198+08:00","gmt_modified":"2026-05-14T01:11:02.5772198+08:00"},{"id":258,"source_id":"de8b85c5-21be-462f-9092-4efb87410c78","target_id":"0309a241-0698-4548-a152-32a2146eca86","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: de8b85c5-21be-462f-9092-4efb87410c78 -\u003e 0309a241-0698-4548-a152-32a2146eca86","gmt_create":"2026-05-14T01:11:02.5787381+08:00","gmt_modified":"2026-05-14T01:11:02.5787381+08:00"},{"id":259,"source_id":"de8b85c5-21be-462f-9092-4efb87410c78","target_id":"39b6f533-499e-4660-bfa6-23941ca9b4cb","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: de8b85c5-21be-462f-9092-4efb87410c78 -\u003e 39b6f533-499e-4660-bfa6-23941ca9b4cb","gmt_create":"2026-05-14T01:11:02.5787381+08:00","gmt_modified":"2026-05-14T01:11:02.5787381+08:00"},{"id":260,"source_id":"de8b85c5-21be-462f-9092-4efb87410c78","target_id":"9e11be5e-4f79-4804-b088-2fe748f56481","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: de8b85c5-21be-462f-9092-4efb87410c78 -\u003e 9e11be5e-4f79-4804-b088-2fe748f56481","gmt_create":"2026-05-14T01:11:02.5802573+08:00","gmt_modified":"2026-05-14T01:11:02.5802573+08:00"},{"id":261,"source_id":"de8b85c5-21be-462f-9092-4efb87410c78","target_id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: de8b85c5-21be-462f-9092-4efb87410c78 -\u003e 6fba9e57-5708-4dc6-a35f-40cdceccc6ab","gmt_create":"2026-05-14T01:11:02.5802573+08:00","gmt_modified":"2026-05-14T01:11:02.5802573+08:00"},{"id":262,"source_id":"c690f262-fc9c-47b2-bbe8-aa9aa9be07c2","target_id":"75ec6d9c-ae73-4e1f-ba5d-320529d439c5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c690f262-fc9c-47b2-bbe8-aa9aa9be07c2 -\u003e 75ec6d9c-ae73-4e1f-ba5d-320529d439c5","gmt_create":"2026-05-14T01:11:02.5817764+08:00","gmt_modified":"2026-05-14T01:11:02.5817764+08:00"},{"id":263,"source_id":"c690f262-fc9c-47b2-bbe8-aa9aa9be07c2","target_id":"5ba8cf65-bc80-4ca1-b9e4-b83fa4896ea3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c690f262-fc9c-47b2-bbe8-aa9aa9be07c2 -\u003e 5ba8cf65-bc80-4ca1-b9e4-b83fa4896ea3","gmt_create":"2026-05-14T01:11:02.5824865+08:00","gmt_modified":"2026-05-14T01:11:02.5824865+08:00"},{"id":264,"source_id":"c690f262-fc9c-47b2-bbe8-aa9aa9be07c2","target_id":"fc45b727-df10-4b34-adc1-52dfa581adde","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c690f262-fc9c-47b2-bbe8-aa9aa9be07c2 -\u003e fc45b727-df10-4b34-adc1-52dfa581adde","gmt_create":"2026-05-14T01:11:02.5829996+08:00","gmt_modified":"2026-05-14T01:11:02.5829996+08:00"},{"id":265,"source_id":"c690f262-fc9c-47b2-bbe8-aa9aa9be07c2","target_id":"73659296-9967-4a7e-a1a1-3103d23905c2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c690f262-fc9c-47b2-bbe8-aa9aa9be07c2 -\u003e 73659296-9967-4a7e-a1a1-3103d23905c2","gmt_create":"2026-05-14T01:11:02.5829996+08:00","gmt_modified":"2026-05-14T01:11:02.5829996+08:00"},{"id":266,"source_id":"c690f262-fc9c-47b2-bbe8-aa9aa9be07c2","target_id":"0f770246-74aa-453f-af53-34ff2baf2791","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c690f262-fc9c-47b2-bbe8-aa9aa9be07c2 -\u003e 0f770246-74aa-453f-af53-34ff2baf2791","gmt_create":"2026-05-14T01:11:02.5829996+08:00","gmt_modified":"2026-05-14T01:11:02.5829996+08:00"},{"id":267,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"f303a924-dcac-41b1-b301-5c7090f0b80b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e f303a924-dcac-41b1-b301-5c7090f0b80b","gmt_create":"2026-05-14T01:11:02.5845181+08:00","gmt_modified":"2026-05-14T01:11:02.5845181+08:00"},{"id":268,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e 9d2354e2-730e-49b4-81bb-0a162d0691c9","gmt_create":"2026-05-14T01:11:02.5850334+08:00","gmt_modified":"2026-05-14T01:11:02.5850334+08:00"},{"id":269,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"706faa7a-bb9f-4fa2-b8ac-d566742148c5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e 706faa7a-bb9f-4fa2-b8ac-d566742148c5","gmt_create":"2026-05-14T01:11:02.5855499+08:00","gmt_modified":"2026-05-14T01:11:02.5855499+08:00"},{"id":270,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"6f12da23-71ec-4e31-afd2-3e2898fec50f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e 6f12da23-71ec-4e31-afd2-3e2898fec50f","gmt_create":"2026-05-14T01:11:02.5860638+08:00","gmt_modified":"2026-05-14T01:11:02.5860638+08:00"},{"id":271,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"90617d49-1f6b-4cbd-9010-719a87517585","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e 90617d49-1f6b-4cbd-9010-719a87517585","gmt_create":"2026-05-14T01:11:02.5865825+08:00","gmt_modified":"2026-05-14T01:11:02.5865825+08:00"},{"id":272,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"a3cbaf21-03e0-4bc6-8740-4771f76373d6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e a3cbaf21-03e0-4bc6-8740-4771f76373d6","gmt_create":"2026-05-14T01:11:02.5865825+08:00","gmt_modified":"2026-05-14T01:11:02.5865825+08:00"},{"id":273,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e 6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","gmt_create":"2026-05-14T01:11:02.5865825+08:00","gmt_modified":"2026-05-14T01:11:02.5865825+08:00"},{"id":274,"source_id":"4a149bfb-4024-46af-836c-eab112dae4a0","target_id":"d040a1f2-def0-4aba-a1a5-0a76c492d230","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4a149bfb-4024-46af-836c-eab112dae4a0 -\u003e d040a1f2-def0-4aba-a1a5-0a76c492d230","gmt_create":"2026-05-14T01:11:02.5880953+08:00","gmt_modified":"2026-05-14T01:11:02.5880953+08:00"},{"id":275,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"56de08f4-709d-4c92-9409-74bc670beedc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e 56de08f4-709d-4c92-9409-74bc670beedc","gmt_create":"2026-05-14T01:11:02.5886096+08:00","gmt_modified":"2026-05-14T01:11:02.5886096+08:00"},{"id":276,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"82e08f95-791e-4271-93ff-4ad488cb8bc9","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e 82e08f95-791e-4271-93ff-4ad488cb8bc9","gmt_create":"2026-05-14T01:11:02.5891399+08:00","gmt_modified":"2026-05-14T01:11:02.5891399+08:00"},{"id":277,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"8b0b07ca-b297-4f1b-aa66-6a8551dd11ba","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e 8b0b07ca-b297-4f1b-aa66-6a8551dd11ba","gmt_create":"2026-05-14T01:11:02.5891399+08:00","gmt_modified":"2026-05-14T01:11:02.5891399+08:00"},{"id":278,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"d1753a3b-6a93-42a6-9d31-428b7b3b07af","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e d1753a3b-6a93-42a6-9d31-428b7b3b07af","gmt_create":"2026-05-14T01:11:02.5891399+08:00","gmt_modified":"2026-05-14T01:11:02.5891399+08:00"},{"id":279,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"48b89bbb-0a77-433d-b4a8-bf18035f8630","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e 48b89bbb-0a77-433d-b4a8-bf18035f8630","gmt_create":"2026-05-14T01:11:02.5906545+08:00","gmt_modified":"2026-05-14T01:11:02.5906545+08:00"},{"id":280,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"45888154-69ce-42bd-9323-99016db91888","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e 45888154-69ce-42bd-9323-99016db91888","gmt_create":"2026-05-14T01:11:02.5906545+08:00","gmt_modified":"2026-05-14T01:11:02.5906545+08:00"},{"id":281,"source_id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","target_id":"04c8f019-dfd6-481b-8fa6-a3b9f1f8d3a3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b393a8f7-d2f0-488e-8df0-2bf0ac031b7c -\u003e 04c8f019-dfd6-481b-8fa6-a3b9f1f8d3a3","gmt_create":"2026-05-14T01:11:02.5906545+08:00","gmt_modified":"2026-05-14T01:11:02.5906545+08:00"},{"id":282,"source_id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","target_id":"049079c2-2bb1-414c-938f-41d56a112a05","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b314bb6e-d0a1-418c-81d3-13ebdd91e32c -\u003e 049079c2-2bb1-414c-938f-41d56a112a05","gmt_create":"2026-05-14T01:11:02.5921791+08:00","gmt_modified":"2026-05-14T01:11:02.5921791+08:00"},{"id":283,"source_id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","target_id":"0aba6a93-ea1a-4e65-8c80-ab315d656e66","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b314bb6e-d0a1-418c-81d3-13ebdd91e32c -\u003e 0aba6a93-ea1a-4e65-8c80-ab315d656e66","gmt_create":"2026-05-14T01:11:02.5927011+08:00","gmt_modified":"2026-05-14T01:11:02.5927011+08:00"},{"id":284,"source_id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","target_id":"e7a98f62-ec4e-48ec-981d-caa4f11c2351","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b314bb6e-d0a1-418c-81d3-13ebdd91e32c -\u003e e7a98f62-ec4e-48ec-981d-caa4f11c2351","gmt_create":"2026-05-14T01:11:02.5932129+08:00","gmt_modified":"2026-05-14T01:11:02.5932129+08:00"},{"id":285,"source_id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","target_id":"09437497-d787-4c14-8ae6-91dfa5f3d174","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b314bb6e-d0a1-418c-81d3-13ebdd91e32c -\u003e 09437497-d787-4c14-8ae6-91dfa5f3d174","gmt_create":"2026-05-14T01:11:02.5937408+08:00","gmt_modified":"2026-05-14T01:11:02.5937408+08:00"},{"id":286,"source_id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","target_id":"544a286e-22a9-49fb-b1a2-2d6696a0a734","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b314bb6e-d0a1-418c-81d3-13ebdd91e32c -\u003e 544a286e-22a9-49fb-b1a2-2d6696a0a734","gmt_create":"2026-05-14T01:11:02.5942498+08:00","gmt_modified":"2026-05-14T01:11:02.5942498+08:00"},{"id":287,"source_id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","target_id":"b6f29416-1cdd-4da2-8581-2d00326d4619","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b314bb6e-d0a1-418c-81d3-13ebdd91e32c -\u003e b6f29416-1cdd-4da2-8581-2d00326d4619","gmt_create":"2026-05-14T01:11:02.5947729+08:00","gmt_modified":"2026-05-14T01:11:02.5947729+08:00"},{"id":288,"source_id":"62e1f4ce-1906-4e75-8694-15e41a0d1582","target_id":"2f922543-bf0f-47a5-b9b1-a5d2bfaebb27","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 62e1f4ce-1906-4e75-8694-15e41a0d1582 -\u003e 2f922543-bf0f-47a5-b9b1-a5d2bfaebb27","gmt_create":"2026-05-14T01:11:02.5952961+08:00","gmt_modified":"2026-05-14T01:11:02.5952961+08:00"},{"id":289,"source_id":"62e1f4ce-1906-4e75-8694-15e41a0d1582","target_id":"55a41c65-03b8-4d94-b389-eda79aa9d766","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 62e1f4ce-1906-4e75-8694-15e41a0d1582 -\u003e 55a41c65-03b8-4d94-b389-eda79aa9d766","gmt_create":"2026-05-14T01:11:02.596354+08:00","gmt_modified":"2026-05-14T01:11:02.596354+08:00"},{"id":290,"source_id":"62e1f4ce-1906-4e75-8694-15e41a0d1582","target_id":"7850bff3-e204-45cf-bedc-bef42da5022e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 62e1f4ce-1906-4e75-8694-15e41a0d1582 -\u003e 7850bff3-e204-45cf-bedc-bef42da5022e","gmt_create":"2026-05-14T01:11:02.5968916+08:00","gmt_modified":"2026-05-14T01:11:02.5968916+08:00"},{"id":291,"source_id":"62e1f4ce-1906-4e75-8694-15e41a0d1582","target_id":"6e26121a-8cb1-4686-84db-d34678a3d9d4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 62e1f4ce-1906-4e75-8694-15e41a0d1582 -\u003e 6e26121a-8cb1-4686-84db-d34678a3d9d4","gmt_create":"2026-05-14T01:11:02.5974047+08:00","gmt_modified":"2026-05-14T01:11:02.5974047+08:00"},{"id":292,"source_id":"62e1f4ce-1906-4e75-8694-15e41a0d1582","target_id":"99b26776-e32a-4101-807d-d17d0ed4a4c8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 62e1f4ce-1906-4e75-8694-15e41a0d1582 -\u003e 99b26776-e32a-4101-807d-d17d0ed4a4c8","gmt_create":"2026-05-14T01:11:02.5981265+08:00","gmt_modified":"2026-05-14T01:11:02.5981265+08:00"},{"id":293,"source_id":"14358845-360e-4029-8007-ffd48f387987","target_id":"48536b5c-d4d0-4075-9414-caa4d92a7ce6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 14358845-360e-4029-8007-ffd48f387987 -\u003e 48536b5c-d4d0-4075-9414-caa4d92a7ce6","gmt_create":"2026-05-14T01:11:02.5986434+08:00","gmt_modified":"2026-05-14T01:11:02.5986434+08:00"},{"id":294,"source_id":"14358845-360e-4029-8007-ffd48f387987","target_id":"46adac19-7183-4187-822b-47ff2eb0e88c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 14358845-360e-4029-8007-ffd48f387987 -\u003e 46adac19-7183-4187-822b-47ff2eb0e88c","gmt_create":"2026-05-14T01:11:02.5986434+08:00","gmt_modified":"2026-05-14T01:11:02.5986434+08:00"},{"id":295,"source_id":"14358845-360e-4029-8007-ffd48f387987","target_id":"4b7db111-847c-4ca8-855a-ebe4c386b0c0","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 14358845-360e-4029-8007-ffd48f387987 -\u003e 4b7db111-847c-4ca8-855a-ebe4c386b0c0","gmt_create":"2026-05-14T01:11:02.5991814+08:00","gmt_modified":"2026-05-14T01:11:02.5991814+08:00"},{"id":296,"source_id":"14358845-360e-4029-8007-ffd48f387987","target_id":"af02acd3-9c63-473d-a629-9546126c5e0f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 14358845-360e-4029-8007-ffd48f387987 -\u003e af02acd3-9c63-473d-a629-9546126c5e0f","gmt_create":"2026-05-14T01:11:02.5996916+08:00","gmt_modified":"2026-05-14T01:11:02.5996916+08:00"},{"id":297,"source_id":"14358845-360e-4029-8007-ffd48f387987","target_id":"7e94d847-379b-4c5d-9716-146513b1500d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 14358845-360e-4029-8007-ffd48f387987 -\u003e 7e94d847-379b-4c5d-9716-146513b1500d","gmt_create":"2026-05-14T01:11:02.6002295+08:00","gmt_modified":"2026-05-14T01:11:02.6002295+08:00"},{"id":298,"source_id":"14358845-360e-4029-8007-ffd48f387987","target_id":"a3d3a4e3-f6ef-4200-8ecb-586694a8b75b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 14358845-360e-4029-8007-ffd48f387987 -\u003e a3d3a4e3-f6ef-4200-8ecb-586694a8b75b","gmt_create":"2026-05-14T01:11:02.6007519+08:00","gmt_modified":"2026-05-14T01:11:02.6007519+08:00"},{"id":299,"source_id":"03e20955-ce46-4245-b5b7-84f1d226e799","target_id":"d2182420-56d2-4167-8304-a94f0a605f64","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03e20955-ce46-4245-b5b7-84f1d226e799 -\u003e d2182420-56d2-4167-8304-a94f0a605f64","gmt_create":"2026-05-14T01:11:02.6007519+08:00","gmt_modified":"2026-05-14T01:11:02.6007519+08:00"},{"id":300,"source_id":"03e20955-ce46-4245-b5b7-84f1d226e799","target_id":"e8d19dd5-b9f3-4b25-b955-449963fa4555","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03e20955-ce46-4245-b5b7-84f1d226e799 -\u003e e8d19dd5-b9f3-4b25-b955-449963fa4555","gmt_create":"2026-05-14T01:11:02.6018033+08:00","gmt_modified":"2026-05-14T01:11:02.6018033+08:00"},{"id":301,"source_id":"03e20955-ce46-4245-b5b7-84f1d226e799","target_id":"c725afe7-f16e-4163-944c-c02686bd23ef","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03e20955-ce46-4245-b5b7-84f1d226e799 -\u003e c725afe7-f16e-4163-944c-c02686bd23ef","gmt_create":"2026-05-14T01:11:02.6018033+08:00","gmt_modified":"2026-05-14T01:11:02.6018033+08:00"},{"id":302,"source_id":"03e20955-ce46-4245-b5b7-84f1d226e799","target_id":"9f6d6c8a-c17f-4ff8-ade5-c42ec1d49afb","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03e20955-ce46-4245-b5b7-84f1d226e799 -\u003e 9f6d6c8a-c17f-4ff8-ade5-c42ec1d49afb","gmt_create":"2026-05-14T01:11:02.6023347+08:00","gmt_modified":"2026-05-14T01:11:02.6023347+08:00"},{"id":303,"source_id":"03e20955-ce46-4245-b5b7-84f1d226e799","target_id":"0b1c1ce6-cb10-44bc-b508-9a6db90ae167","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03e20955-ce46-4245-b5b7-84f1d226e799 -\u003e 0b1c1ce6-cb10-44bc-b508-9a6db90ae167","gmt_create":"2026-05-14T01:11:02.6028495+08:00","gmt_modified":"2026-05-14T01:11:02.6028495+08:00"},{"id":304,"source_id":"b4223fac-95b7-40c6-b0e2-2285bacfd216","target_id":"ecceb5e1-76e4-44f5-a012-d166276d1f80","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b4223fac-95b7-40c6-b0e2-2285bacfd216 -\u003e ecceb5e1-76e4-44f5-a012-d166276d1f80","gmt_create":"2026-05-14T01:11:02.6028495+08:00","gmt_modified":"2026-05-14T01:11:02.6028495+08:00"},{"id":305,"source_id":"b4223fac-95b7-40c6-b0e2-2285bacfd216","target_id":"f8e5f7bf-536c-4471-9247-713b9bae6f28","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b4223fac-95b7-40c6-b0e2-2285bacfd216 -\u003e f8e5f7bf-536c-4471-9247-713b9bae6f28","gmt_create":"2026-05-14T01:11:02.6033811+08:00","gmt_modified":"2026-05-14T01:11:02.6033811+08:00"},{"id":306,"source_id":"b4223fac-95b7-40c6-b0e2-2285bacfd216","target_id":"1a8f88c4-5ad4-4665-b4fb-a26d69cde0b2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b4223fac-95b7-40c6-b0e2-2285bacfd216 -\u003e 1a8f88c4-5ad4-4665-b4fb-a26d69cde0b2","gmt_create":"2026-05-14T01:11:02.6038986+08:00","gmt_modified":"2026-05-14T01:11:02.6038986+08:00"},{"id":307,"source_id":"b4223fac-95b7-40c6-b0e2-2285bacfd216","target_id":"8750cd90-0cf8-43e2-b2ce-5a5a8f52b29e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b4223fac-95b7-40c6-b0e2-2285bacfd216 -\u003e 8750cd90-0cf8-43e2-b2ce-5a5a8f52b29e","gmt_create":"2026-05-14T01:11:02.6038986+08:00","gmt_modified":"2026-05-14T01:11:02.6038986+08:00"},{"id":308,"source_id":"b4223fac-95b7-40c6-b0e2-2285bacfd216","target_id":"7ebe0630-9b6f-4081-aea8-8fc490fb30e4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b4223fac-95b7-40c6-b0e2-2285bacfd216 -\u003e 7ebe0630-9b6f-4081-aea8-8fc490fb30e4","gmt_create":"2026-05-14T01:11:02.6044345+08:00","gmt_modified":"2026-05-14T01:11:02.6044345+08:00"},{"id":309,"source_id":"5e70b01c-bef1-4792-b56c-05af73088b76","target_id":"56dccf90-623c-4437-8da3-52558ed09ad4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5e70b01c-bef1-4792-b56c-05af73088b76 -\u003e 56dccf90-623c-4437-8da3-52558ed09ad4","gmt_create":"2026-05-14T01:11:02.6044345+08:00","gmt_modified":"2026-05-14T01:11:02.6044345+08:00"},{"id":310,"source_id":"5e70b01c-bef1-4792-b56c-05af73088b76","target_id":"9a7a36bf-af3c-4b4a-9bf4-f1c7945caceb","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5e70b01c-bef1-4792-b56c-05af73088b76 -\u003e 9a7a36bf-af3c-4b4a-9bf4-f1c7945caceb","gmt_create":"2026-05-14T01:11:02.6049466+08:00","gmt_modified":"2026-05-14T01:11:02.6049466+08:00"},{"id":311,"source_id":"5e70b01c-bef1-4792-b56c-05af73088b76","target_id":"10a25ee5-f7d0-4c06-85ac-bb2a549eebef","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5e70b01c-bef1-4792-b56c-05af73088b76 -\u003e 10a25ee5-f7d0-4c06-85ac-bb2a549eebef","gmt_create":"2026-05-14T01:11:02.6054732+08:00","gmt_modified":"2026-05-14T01:11:02.6054732+08:00"},{"id":312,"source_id":"5e70b01c-bef1-4792-b56c-05af73088b76","target_id":"5bca4d3d-47e1-48a7-8b31-8a6a7dc92bbc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5e70b01c-bef1-4792-b56c-05af73088b76 -\u003e 5bca4d3d-47e1-48a7-8b31-8a6a7dc92bbc","gmt_create":"2026-05-14T01:11:02.6054732+08:00","gmt_modified":"2026-05-14T01:11:02.6054732+08:00"},{"id":313,"source_id":"5e70b01c-bef1-4792-b56c-05af73088b76","target_id":"b65b281b-72f4-488c-9d20-7759ebdc6288","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5e70b01c-bef1-4792-b56c-05af73088b76 -\u003e b65b281b-72f4-488c-9d20-7759ebdc6288","gmt_create":"2026-05-14T01:11:02.6059893+08:00","gmt_modified":"2026-05-14T01:11:02.6059893+08:00"},{"id":314,"source_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","target_id":"283f7b48-b34d-40bd-97f1-cf7791e462e9","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8e3ecf95-b320-4ffc-abda-d064f9342d72 -\u003e 283f7b48-b34d-40bd-97f1-cf7791e462e9","gmt_create":"2026-05-14T01:11:02.6075609+08:00","gmt_modified":"2026-05-14T01:11:02.6075609+08:00"},{"id":315,"source_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","target_id":"6c25634b-abe2-4ebf-8b8b-0d5a92b2460c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8e3ecf95-b320-4ffc-abda-d064f9342d72 -\u003e 6c25634b-abe2-4ebf-8b8b-0d5a92b2460c","gmt_create":"2026-05-14T01:11:02.6080773+08:00","gmt_modified":"2026-05-14T01:11:02.6080773+08:00"},{"id":316,"source_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","target_id":"6ae83620-3e71-4623-8698-3eb9183ccebe","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8e3ecf95-b320-4ffc-abda-d064f9342d72 -\u003e 6ae83620-3e71-4623-8698-3eb9183ccebe","gmt_create":"2026-05-14T01:11:02.6080773+08:00","gmt_modified":"2026-05-14T01:11:02.6080773+08:00"},{"id":317,"source_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","target_id":"555eec22-9a5e-453c-a87c-d544067c7426","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8e3ecf95-b320-4ffc-abda-d064f9342d72 -\u003e 555eec22-9a5e-453c-a87c-d544067c7426","gmt_create":"2026-05-14T01:11:02.6085874+08:00","gmt_modified":"2026-05-14T01:11:02.6085874+08:00"},{"id":318,"source_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","target_id":"472bb482-2a45-4c2b-951d-54a2996f2bb1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8e3ecf95-b320-4ffc-abda-d064f9342d72 -\u003e 472bb482-2a45-4c2b-951d-54a2996f2bb1","gmt_create":"2026-05-14T01:11:02.6091027+08:00","gmt_modified":"2026-05-14T01:11:02.6091027+08:00"},{"id":319,"source_id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","target_id":"07bad4de-510b-401f-8e57-384c12446b8e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8e3ecf95-b320-4ffc-abda-d064f9342d72 -\u003e 07bad4de-510b-401f-8e57-384c12446b8e","gmt_create":"2026-05-14T01:11:02.6091027+08:00","gmt_modified":"2026-05-14T01:11:02.6091027+08:00"},{"id":320,"source_id":"82e08f95-791e-4271-93ff-4ad488cb8bc9","target_id":"d268ec7e-408b-4c2b-b629-4d277bd2b5b5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 82e08f95-791e-4271-93ff-4ad488cb8bc9 -\u003e d268ec7e-408b-4c2b-b629-4d277bd2b5b5","gmt_create":"2026-05-14T01:11:02.6101596+08:00","gmt_modified":"2026-05-14T01:11:02.6101596+08:00"},{"id":321,"source_id":"82e08f95-791e-4271-93ff-4ad488cb8bc9","target_id":"d5e6cc3d-9e71-4410-95fb-c79a521986c6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 82e08f95-791e-4271-93ff-4ad488cb8bc9 -\u003e d5e6cc3d-9e71-4410-95fb-c79a521986c6","gmt_create":"2026-05-14T01:11:02.6101596+08:00","gmt_modified":"2026-05-14T01:11:02.6101596+08:00"},{"id":322,"source_id":"82e08f95-791e-4271-93ff-4ad488cb8bc9","target_id":"16bed754-65b0-4134-b2e9-30754b4a7ca2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 82e08f95-791e-4271-93ff-4ad488cb8bc9 -\u003e 16bed754-65b0-4134-b2e9-30754b4a7ca2","gmt_create":"2026-05-14T01:11:02.6107016+08:00","gmt_modified":"2026-05-14T01:11:02.6107016+08:00"},{"id":323,"source_id":"82e08f95-791e-4271-93ff-4ad488cb8bc9","target_id":"337d7a4e-c681-492d-9a59-bc33458187f3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 82e08f95-791e-4271-93ff-4ad488cb8bc9 -\u003e 337d7a4e-c681-492d-9a59-bc33458187f3","gmt_create":"2026-05-14T01:11:02.6314911+08:00","gmt_modified":"2026-05-14T01:11:02.6314911+08:00"},{"id":324,"source_id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","target_id":"37dec110-7b7e-43f7-9d6f-911fa9a5c534","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d2354e2-730e-49b4-81bb-0a162d0691c9 -\u003e 37dec110-7b7e-43f7-9d6f-911fa9a5c534","gmt_create":"2026-05-14T01:11:02.6338089+08:00","gmt_modified":"2026-05-14T01:11:02.6338089+08:00"},{"id":325,"source_id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","target_id":"e5b8f805-8e7c-4661-b906-52eaf65e7214","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d2354e2-730e-49b4-81bb-0a162d0691c9 -\u003e e5b8f805-8e7c-4661-b906-52eaf65e7214","gmt_create":"2026-05-14T01:11:02.6343232+08:00","gmt_modified":"2026-05-14T01:11:02.6343232+08:00"},{"id":326,"source_id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","target_id":"80852cad-96f6-4ae3-8706-542b9704f60b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d2354e2-730e-49b4-81bb-0a162d0691c9 -\u003e 80852cad-96f6-4ae3-8706-542b9704f60b","gmt_create":"2026-05-14T01:11:02.6348532+08:00","gmt_modified":"2026-05-14T01:11:02.6348532+08:00"},{"id":327,"source_id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","target_id":"a0db819c-77cd-456f-9a9e-abc9ec69ce5d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d2354e2-730e-49b4-81bb-0a162d0691c9 -\u003e a0db819c-77cd-456f-9a9e-abc9ec69ce5d","gmt_create":"2026-05-14T01:11:02.6348532+08:00","gmt_modified":"2026-05-14T01:11:02.6348532+08:00"},{"id":328,"source_id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","target_id":"c5f7db68-d6c1-4368-b68d-6ad77ad9e6ad","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d2354e2-730e-49b4-81bb-0a162d0691c9 -\u003e c5f7db68-d6c1-4368-b68d-6ad77ad9e6ad","gmt_create":"2026-05-14T01:11:02.6353649+08:00","gmt_modified":"2026-05-14T01:11:02.6353649+08:00"},{"id":329,"source_id":"39b6f533-499e-4660-bfa6-23941ca9b4cb","target_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 39b6f533-499e-4660-bfa6-23941ca9b4cb -\u003e 641b1bc4-98ed-49f1-80f7-7d31fc0b072d","gmt_create":"2026-05-14T01:11:02.6364016+08:00","gmt_modified":"2026-05-14T01:11:02.6364016+08:00"},{"id":330,"source_id":"39b6f533-499e-4660-bfa6-23941ca9b4cb","target_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 39b6f533-499e-4660-bfa6-23941ca9b4cb -\u003e 23c19089-3936-41dd-8dd3-1beca91f3f6d","gmt_create":"2026-05-14T01:11:02.6364016+08:00","gmt_modified":"2026-05-14T01:11:02.6364016+08:00"},{"id":331,"source_id":"39b6f533-499e-4660-bfa6-23941ca9b4cb","target_id":"e7ed5b5d-ef5f-4013-a3e8-d7f1f3b7745e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 39b6f533-499e-4660-bfa6-23941ca9b4cb -\u003e e7ed5b5d-ef5f-4013-a3e8-d7f1f3b7745e","gmt_create":"2026-05-14T01:11:02.6375575+08:00","gmt_modified":"2026-05-14T01:11:02.6375575+08:00"},{"id":332,"source_id":"39b6f533-499e-4660-bfa6-23941ca9b4cb","target_id":"eb8a0b9a-795e-4cb4-b27a-5a1f795992f7","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 39b6f533-499e-4660-bfa6-23941ca9b4cb -\u003e eb8a0b9a-795e-4cb4-b27a-5a1f795992f7","gmt_create":"2026-05-14T01:11:02.6380933+08:00","gmt_modified":"2026-05-14T01:11:02.6380933+08:00"},{"id":333,"source_id":"706faa7a-bb9f-4fa2-b8ac-d566742148c5","target_id":"299d22f7-9ffb-4c57-a9fa-8b932e4b75d4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 706faa7a-bb9f-4fa2-b8ac-d566742148c5 -\u003e 299d22f7-9ffb-4c57-a9fa-8b932e4b75d4","gmt_create":"2026-05-14T01:11:02.6386076+08:00","gmt_modified":"2026-05-14T01:11:02.6386076+08:00"},{"id":334,"source_id":"706faa7a-bb9f-4fa2-b8ac-d566742148c5","target_id":"f91a3bef-275c-4922-8d2c-3816a4cbe1a8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 706faa7a-bb9f-4fa2-b8ac-d566742148c5 -\u003e f91a3bef-275c-4922-8d2c-3816a4cbe1a8","gmt_create":"2026-05-14T01:11:02.639134+08:00","gmt_modified":"2026-05-14T01:11:02.639134+08:00"},{"id":335,"source_id":"706faa7a-bb9f-4fa2-b8ac-d566742148c5","target_id":"c7f89c59-bcd1-4c33-8f5d-9cdf6f387dde","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 706faa7a-bb9f-4fa2-b8ac-d566742148c5 -\u003e c7f89c59-bcd1-4c33-8f5d-9cdf6f387dde","gmt_create":"2026-05-14T01:11:02.6396524+08:00","gmt_modified":"2026-05-14T01:11:02.6396524+08:00"},{"id":336,"source_id":"706faa7a-bb9f-4fa2-b8ac-d566742148c5","target_id":"ac90e0c5-0e75-4103-be89-5809bc12ef30","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 706faa7a-bb9f-4fa2-b8ac-d566742148c5 -\u003e ac90e0c5-0e75-4103-be89-5809bc12ef30","gmt_create":"2026-05-14T01:11:02.6401871+08:00","gmt_modified":"2026-05-14T01:11:02.6401871+08:00"},{"id":337,"source_id":"8b0b07ca-b297-4f1b-aa66-6a8551dd11ba","target_id":"c072c612-ccba-4b2b-b8db-951b0fab83ab","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8b0b07ca-b297-4f1b-aa66-6a8551dd11ba -\u003e c072c612-ccba-4b2b-b8db-951b0fab83ab","gmt_create":"2026-05-14T01:11:02.6407084+08:00","gmt_modified":"2026-05-14T01:11:02.6407084+08:00"},{"id":338,"source_id":"8b0b07ca-b297-4f1b-aa66-6a8551dd11ba","target_id":"1c2f92f1-ce36-4662-983a-045a1ba2391f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8b0b07ca-b297-4f1b-aa66-6a8551dd11ba -\u003e 1c2f92f1-ce36-4662-983a-045a1ba2391f","gmt_create":"2026-05-14T01:11:02.6407084+08:00","gmt_modified":"2026-05-14T01:11:02.6407084+08:00"},{"id":339,"source_id":"8b0b07ca-b297-4f1b-aa66-6a8551dd11ba","target_id":"39141cc8-3a23-42a1-991b-3443d1672101","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 8b0b07ca-b297-4f1b-aa66-6a8551dd11ba -\u003e 39141cc8-3a23-42a1-991b-3443d1672101","gmt_create":"2026-05-14T01:11:02.641237+08:00","gmt_modified":"2026-05-14T01:11:02.641237+08:00"},{"id":340,"source_id":"e7a98f62-ec4e-48ec-981d-caa4f11c2351","target_id":"e2971b62-c863-484c-9ffa-6d0d7eec7e26","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e7a98f62-ec4e-48ec-981d-caa4f11c2351 -\u003e e2971b62-c863-484c-9ffa-6d0d7eec7e26","gmt_create":"2026-05-14T01:11:02.6417538+08:00","gmt_modified":"2026-05-14T01:11:02.6417538+08:00"},{"id":341,"source_id":"e7a98f62-ec4e-48ec-981d-caa4f11c2351","target_id":"b3fff1d3-2935-4bb2-a777-0d4e0d7c18c5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e7a98f62-ec4e-48ec-981d-caa4f11c2351 -\u003e b3fff1d3-2935-4bb2-a777-0d4e0d7c18c5","gmt_create":"2026-05-14T01:11:02.6417538+08:00","gmt_modified":"2026-05-14T01:11:02.6417538+08:00"},{"id":342,"source_id":"e7a98f62-ec4e-48ec-981d-caa4f11c2351","target_id":"c4af11e7-3d67-4b98-a906-40c8904b7216","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e7a98f62-ec4e-48ec-981d-caa4f11c2351 -\u003e c4af11e7-3d67-4b98-a906-40c8904b7216","gmt_create":"2026-05-14T01:11:02.6422854+08:00","gmt_modified":"2026-05-14T01:11:02.6422854+08:00"},{"id":343,"source_id":"d1753a3b-6a93-42a6-9d31-428b7b3b07af","target_id":"d715b540-4919-459b-ada5-49306fbedf8a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d1753a3b-6a93-42a6-9d31-428b7b3b07af -\u003e d715b540-4919-459b-ada5-49306fbedf8a","gmt_create":"2026-05-14T01:11:02.6433229+08:00","gmt_modified":"2026-05-14T01:11:02.6433229+08:00"},{"id":344,"source_id":"d1753a3b-6a93-42a6-9d31-428b7b3b07af","target_id":"749533e6-0fa8-4f41-a4e2-50f7db371716","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d1753a3b-6a93-42a6-9d31-428b7b3b07af -\u003e 749533e6-0fa8-4f41-a4e2-50f7db371716","gmt_create":"2026-05-14T01:11:02.6438332+08:00","gmt_modified":"2026-05-14T01:11:02.6438332+08:00"},{"id":345,"source_id":"d1753a3b-6a93-42a6-9d31-428b7b3b07af","target_id":"24e5a58c-1622-45bc-af85-713ed5b98261","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d1753a3b-6a93-42a6-9d31-428b7b3b07af -\u003e 24e5a58c-1622-45bc-af85-713ed5b98261","gmt_create":"2026-05-14T01:11:02.644517+08:00","gmt_modified":"2026-05-14T01:11:02.644517+08:00"},{"id":346,"source_id":"d1753a3b-6a93-42a6-9d31-428b7b3b07af","target_id":"4c798893-6c35-4813-b1bf-70c1fcadf1cc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d1753a3b-6a93-42a6-9d31-428b7b3b07af -\u003e 4c798893-6c35-4813-b1bf-70c1fcadf1cc","gmt_create":"2026-05-14T01:11:02.6450353+08:00","gmt_modified":"2026-05-14T01:11:02.6450353+08:00"},{"id":347,"source_id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","target_id":"e41a5a3e-983d-439e-9c91-c32272b5ace6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6fba9e57-5708-4dc6-a35f-40cdceccc6ab -\u003e e41a5a3e-983d-439e-9c91-c32272b5ace6","gmt_create":"2026-05-14T01:11:02.6460817+08:00","gmt_modified":"2026-05-14T01:11:02.6460817+08:00"},{"id":348,"source_id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","target_id":"fb4e4836-f3f1-4af4-a3d3-ad2bbcdba8d7","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6fba9e57-5708-4dc6-a35f-40cdceccc6ab -\u003e fb4e4836-f3f1-4af4-a3d3-ad2bbcdba8d7","gmt_create":"2026-05-14T01:11:02.6466218+08:00","gmt_modified":"2026-05-14T01:11:02.6466218+08:00"},{"id":349,"source_id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","target_id":"ef5c1ae4-0792-4c51-903a-7152dea4aa80","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6fba9e57-5708-4dc6-a35f-40cdceccc6ab -\u003e ef5c1ae4-0792-4c51-903a-7152dea4aa80","gmt_create":"2026-05-14T01:11:02.6471341+08:00","gmt_modified":"2026-05-14T01:11:02.6471341+08:00"},{"id":350,"source_id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","target_id":"3afcc987-9b67-4aab-b6a2-bd7cc0055508","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6fba9e57-5708-4dc6-a35f-40cdceccc6ab -\u003e 3afcc987-9b67-4aab-b6a2-bd7cc0055508","gmt_create":"2026-05-14T01:11:02.6476508+08:00","gmt_modified":"2026-05-14T01:11:02.6476508+08:00"},{"id":351,"source_id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","target_id":"c08371a1-5fef-4957-9bde-8f30030cdb3d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6fba9e57-5708-4dc6-a35f-40cdceccc6ab -\u003e c08371a1-5fef-4957-9bde-8f30030cdb3d","gmt_create":"2026-05-14T01:11:02.6476508+08:00","gmt_modified":"2026-05-14T01:11:02.6476508+08:00"},{"id":352,"source_id":"48b89bbb-0a77-433d-b4a8-bf18035f8630","target_id":"28024e10-8956-46f0-a49f-025e994ecac3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 48b89bbb-0a77-433d-b4a8-bf18035f8630 -\u003e 28024e10-8956-46f0-a49f-025e994ecac3","gmt_create":"2026-05-14T01:11:02.6486839+08:00","gmt_modified":"2026-05-14T01:11:02.6486839+08:00"},{"id":353,"source_id":"48b89bbb-0a77-433d-b4a8-bf18035f8630","target_id":"4175e765-6abb-444a-be1c-0d91638401bc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 48b89bbb-0a77-433d-b4a8-bf18035f8630 -\u003e 4175e765-6abb-444a-be1c-0d91638401bc","gmt_create":"2026-05-14T01:11:02.6492079+08:00","gmt_modified":"2026-05-14T01:11:02.6492079+08:00"},{"id":354,"source_id":"48b89bbb-0a77-433d-b4a8-bf18035f8630","target_id":"16e3e7cd-b409-4100-9a1e-644a304f1a65","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 48b89bbb-0a77-433d-b4a8-bf18035f8630 -\u003e 16e3e7cd-b409-4100-9a1e-644a304f1a65","gmt_create":"2026-05-14T01:11:02.6492079+08:00","gmt_modified":"2026-05-14T01:11:02.6492079+08:00"},{"id":355,"source_id":"45888154-69ce-42bd-9323-99016db91888","target_id":"a0a19e47-6ecb-43c1-828b-21eff2141db4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 45888154-69ce-42bd-9323-99016db91888 -\u003e a0a19e47-6ecb-43c1-828b-21eff2141db4","gmt_create":"2026-05-14T01:11:02.6508002+08:00","gmt_modified":"2026-05-14T01:11:02.6508002+08:00"},{"id":356,"source_id":"45888154-69ce-42bd-9323-99016db91888","target_id":"76e66878-da48-4c59-84cb-6d5f0457a397","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 45888154-69ce-42bd-9323-99016db91888 -\u003e 76e66878-da48-4c59-84cb-6d5f0457a397","gmt_create":"2026-05-14T01:11:02.6513144+08:00","gmt_modified":"2026-05-14T01:11:02.6513144+08:00"},{"id":357,"source_id":"45888154-69ce-42bd-9323-99016db91888","target_id":"17b9a4b3-6a1d-43e2-88ee-c3110af1fa99","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 45888154-69ce-42bd-9323-99016db91888 -\u003e 17b9a4b3-6a1d-43e2-88ee-c3110af1fa99","gmt_create":"2026-05-14T01:11:02.6513144+08:00","gmt_modified":"2026-05-14T01:11:02.6513144+08:00"},{"id":358,"source_id":"45888154-69ce-42bd-9323-99016db91888","target_id":"ee656366-dc46-42ff-ac43-ed58b22fb2dd","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 45888154-69ce-42bd-9323-99016db91888 -\u003e ee656366-dc46-42ff-ac43-ed58b22fb2dd","gmt_create":"2026-05-14T01:11:02.6523558+08:00","gmt_modified":"2026-05-14T01:11:02.6523558+08:00"},{"id":359,"source_id":"45888154-69ce-42bd-9323-99016db91888","target_id":"a652cae2-2087-4b80-8645-97c1ddf02fb3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 45888154-69ce-42bd-9323-99016db91888 -\u003e a652cae2-2087-4b80-8645-97c1ddf02fb3","gmt_create":"2026-05-14T01:11:02.6523558+08:00","gmt_modified":"2026-05-14T01:11:02.6523558+08:00"},{"id":360,"source_id":"a3cbaf21-03e0-4bc6-8740-4771f76373d6","target_id":"3ee3e5cf-6e64-42f8-9af0-ec5664f76801","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a3cbaf21-03e0-4bc6-8740-4771f76373d6 -\u003e 3ee3e5cf-6e64-42f8-9af0-ec5664f76801","gmt_create":"2026-05-14T01:11:02.6528822+08:00","gmt_modified":"2026-05-14T01:11:02.6528822+08:00"},{"id":361,"source_id":"a3cbaf21-03e0-4bc6-8740-4771f76373d6","target_id":"f6d2ad4b-1451-42b8-a736-1e374517f586","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a3cbaf21-03e0-4bc6-8740-4771f76373d6 -\u003e f6d2ad4b-1451-42b8-a736-1e374517f586","gmt_create":"2026-05-14T01:11:02.653396+08:00","gmt_modified":"2026-05-14T01:11:02.653396+08:00"},{"id":362,"source_id":"a3cbaf21-03e0-4bc6-8740-4771f76373d6","target_id":"60313d15-6c2b-4761-a9b2-3a23b18e95a1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a3cbaf21-03e0-4bc6-8740-4771f76373d6 -\u003e 60313d15-6c2b-4761-a9b2-3a23b18e95a1","gmt_create":"2026-05-14T01:11:02.653934+08:00","gmt_modified":"2026-05-14T01:11:02.653934+08:00"},{"id":363,"source_id":"a3cbaf21-03e0-4bc6-8740-4771f76373d6","target_id":"0adecb3c-73d7-422f-80d7-986f30b73af0","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a3cbaf21-03e0-4bc6-8740-4771f76373d6 -\u003e 0adecb3c-73d7-422f-80d7-986f30b73af0","gmt_create":"2026-05-14T01:11:02.6544489+08:00","gmt_modified":"2026-05-14T01:11:02.6544489+08:00"},{"id":364,"source_id":"6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","target_id":"ae181f5a-165b-4ac9-b0fd-fc80f62927c0","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2 -\u003e ae181f5a-165b-4ac9-b0fd-fc80f62927c0","gmt_create":"2026-05-14T01:11:02.6549799+08:00","gmt_modified":"2026-05-14T01:11:02.6549799+08:00"},{"id":365,"source_id":"6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","target_id":"15ef82d6-c4c1-4aeb-9821-bc0c8a0936b6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2 -\u003e 15ef82d6-c4c1-4aeb-9821-bc0c8a0936b6","gmt_create":"2026-05-14T01:11:02.6554934+08:00","gmt_modified":"2026-05-14T01:11:02.6554934+08:00"},{"id":366,"source_id":"6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","target_id":"cd1791ae-dc24-4268-919d-a6d399a2acac","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2 -\u003e cd1791ae-dc24-4268-919d-a6d399a2acac","gmt_create":"2026-05-14T01:11:02.6560229+08:00","gmt_modified":"2026-05-14T01:11:02.6560229+08:00"},{"id":367,"source_id":"6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","target_id":"a9270ae5-6644-4417-afb1-a2be1c1ed430","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2 -\u003e a9270ae5-6644-4417-afb1-a2be1c1ed430","gmt_create":"2026-05-14T01:11:02.6565357+08:00","gmt_modified":"2026-05-14T01:11:02.6565357+08:00"},{"id":368,"source_id":"d040a1f2-def0-4aba-a1a5-0a76c492d230","target_id":"fba1882a-9324-411f-b26c-f4fac959500f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d040a1f2-def0-4aba-a1a5-0a76c492d230 -\u003e fba1882a-9324-411f-b26c-f4fac959500f","gmt_create":"2026-05-14T01:11:02.6570637+08:00","gmt_modified":"2026-05-14T01:11:02.6570637+08:00"},{"id":369,"source_id":"d040a1f2-def0-4aba-a1a5-0a76c492d230","target_id":"e28cfc85-e133-4b8d-ab61-1063089c76e3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d040a1f2-def0-4aba-a1a5-0a76c492d230 -\u003e e28cfc85-e133-4b8d-ab61-1063089c76e3","gmt_create":"2026-05-14T01:11:02.6575779+08:00","gmt_modified":"2026-05-14T01:11:02.6575779+08:00"},{"id":370,"source_id":"d040a1f2-def0-4aba-a1a5-0a76c492d230","target_id":"3d63bd25-a266-4e2e-baa6-abe8de22e145","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d040a1f2-def0-4aba-a1a5-0a76c492d230 -\u003e 3d63bd25-a266-4e2e-baa6-abe8de22e145","gmt_create":"2026-05-14T01:11:02.6580959+08:00","gmt_modified":"2026-05-14T01:11:02.6580959+08:00"},{"id":371,"source_id":"d040a1f2-def0-4aba-a1a5-0a76c492d230","target_id":"6d72b0cb-4100-4d8b-8013-0f84df7693f9","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d040a1f2-def0-4aba-a1a5-0a76c492d230 -\u003e 6d72b0cb-4100-4d8b-8013-0f84df7693f9","gmt_create":"2026-05-14T01:11:02.6586148+08:00","gmt_modified":"2026-05-14T01:11:02.6586148+08:00"},{"id":372,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"5bdb81ed-1da3-46a9-bb95-f7e3a2badce3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e 5bdb81ed-1da3-46a9-bb95-f7e3a2badce3","gmt_create":"2026-05-14T01:11:02.6592964+08:00","gmt_modified":"2026-05-14T01:11:02.6592964+08:00"},{"id":373,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"2bba9416-5340-47bb-83a7-3b0201d361f1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e 2bba9416-5340-47bb-83a7-3b0201d361f1","gmt_create":"2026-05-14T01:11:02.6598158+08:00","gmt_modified":"2026-05-14T01:11:02.6598158+08:00"},{"id":374,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"8bc72169-f710-4086-bc8d-d3c317b5dc26","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e 8bc72169-f710-4086-bc8d-d3c317b5dc26","gmt_create":"2026-05-14T01:11:02.6598158+08:00","gmt_modified":"2026-05-14T01:11:02.6598158+08:00"},{"id":375,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"6d046b78-031e-469a-8764-24d38d20de02","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e 6d046b78-031e-469a-8764-24d38d20de02","gmt_create":"2026-05-14T01:11:02.6603745+08:00","gmt_modified":"2026-05-14T01:11:02.6603745+08:00"},{"id":376,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"d425f06f-086e-4942-999e-dc9c1aa0e798","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e d425f06f-086e-4942-999e-dc9c1aa0e798","gmt_create":"2026-05-14T01:11:02.6608881+08:00","gmt_modified":"2026-05-14T01:11:02.6608881+08:00"},{"id":377,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"cb7aebf9-288e-4d1c-8b8b-2b3ac88ef305","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e cb7aebf9-288e-4d1c-8b8b-2b3ac88ef305","gmt_create":"2026-05-14T01:11:02.6619388+08:00","gmt_modified":"2026-05-14T01:11:02.6619388+08:00"},{"id":378,"source_id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","target_id":"e46a6d23-4cdb-4bad-acfa-ceb7972e8523","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 641b1bc4-98ed-49f1-80f7-7d31fc0b072d -\u003e e46a6d23-4cdb-4bad-acfa-ceb7972e8523","gmt_create":"2026-05-14T01:11:02.662468+08:00","gmt_modified":"2026-05-14T01:11:02.662468+08:00"},{"id":379,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"6522ac91-1c3b-4395-8774-36210aab8803","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e 6522ac91-1c3b-4395-8774-36210aab8803","gmt_create":"2026-05-14T01:11:02.6655721+08:00","gmt_modified":"2026-05-14T01:11:02.6655721+08:00"},{"id":380,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"b4e1a0a9-cdf3-49f1-8b87-c39af1b40581","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e b4e1a0a9-cdf3-49f1-8b87-c39af1b40581","gmt_create":"2026-05-14T01:11:02.6655721+08:00","gmt_modified":"2026-05-14T01:11:02.6655721+08:00"},{"id":381,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"c625eebc-629d-4fa6-b83c-51a2664ef179","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e c625eebc-629d-4fa6-b83c-51a2664ef179","gmt_create":"2026-05-14T01:11:02.6655721+08:00","gmt_modified":"2026-05-14T01:11:02.6655721+08:00"},{"id":382,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"201ac903-1235-4909-8958-fc6357781531","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e 201ac903-1235-4909-8958-fc6357781531","gmt_create":"2026-05-14T01:11:02.6671021+08:00","gmt_modified":"2026-05-14T01:11:02.6671021+08:00"},{"id":383,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"0d08f0e1-8770-4959-a18e-a5edaa7d3f91","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e 0d08f0e1-8770-4959-a18e-a5edaa7d3f91","gmt_create":"2026-05-14T01:11:02.6671021+08:00","gmt_modified":"2026-05-14T01:11:02.6671021+08:00"},{"id":384,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e dc8b894b-5b63-46c1-a630-82cbc66697f5","gmt_create":"2026-05-14T01:11:02.6671021+08:00","gmt_modified":"2026-05-14T01:11:02.6671021+08:00"},{"id":385,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"ed4691d6-720a-4ffd-84fe-595c0e726e01","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e ed4691d6-720a-4ffd-84fe-595c0e726e01","gmt_create":"2026-05-14T01:11:02.6671021+08:00","gmt_modified":"2026-05-14T01:11:02.6671021+08:00"},{"id":386,"source_id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","target_id":"894576bc-fab2-445c-9482-2f8e2bb5d7c0","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 23c19089-3936-41dd-8dd3-1beca91f3f6d -\u003e 894576bc-fab2-445c-9482-2f8e2bb5d7c0","gmt_create":"2026-05-14T01:11:02.6686202+08:00","gmt_modified":"2026-05-14T01:11:02.6686202+08:00"},{"id":387,"source_id":"e5b8f805-8e7c-4661-b906-52eaf65e7214","target_id":"aefeafab-e5d6-4c05-9d1d-55f011d69e02","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e5b8f805-8e7c-4661-b906-52eaf65e7214 -\u003e aefeafab-e5d6-4c05-9d1d-55f011d69e02","gmt_create":"2026-05-14T01:11:02.6686202+08:00","gmt_modified":"2026-05-14T01:11:02.6686202+08:00"},{"id":388,"source_id":"e5b8f805-8e7c-4661-b906-52eaf65e7214","target_id":"1a22b171-55d8-464c-832d-faf6c71ba923","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e5b8f805-8e7c-4661-b906-52eaf65e7214 -\u003e 1a22b171-55d8-464c-832d-faf6c71ba923","gmt_create":"2026-05-14T01:11:02.6701518+08:00","gmt_modified":"2026-05-14T01:11:02.6701518+08:00"},{"id":389,"source_id":"e5b8f805-8e7c-4661-b906-52eaf65e7214","target_id":"07998d32-0d58-4d7c-a395-6122b216c99f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e5b8f805-8e7c-4661-b906-52eaf65e7214 -\u003e 07998d32-0d58-4d7c-a395-6122b216c99f","gmt_create":"2026-05-14T01:11:02.6701518+08:00","gmt_modified":"2026-05-14T01:11:02.6701518+08:00"},{"id":390,"source_id":"e5b8f805-8e7c-4661-b906-52eaf65e7214","target_id":"c83e4b2f-4d6d-4933-b522-e44413b3490b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e5b8f805-8e7c-4661-b906-52eaf65e7214 -\u003e c83e4b2f-4d6d-4933-b522-e44413b3490b","gmt_create":"2026-05-14T01:11:02.6701518+08:00","gmt_modified":"2026-05-14T01:11:02.6701518+08:00"},{"id":391,"source_id":"80852cad-96f6-4ae3-8706-542b9704f60b","target_id":"86999a89-9465-4def-85fb-b26a4394b428","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 80852cad-96f6-4ae3-8706-542b9704f60b -\u003e 86999a89-9465-4def-85fb-b26a4394b428","gmt_create":"2026-05-14T01:11:02.6732289+08:00","gmt_modified":"2026-05-14T01:11:02.6732289+08:00"},{"id":392,"source_id":"80852cad-96f6-4ae3-8706-542b9704f60b","target_id":"bb524a85-57f9-4531-8da6-b25b3d668d7a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 80852cad-96f6-4ae3-8706-542b9704f60b -\u003e bb524a85-57f9-4531-8da6-b25b3d668d7a","gmt_create":"2026-05-14T01:11:02.6732289+08:00","gmt_modified":"2026-05-14T01:11:02.6732289+08:00"},{"id":393,"source_id":"80852cad-96f6-4ae3-8706-542b9704f60b","target_id":"1477e586-b47d-4be1-8677-a42eabc8e04d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 80852cad-96f6-4ae3-8706-542b9704f60b -\u003e 1477e586-b47d-4be1-8677-a42eabc8e04d","gmt_create":"2026-05-14T01:11:02.6742375+08:00","gmt_modified":"2026-05-14T01:11:02.6742375+08:00"},{"id":394,"source_id":"80852cad-96f6-4ae3-8706-542b9704f60b","target_id":"87202d48-378c-4dd5-a284-32087be11148","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 80852cad-96f6-4ae3-8706-542b9704f60b -\u003e 87202d48-378c-4dd5-a284-32087be11148","gmt_create":"2026-05-14T01:11:02.674743+08:00","gmt_modified":"2026-05-14T01:11:02.674743+08:00"},{"id":395,"source_id":"555eec22-9a5e-453c-a87c-d544067c7426","target_id":"fd298945-40bd-4a6a-88e5-8e5b6bf27fd5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 555eec22-9a5e-453c-a87c-d544067c7426 -\u003e fd298945-40bd-4a6a-88e5-8e5b6bf27fd5","gmt_create":"2026-05-14T01:11:02.6762623+08:00","gmt_modified":"2026-05-14T01:11:02.6762623+08:00"},{"id":396,"source_id":"555eec22-9a5e-453c-a87c-d544067c7426","target_id":"ef4b6c8e-1cb5-4ca1-a14e-597533c29e4c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 555eec22-9a5e-453c-a87c-d544067c7426 -\u003e ef4b6c8e-1cb5-4ca1-a14e-597533c29e4c","gmt_create":"2026-05-14T01:11:02.6762623+08:00","gmt_modified":"2026-05-14T01:11:02.6762623+08:00"},{"id":397,"source_id":"555eec22-9a5e-453c-a87c-d544067c7426","target_id":"f116823f-2596-45e0-97b2-6bd787f6bd5f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 555eec22-9a5e-453c-a87c-d544067c7426 -\u003e f116823f-2596-45e0-97b2-6bd787f6bd5f","gmt_create":"2026-05-14T01:11:02.6762623+08:00","gmt_modified":"2026-05-14T01:11:02.6762623+08:00"},{"id":398,"source_id":"555eec22-9a5e-453c-a87c-d544067c7426","target_id":"478db980-8aea-4ffc-b031-8fdf41e0d57a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 555eec22-9a5e-453c-a87c-d544067c7426 -\u003e 478db980-8aea-4ffc-b031-8fdf41e0d57a","gmt_create":"2026-05-14T01:11:02.6762623+08:00","gmt_modified":"2026-05-14T01:11:02.6762623+08:00"},{"id":399,"source_id":"472bb482-2a45-4c2b-951d-54a2996f2bb1","target_id":"b9cb9816-f17c-4e4b-8446-6e94ba31412c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 472bb482-2a45-4c2b-951d-54a2996f2bb1 -\u003e b9cb9816-f17c-4e4b-8446-6e94ba31412c","gmt_create":"2026-05-14T01:11:02.6787912+08:00","gmt_modified":"2026-05-14T01:11:02.6787912+08:00"},{"id":400,"source_id":"472bb482-2a45-4c2b-951d-54a2996f2bb1","target_id":"6920f6a5-ed76-4135-8ccd-e75c12901c38","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 472bb482-2a45-4c2b-951d-54a2996f2bb1 -\u003e 6920f6a5-ed76-4135-8ccd-e75c12901c38","gmt_create":"2026-05-14T01:11:02.6787912+08:00","gmt_modified":"2026-05-14T01:11:02.6787912+08:00"},{"id":401,"source_id":"472bb482-2a45-4c2b-951d-54a2996f2bb1","target_id":"ec66ff29-af75-4b6b-9713-f87860599d7d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 472bb482-2a45-4c2b-951d-54a2996f2bb1 -\u003e ec66ff29-af75-4b6b-9713-f87860599d7d","gmt_create":"2026-05-14T01:11:02.6803616+08:00","gmt_modified":"2026-05-14T01:11:02.6803616+08:00"},{"id":402,"source_id":"07bad4de-510b-401f-8e57-384c12446b8e","target_id":"5ccf9df2-5c5e-4f50-b41b-8733a52f2cdd","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 07bad4de-510b-401f-8e57-384c12446b8e -\u003e 5ccf9df2-5c5e-4f50-b41b-8733a52f2cdd","gmt_create":"2026-05-14T01:11:02.6803616+08:00","gmt_modified":"2026-05-14T01:11:02.6803616+08:00"},{"id":403,"source_id":"07bad4de-510b-401f-8e57-384c12446b8e","target_id":"66f65528-6a2a-4f25-99fe-22e11b066bd5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 07bad4de-510b-401f-8e57-384c12446b8e -\u003e 66f65528-6a2a-4f25-99fe-22e11b066bd5","gmt_create":"2026-05-14T01:11:02.6818868+08:00","gmt_modified":"2026-05-14T01:11:02.6818868+08:00"},{"id":404,"source_id":"07bad4de-510b-401f-8e57-384c12446b8e","target_id":"c5f6cd84-09a7-4676-b31d-18fb4e6f781a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 07bad4de-510b-401f-8e57-384c12446b8e -\u003e c5f6cd84-09a7-4676-b31d-18fb4e6f781a","gmt_create":"2026-05-14T01:11:02.6818868+08:00","gmt_modified":"2026-05-14T01:11:02.6818868+08:00"},{"id":405,"source_id":"07bad4de-510b-401f-8e57-384c12446b8e","target_id":"6c97324b-0f0c-4f60-af1e-1efc6af0205d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 07bad4de-510b-401f-8e57-384c12446b8e -\u003e 6c97324b-0f0c-4f60-af1e-1efc6af0205d","gmt_create":"2026-05-14T01:11:02.6818868+08:00","gmt_modified":"2026-05-14T01:11:02.6818868+08:00"},{"id":406,"source_id":"2bba9416-5340-47bb-83a7-3b0201d361f1","target_id":"a52db64d-30c5-4697-91b1-0501f394ccc2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2bba9416-5340-47bb-83a7-3b0201d361f1 -\u003e a52db64d-30c5-4697-91b1-0501f394ccc2","gmt_create":"2026-05-14T01:11:02.6834062+08:00","gmt_modified":"2026-05-14T01:11:02.6834062+08:00"},{"id":407,"source_id":"2bba9416-5340-47bb-83a7-3b0201d361f1","target_id":"bb642620-a08a-4167-ad74-1fb87bdcf486","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2bba9416-5340-47bb-83a7-3b0201d361f1 -\u003e bb642620-a08a-4167-ad74-1fb87bdcf486","gmt_create":"2026-05-14T01:11:02.6834062+08:00","gmt_modified":"2026-05-14T01:11:02.6834062+08:00"},{"id":408,"source_id":"2bba9416-5340-47bb-83a7-3b0201d361f1","target_id":"6c3b8ffc-269c-4bc5-b519-31bf11a5efc8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2bba9416-5340-47bb-83a7-3b0201d361f1 -\u003e 6c3b8ffc-269c-4bc5-b519-31bf11a5efc8","gmt_create":"2026-05-14T01:11:02.6849337+08:00","gmt_modified":"2026-05-14T01:11:02.6849337+08:00"},{"id":409,"source_id":"2bba9416-5340-47bb-83a7-3b0201d361f1","target_id":"29026fc2-0610-4f4d-be1a-53f69bf03f4f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2bba9416-5340-47bb-83a7-3b0201d361f1 -\u003e 29026fc2-0610-4f4d-be1a-53f69bf03f4f","gmt_create":"2026-05-14T01:11:02.6849337+08:00","gmt_modified":"2026-05-14T01:11:02.6849337+08:00"},{"id":410,"source_id":"2bba9416-5340-47bb-83a7-3b0201d361f1","target_id":"a251107d-aa17-46f9-835b-01ce35dac1be","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2bba9416-5340-47bb-83a7-3b0201d361f1 -\u003e a251107d-aa17-46f9-835b-01ce35dac1be","gmt_create":"2026-05-14T01:11:02.6849337+08:00","gmt_modified":"2026-05-14T01:11:02.6849337+08:00"},{"id":411,"source_id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","target_id":"9c2949fe-0c33-4fb9-b810-53bb0a1d1fd8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dc8b894b-5b63-46c1-a630-82cbc66697f5 -\u003e 9c2949fe-0c33-4fb9-b810-53bb0a1d1fd8","gmt_create":"2026-05-14T01:11:02.6884707+08:00","gmt_modified":"2026-05-14T01:11:02.6884707+08:00"},{"id":412,"source_id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","target_id":"7d7b99b9-aafa-4512-b79b-eaff4f2cfed9","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dc8b894b-5b63-46c1-a630-82cbc66697f5 -\u003e 7d7b99b9-aafa-4512-b79b-eaff4f2cfed9","gmt_create":"2026-05-14T01:11:02.6889815+08:00","gmt_modified":"2026-05-14T01:11:02.6889815+08:00"},{"id":413,"source_id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","target_id":"cff9d368-8d53-4e29-afaf-54cdbba0f7ca","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dc8b894b-5b63-46c1-a630-82cbc66697f5 -\u003e cff9d368-8d53-4e29-afaf-54cdbba0f7ca","gmt_create":"2026-05-14T01:11:02.6897015+08:00","gmt_modified":"2026-05-14T01:11:02.6897015+08:00"},{"id":414,"source_id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","target_id":"cb538e72-d2df-4986-a555-a4b1be5d83c8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dc8b894b-5b63-46c1-a630-82cbc66697f5 -\u003e cb538e72-d2df-4986-a555-a4b1be5d83c8","gmt_create":"2026-05-14T01:11:02.6897015+08:00","gmt_modified":"2026-05-14T01:11:02.6897015+08:00"},{"id":415,"source_id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","target_id":"aa95fef1-f3ec-4d6f-ab5d-dff02d769d00","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dc8b894b-5b63-46c1-a630-82cbc66697f5 -\u003e aa95fef1-f3ec-4d6f-ab5d-dff02d769d00","gmt_create":"2026-05-14T01:11:02.6902245+08:00","gmt_modified":"2026-05-14T01:11:02.6902245+08:00"}],"wiki_catalogs":[{"id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"项目概述","description":"project-overview","prompt":"为AI有声书生成平台项目创建全面的概述内容。详细介绍项目的核心目标、主要功能特性和技术价值主张。解释项目作为内容创作者音频制作工具的定位,包括文本转音频、多种音色选择、参数调节、在线播放、历史管理和会员体系等核心功能。阐述项目的技术架构选择,包括前端采用uniapp+Vue3+TypeScript,后端采用Node.js+Koa.js+MongoDB,以及FFmpeg音频处理和阿里云TTS集成等关键技术决策。提供项目的发展历程、当前版本状态和未来发展规划。包含项目的优势分析、适用场景说明和用户价值体现。","progress_status":"completed","dependent_files":"README.md,package.json,server/package.json,my-uniapp-vue3/package.json","gmt_create":"2026-05-13T22:52:24.7092204+08:00","gmt_modified":"2026-05-13T22:57:55.6767925+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn/+8FdvqrJ62ianMLvZj02elJtBUgH0Ns0veIx1WPtM9wwkxI+/XAqHLxJLlHB8wV7ojrH0+b4JMz5OewwhBN1GJOluPw4Iq9D0QjTTbLqCrIgklpSXoSINqDQkrwISapSLMpVGFGxDPPj05St4v9t7A2SYWs2mfwPl+RNCsvKu0/56sgpsoW9NLWG3Qxoq0cpEgbWpaEKD/0BPGP4VmP5d7L6Oxje1gDMRdispoFpHy9hH4FLLK3z+UhIdzO+8EL7J3VdYyBCFfryiTjBPi//PdD6hnOyWTFPlJMuCaKm5aaVqT682sM5q7UzHFtbTjLC5HzxDNkGtSB7DQ8K1irZWVmXXa2JrgFeLKhFOBf02E57R+EeNa4gSWCEkF8UYX062rT7/qIOJRyiqP8j/k3f4bK8eOzNHaJizrM3HwnNdg7kttp8ljjHeDcvw/o9QsOGVzhDJVlPw4QkNAfyAnMmToBKDZEGjCa24XyalWQ4Zrczqd2GJnR3iHy7GffTpIMy9Je9VIppQLaKqHKuHk9TKiRIkIa2c2mTfS0a2diGPDq6/3QDl0u4PSZXAU5nTrOMD/9Fo3Em6MPqt+/nb4lo9ctHO8Aa+ybXrHnIhKahCo8kx7688fMMrgvKu1THKKEkVqyD4AOG2k5v7PPfZ2M5/8+sxRQ6Gcop8+Hz8EcuRutRt3ZiUk462GYWu4SCEtvQvk4MI9KDz56PtVw7Dbt7lOXFGaYWbe4djyoMNZlP/7UbulaQZ7BP3wdZrIIg15aN+ojEN1xz+KlPd/9tnE/XixkTUt/ggAU0QU0KRjTo/FzdllioYQp8y+OYOQccfDNNIF6gMKM/NGxkbMmu4VPIDDpha0a4Hn/LeKupIpXMdKKqhF0XA8zGWwAl9mQA7wCrOA1NPVVAImC1Knn9TH5J1kgj97QoEAZNcDmv3UPtuzKO+AU9NR4VpbR7q2V7acVTTt244jaKO8qyb/nyGucVRAcFxLtVzcKpdG+0fgyTVzg+vWk93uDxFi8yIuCj07T5Z34mia0fm8ORSZzIWtGVFHraZwKs5dancplZ8Hr8n35TfNI+qAob6m480+hUI0d6VuV6vjGTgTM6ZHRANrrZTWOnLT9hUo8/VldsNxI8LfZxUZ0Z7ddA227lJUkLSTlNMPGSOhHI6HSusf301henGX5S0mNc7YSL0Tp+DZ0WujfciHimikkZjyjsIKdYbZdR9swgFGmYVKRf9mXNrH6BhUU+d5s/NkAyUrN5ZzsysCVKR97ATlWo5w9R39B+7OiRSW3VeK/sCgOQg+lZCo2DSzbZTabtc6xUxRbMrrsU2D0uPa0XOyAHrbB4Ut28w2U8Y7qewplImJelTJE/UkhWA="},{"id":"5b089fba-66e2-4631-9b8a-b2b4fbe7d07e","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"项目简介","description":"project-introduction","prompt":"为AI有声书生成平台创建详细的项目简介内容。深入介绍项目的核心定位和价值主张,解释该平台如何解决内容创作者在音频制作方面的痛点。详细阐述平台的主要应用场景,包括自媒体内容制作、小说朗读、学习资料音频化等。说明平台的目标用户群体和使用价值,展示平台相比传统音频制作方式的优势。包含项目的发展背景、市场定位和竞争优势分析。","parent_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","progress_status":"completed","dependent_files":"README.md,package.json","gmt_create":"2026-05-13T22:52:48.2167354+08:00","gmt_modified":"2026-05-13T23:06:33.4431185+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0CnyIiRc/FeBluVaO5vMjpi7FwKnkFEdKC/jgw4KVqN8C7/bNiidydBhOWblvyWB1nGGPBmxxX0p0zK1EZ1vOnKWFQMLsswvQvxV234/UEUqVoaDpHb666zHDLYFlluIdyvyPPQ4Vw9jRDcEuVBeSljwKV3cne/FKh5Z7u3Y84Nsfmim7ZdB7Wdzh8OXw36/Ax+p8hp4UNWw0qcN0khNqkV8nCWsIPlF/cq3Twr3e3Dg6u97rLEj60sqmI5qFV4Lsn1NzzXpPjUbUo/fVtV8Lhb0YdSF7+cEn9b87QTcAtF54wA0EOJX7XJjdKG+pC+l5uB8egjFPqlvHc85kPvIGHKQPj1H5g45UsnBLFxTxn5dq790cCF50cZi+heQ9d+v/KN39+HGW5m4dFBlCBvhejzO34oUEr7ZkwlcJ+rTcn3S4AVKUB9TEr85ezpF2rYnCiSS29J/fb0mfdpr0FJ7XBp4ijYHQrxCjvCFafdHWTL8ia59P6V7nG49XfQwyy5DCqQPB7kI7UMgKE7SgUawpVWlejcXokatUpw3pBqwKOHKR/Pj+TTx6wm//j+jgqNqA/5lyayKQFNKPJmW04emBRWWO+3M2fu3B9ASwkB1HGP6jUX0stGxo5XXIDGhLd/go2Agl6epygsGSn3RgGIBGWMgJOS3wTAKiYhzYaPe34ChaSln/BMfLdPTxFHzTv3Dyn+lH7OXhxI0ExQ/PNmB/IvdcyjlTzWLULVW4RVIxhQjyqYh8RwVuRS/iscnPq7iHpLCtUkFgAmX2qYlZZwbsNUFJny+AVrIdC/iEocjI169ff2S6kU4s3QkoPhhAC2Fo9VXIch51pMgOTVxLfX+AO5hrW1JKuIducy/8sb3sW5SQ579fBgA/xF9LFrHJ8WzTWmtCYqa8VYFxaPU5nJ319c3S52X7Fn71i0kMk9s/9c+V3BOoYdFt2aSpjUojB0deKFd84E2sBvDJAX32U9/hBrOSNzzc/EmhT3hReIZLr6KXu","layer_level":1},{"id":"af9b5856-71b5-46e2-a939-462593c1cdd7","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"整体架构设计","description":"overall-architecture","prompt":"为AI有声书生成平台创建整体架构设计文档。详细描述系统的三层架构模式:前端uniapp应用层、后端Koa.js服务层、数据库与第三方服务层。解释系统采用的微服务化设计理念,包括模块化服务划分、服务间通信机制、API网关设计。阐述系统的水平扩展能力,包括负载均衡策略、服务发现机制、容器化部署架构。提供系统架构图,展示用户请求的完整流转路径,从移动端请求到后端处理再到第三方服务调用的全过程。说明系统的安全架构,包括身份认证、授权控制、数据加密等安全措施。","parent_id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","progress_status":"completed","dependent_files":"server/src/app.ts,server/src/config/index.ts,my-uniapp-vue3/src/main.ts,docker-nginx/docker-compose.yml","gmt_create":"2026-05-13T22:52:48.8816909+08:00","gmt_modified":"2026-05-13T23:07:29.0221214+08:00","raw_data":"WikiEncrypted:KLd6hqS3YDnCCH772QA0H79opxzq6gDz6O6XbE8wXJCkKw6BpWqI3e9aCSSxRib9RaqaMVlPDhJHffDSxXnCxux7ugPWV2hfXyOk5ib7t6r15ukyni3+0iGkG7vdXTmEmszM9BuEiNI2DytLwUpgyUZz1TU+IfLJvDb76Pke4ha1ynBQscqBIQarxD7vdBRxQUA2kGKCzjdP7TG7GRCzV8JPQ6VopeK5ZK7vYKAKL6M/9xfrVVcsXYT2DKfgJvnn4dCx3w67RMlVR9PFu6OCCfJ5nliyKJDsj2cS90hFKufNPUgx6h6fs7e+JkOJOKD12nA9BnIY7XfRG/bJmWsJrjNRG+a+QMarVAf/v2mb7zNd/09sp4KO+hEF4rM9qxr3GnV4QzZuvlAI+YU6BYKAfe4vZAEhu5IpqQK77zaNJ8q6ddJWbuMZnRcqn4rGcm5uhBQm7X4032vMnidzVc5DXdugBgh4l82IGsJDd2bufiyo1IZVQb71b1A+7+qGfosvl/0MB8MYIZPeIoMFHcuHAetj72pO3YDpB0PnNnaEBqB42FUg7FivX7TArAmEENPwojJtwg9OOJ3bqSB/jUWqdtgi+5HRWIBC36wP4w+92GhD2LlP/7RUOjTjnCdCA9rezax0HgPun9N9SROY8j7aESQ4Cm7aIrfhMAw4SvC22y1gQq3KtO/YdcQ9CsS2unJyD1vGLBK+Ri1jIq61G1Jw1DGlenZ7ErhnerzzbG9/XRZwxyNlxhHA5YU5umgyUd/j4YQ1rMb06Y6LDhQqynkuma8QhVOCKosw8BUHfQtD+4VrYgkcctqmjH48Z//2+3fuANIA0aGojlyMgPq0Z3WzcFkVBxXNHAkU5ojllwEszjA0SHhqCryJnGXrFP5wDL3zhDU3W/qgfZofJ9NTrkMaonzR8SHa7Gcv0N3B9ensM6dtJyAoGBPAtw1idafvFmsXre1JIJ2Uh5H9MYSZQ5aSV1vmENj46g5YfWmooAC/HdCyYa3CoeGVC9OyCbKr2UITm9dcpZ0b0JS/y707T4yw5DcczHw48G3ngn/n8k4G6JlJeq7WrfHbIs3lXl7aOP/BmwtslxsOqEYxkffBMxR8gc/RvILobESptBZM7L9p63BfGFWNAsNW35qivMt9KIIER6Mjd3efkoV/GvGURpKbmKCeCeWa8qCPoVEuFEx8wHXCGVmPPVW0L8vihJ2j71jtV1gnjgGRjJq2WziIlsRu5OgPlvU6tf/zAqwjOt94Eyyw2ngOSlUTTY2QwXIrpfdoaiYwCygxSklWnXHMbsmRqT7Ya+mwEiO9h/8b32X3e/HF/dCtEqucWiqL/EKLj+MyM9Cs0wV2pKWvc0m5mV08P4PIsG4bd1VZSl5Rme8sAhI=","layer_level":1},{"id":"597b3480-ce60-4173-8918-c26cdabb70ff","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户认证系统","description":"user-authentication","prompt":"为用户认证系统创建详细的技术文档。深入解释手机号登录流程、JWT令牌生成与验证机制、用户权限控制策略。详细说明认证中间件的实现原理、Token刷新机制、会话管理策略。包含用户注册流程、登录验证逻辑、密码加密存储、头像上传管理等功能实现。提供完整的API接口文档,包括请求参数、响应格式、错误码说明。解释用户状态管理、权限分级、安全防护措施。包含实际代码示例、常见问题解决方案和性能优化建议。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","progress_status":"completed","dependent_files":"server/src/modules/auth/auth.controller.ts,server/src/modules/auth/auth.service.ts,server/src/middleware/auth.ts,server/src/modules/member/member.controller.ts,server/src/modules/member/member.service.ts","gmt_create":"2026-05-13T22:52:57.3001274+08:00","gmt_modified":"2026-05-13T23:08:35.524492+08:00","raw_data":"WikiEncrypted:SmmNTSq96N8aZksVSKE+83PC+cNK/DfBO+OUzl7+L2l2e/CIGqmnuvQf7qkuacMm4P98mkP4o/xYNjRUdWok0Xj63/TGC513Z37FlO8TMc+rJZM1CRDHeAn/vYDPSpCe1MgpPB6Ajnzk6j+wcCqhSTMkqfwRn3+/rvSZRJTuHxALzBJuWngUMtKaGMXpU+Fzi3YSQX+kU8vPJ/I92Umh/g97PLwQtb5rqth+2KKxQm2uw1JNOaNqz4u8HHLTkotcDYwTXh/+Y2qWMXMz3dqo6mNq1AX7nKo6CkltEvuqMdus8oFR13RHBanYN+oAq+YPZn5sjB9LQY8XB/yRi9+48c0Rc3X9yokNkhpTLEVlQy4R5EPe2zC6mMFSLG1TKTKnqxJYMtbgoFyDwWV4SDuH5r2xcdNBN9aJ5qJkXNYtcaQfySmM4T9JA51aBTwTiWQXiN7MLflUL2G3T/oPqR1/ZKHOn15QHHUzyQkWNMZDcaq8ZzaTovI8HkoQyqQMBO2obEQ+h0UVuUgJ78HzwTjLORio+uvf11b2rEvM3dg986On/NYdnprA3Tnf2P7QBedoKnQF46qw2MvNgFvAfzHHgDFeu2NfrPacc3agPTKFMIOnfG5sIieB+nV15jxwphZ89b7I+FswS+OMx6LwWjtPZwMqdntLY6oM/HGVdqz0mRAsbsGDP7RFskYUwAtRsnCmL8XgTXjlkN3VHU90mhwVYY1KPcbBOu9S8nmyVKUpyHrkQXS1bGQDbC9MqIuOoEekMQBaE52C35GxRyoJCrzDAxy1Gjhsk8gEBJoH5JIJ90hEPbJsM1yyiv3Jp8j7xC52Cxjp3LXKxRSgBivaFh5H7YX9sYG85Fnns0izyCymRHatRHdQJs2CKNxKRPNT+hOLCUW4CFsHRqHrZN2/oKR6n1TSbaDFw4P+rnYSjgSTXA+jJoxa1Zp9MRxAKy8vQI2kMVeRGsBQzCFUfjcojDJ7eHHEoXm1AKRcuugy+4dcgfXIT6Ja7jQ+tUNeUgFpOcEk3vUFki+7mJa7t+Q2Tdl/91hkFdlLhrH/5I9d+UnSnJ599yQptoFFCOIjBcES6CuFb9Mx0IV7JubvWCIq/R6W1nDOJgUA6oJ3raW16/jZksWby12d8kefjILmeSZ16l5h53LP4Hm2qMEqFCHxXbJOIR70VJQpqyXPP8FZEw0m8M6oDsYYMz2sgRZnC4kLPH1DUd40yuVZpH8MfSVN30lvhK3ZzcuHpJ7WymPzWaoVAiIFGQXL48zMGwVupnh7C2sVMOH582k3yfvz78n51Vj9u1aXBCzDbuUfjZZ3giQB3B3Ga3lzMYlh+w9g6X26sLyoT0T8ntt/BZBm7U3yOMd3xDs5nqQ0IT505xL6QgyLaYplDGk0bnVubVa0z8M5Quq9j+TJL2o24jRExiix9bfjR0312xviABa6ls83iNQYHxYXV7Icv1uQRmdBb8r0kmw/CgyPtlk+Z/7eJUuOmMnUaA==","layer_level":1},{"id":"7b7f6884-3f7f-41aa-8795-9f01536ffded","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"认证API","description":"authentication-api","prompt":"为认证模块创建详细的API文档。包括发送验证码接口(POST /api/auth/send-code)、手机号登录接口(POST /api/auth/login)、获取用户信息接口(GET /api/auth/user-info)。详细说明每个接口的请求参数、响应格式、HTTP状态码和错误处理。提供完整的请求示例和响应示例,包括成功和失败场景。说明JWT令牌的使用方式和认证头部的设置方法。包含安全考虑、频率限制和最佳实践建议。","parent_id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","progress_status":"completed","dependent_files":"server/src/modules/auth/auth.controller.ts,server/src/modules/auth/auth.service.ts,docs/API.md","gmt_create":"2026-05-13T22:53:05.7027264+08:00","gmt_modified":"2026-05-13T23:08:07.9379842+08:00","raw_data":"WikiEncrypted:uxAckj1IXK2TQH//kEdeBPmScopsydAsQUjZb8Fs6jIfeewFiTcBI5N/mzBnjtiUDHo98wey4OaiIavpMIlwaZXWlh13ElrEHH7qfjVJS7LbmVhwbYlcZZnomsJtfIx/4O+akTIpLpVgWmaxYpLQg4slLfphGZpfY6NFVuFqQUQYuvHYXjiPIclgp/tbb8zF6BWhJEKhSgU+9mXwQkTmk4a2Wn9vVCXMFA8bQvSEJFITRuPJT6saCsrC79+z8a2A4saRjDEUemzoDFuhARggCaMj6oCCvyAPMxPHVp/SMYXFMUpdIv+WL4NYb1tCI2yqYMmYTpi+9VpBL2yru8OIwtKUdRtGsQbasNeGx/+0qjMG8BOpsQK4jEe9zy8cyWyl3kFopGJCxUNJ2gVvlxYhe+AXElhblSk8NiVSho8HGAhhGGTu9CeeZok3oHbclruVlQ0HHeHyLjywWjKeyKyM4tQE1Zc+pQpK2NxaXZl+5bhFEcfY1cwsjJJgiXLNQ29/4hvPxuiDVJMX/HUFSERVOIk+G9GMhsSRAUqFhPNjOlCgQVjudkfKJSJTj3QD1PXhp38I5uLRm+dMeOsG4k3oSKg2b6n9Or/GeiBePkgF+MtI3rcF46C8fETS9VKdmCYDuKbzXdrjZTGJlcOIIb1HYKL5Lm4gpbpl/alDROPyi8GrHaklqj6bwYbTXo3nZBQGwvzybd2xwWlwS4wU7k5ecL+MjH/Oys2NDkMLTcPXghkKu0uAS9sxHJ+0pOF6zsiHwOuj3al2fkmAEONtnhA3d202kSY1fx6nWi+2b2kxVdveof1YlwL/3btTbCphuqYpu7aXIzrHnJRzXvmn4ClCCjpo2+XkYTAsLXJcJrIUNDqNyQWv6kxQ/oJQWnRKC7e9HaR8IiIgh0Cq+deUyhAqsbxmOyKc6pZzIz2XHzIasQvdi8MBl04ISjX9Qq3t+wBKw/KRaTEKPqvJRl8GNKktmzXWnz5ZuPvoQFq91vLPlb1XVEJyQZM1yh63pl3L7oyjxN9jzSGxwJcqCDjLUCMInd7w8BBCEkQ3mtLGEq0rZu9irlnkZLRk6Akv0RqCQnSqkxNM1DR5HCVbGtDPl2gQ5633QCu5eoZFbmXu3pqLMNDsXlr69lKVWvFP15aOyOW5","layer_level":1},{"id":"7a52bc56-e6e6-49f4-92f0-e3931ea723ee","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据模型概览","description":"data-model-overview","prompt":"为AI有声书生成平台创建数据模型概览文档。详细介绍Prisma ORM的整体架构设计,包括数据模型的组织方式、关系映射策略和约束定义。解释核心数据模型的设计理念,包括用户模型、书籍模型、章节模型等关键实体的职责划分。说明数据模型的版本管理机制、迁移策略和向后兼容性保证。提供数据模型的使用示例和最佳实践,帮助开发者理解如何正确使用Prisma客户端进行数据操作。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/prisma/migrations/20260422105352_add_content_status/migration.sql","gmt_create":"2026-05-13T22:53:10.2718981+08:00","gmt_modified":"2026-05-13T23:09:37.4681442+08:00","raw_data":"WikiEncrypted:klcgW2PbPxJambbKMzvFt+PAMRpnVmKUqL/CVrxtpQSuhuMV0mdMKlYpwq3gCrFBIWe5JPzFigkfDetQ7dQ46YV+yc4CQjHEUL6qLCOiRBjkP5WKYKv64RZ9irDG+X0j19ieasPpTK8Wk05teEWaWpUWGql9AdQB5g3oMpSPp6fifinPqzshRuuvfpmpq9nT9BzmMdXpoUMM3FUe1nzHCFA31rfw++SdAvzEdXCSRJd8cJ4JyV3kLu4bUvLkoYZDxsOjbPF7UwavLTVUXyi30XCJE29oE7KirgzoxrhgIn1PfXJFQC+BLeCvb4mtuj+u8R2rkDyC9aoBUCB6S+aQtfDnQq+p3HijorlhajOSvE1oTG+I4JXWLI+D7Y5pj1oHKRK+lJkULmFbOxvgaHGrm2jcfotdpopezodDg2IP/ebJDCxWCXhZ9VvQZONJg57r0Y3RZzJTpeaSo0daMqXKivPsd2NuUeIFHwr/D/OUkQb13+QV9pGSGCCqYSfDSCOq5lZOGxAHOr+3KR0xxzyDQRZ+DfiQ/fVZAGlDcvbJ3N6LHjU4UBliDtgMpI9GOFZlyjRuGRumbFh48TOhkDUo3LRfeyUwgwaGfMy5OAv0/DUmQiPt7tv5DRuC7F61l5iIMViGJu1PJ3T7SmFBxQ5Xcw8iLYwmkqlIgSs+Md2S+1v8pI3NHLiffobU7Uc4WvLby2JZK2e+xztI4yaj3V+PUqILl7NQHuhylNUBxb8ESO/67bahM59RnfzMU/XIzg8g3RR+rWmpCdvJ73Z5g0U7+dQAORxgnkpeRizLaaO2csk966OR2GA8g5JZ6HWh8sZtY8s1+MCVsNMgmU9No88UrgcrIKrJtzWwjZNXIndO9CChtGc+gXn/+fYwNW7aJ+XQ9S6ddNxkxeeg6QAmjVqvrFr+nTbKm6fHTzGMcoRqR2/sIPXp52c7rQ3p1C1ufD2RDkL7FOQa3pPastafNC9Hlzzv4XADVb2iMibPIyNvu+kRlR9xqqKkU7y1CpL1FMvmUv9J67MWT3fK4toq8BPy9R7PTYpRm+xvwLvZxYLiFWp/9CETsb+TDDtIbwt6iJpXREVBTpU3Pc5VwkV9UYYtl14p6z+pBmXkHNkDUQqLx22YNh42fgg/qqW+lS3kz6+6rE0h1A4A+QJoBitwHEHUhA==","layer_level":1},{"id":"590b5d4c-aab9-4b24-8462-76e193e8471d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"前端概览","description":"frontend-overview","prompt":"为AI有声书生成平台的前端概览创建综合文档。介绍uniapp+Vue3+TypeScript技术栈的整体架构选择和设计理念。详细说明项目初始化配置、依赖管理策略和开发环境搭建。解释跨平台开发的核心优势和挑战,包括H5和微信小程序的兼容性处理。提供项目结构总览、核心配置文件说明和开发工具链介绍。包含版本信息、构建脚本和部署准备等基础信息。","parent_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","progress_status":"completed","dependent_files":"my-uniapp-vue3/package.json,my-uniapp-vue3/tsconfig.json,my-uniapp-vue3/vite.config.ts","gmt_create":"2026-05-13T22:53:14.6206229+08:00","gmt_modified":"2026-05-13T23:10:20.7691368+08:00","raw_data":"WikiEncrypted:rJ/rIw0gVau8jPGqKFBAsLJ8DQ27EcjwjV2SvBnhnRrSxkCOIyyyLCavZNO+m0pYBzc2M9yvgF3v4zKrS6MfzXvWctYjS5CtbU3jiV7uM5wenYIk9OICNNSAsO8511AbXTWFwYuKEVQJRJjQQIw3ki2lAelziUOByfSyrQ0zzyf7hBi34G6y0anUPkRfdCYb5ERJ3o+QqBJmDJZRk0Y+zykdT6p4kJddFaNy12sgc7ZusBTKUDHX+ftTp/TbRkSDQLlpGtCUAD7e/kTdmk8tMqONAIz2RjMvoSWe6fYPBOdXRLlziSvECHN2LpBL60Sc7OH1RugXM2yWY+fWxGZW1Pr2Rx1BPdVUD67gkXeiQMiebKjUk12nWhDK9SsYwyVnK2nm5HHa/KoU5D7+uWXMhwwiGkdK6eDccKo04dxcnTVGJOoZwTSkq0mux0nzVE9YM3iroYyezcwu1gu0rUkuuzrOLu53FKLrOozoDhBcC8THoHd8qCyOfX2kKqLb14dWLl+tTmAf0XUOLdctUH+DbaNMsuOtnwfkOk/E17jLkNmi2QRi0uD8Kx6AJEynnUHYnrAcuQP/yaRsC/HPPcUy0oPHSA4VJJncQIG7iPfb71dIuhUaiUOycN0QnodyuLLnRKAnCF0S71LKUlp1IIrM9KM/d2LSjenmunXcb1JmPptKKCFWw2EidicQWZ2E7+hVQdsLikwLaY6BYJRMAzVS/aeBzdFLzmp1/4EdUl7gT1qAC3UG4eQONK1neoBy5uo0E4Ju9puX6hmnwFU3IcoHcVvA1jSXjUt4vUMhumVBNIxnvn8y8NAFofuC5v3r037/dQ9jZ5aJzciKqsgvuofalzaAe1lWC75Hz2SKGjALTQqdq0Yutry04o6pVObhsapZCIRNEoUctphS4IruKCj90vfWEZs44K/OPfhefOAdptP8YnK8YooW/6xmgg+sgNI1wHiz8mAvXEsnqbD0rJLA4J73HwXLH/NL3hWDNT+ePe23mUF5ClVWRK1rVtm1Q1P8lZg6DvtVVosqVXVJLZdSLEdLt0GGRZuSewIf9U2VzWQ=","layer_level":1},{"id":"1c1f00d5-7b06-4742-a079-a54952e00fe5","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"环境搭建","description":"environment-setup","prompt":"为AI有声书生成平台创建环境搭建文档。详细说明开发环境、测试环境和生产环境的完整搭建流程。包括Node.js、MySQL、Redis、FFmpeg等核心依赖的安装配置。解释Docker容器化部署方案,包括nginx反向代理配置、服务编排和网络设置。提供环境变量配置模板、数据库初始化脚本和缓存配置。包含开发工具链配置、IDE设置和调试环境准备。提供环境验证步骤和常见问题解决方案。","parent_id":"a7644116-2431-48f0-8cb7-2bac60b02c86","progress_status":"completed","dependent_files":"docker-nginx/docker-compose.yml,docker-nginx/bookapi.conf,docs/DEPLOY.md,init.sh","gmt_create":"2026-05-13T22:53:21.6324528+08:00","gmt_modified":"2026-05-13T23:11:04.9874898+08:00","raw_data":"WikiEncrypted:mJFb0eo+82adP8NAeq7d4LBCxC5w9J+0Fo3COLpkFPtchA2M23BEYjMx3U/os1FqhftXGYTEHLIXsC6Qr/8FaFq4f6fWxB3JpdN35hTHwpVBP/eXD58giYuZsKtEgfaiaacGmxLJSXeEMX8b/L+H4BJgtu5Yo7V6Txgh2nOCmgQye4DWBtsyGZkJOHaugo1Wm73cONefs2ZILTyqyeia5StZXo7Et3rzTQ2Ma5/NjOo01n0JIiwyDexkZUkP4Z5qpCc3gC8lheySqzZgOt0/1GKKEKAbUqPgBx9URI6s0FjGwzZhE+sJM6Jw/pa8jrg5l+fmSdWZjz/DLINY9exWy2p9OXQmP8nPhg/O9/Mh0J1FgYF3wlNGNMKWYsbXaeMg770z+9W39+vvDLXSxQm1PmPJJUAtKWbfyEjrFvPCrX3IsOdrVUO7O8i5Fzotja5uhfyVvuuTuoL/AqzxrzGBQYKYE4OzKglFOgMLIH3sM461KhB8wdngKM48rI6DeW7f41iAyx6R/13DHzjwtt1Hv4d/lrqacdZ/5W1twEiJsDiKT7Vk0HWZLWmyH1Sl9/nJRtnF8vpLjWJtaZSxh8tfT2IJlrMNZFuzBgRL+I90kYw9nWFWTKf9tcfq5O3K4iUjj5zdH7G9hgDZwHl790zJZVkKUPABu+1pVaZbygVbYFKys8bfZRVn7BBJAo7MW4K9w1hdVzyRY+9mMT8Elue8br6NNHUNeXFrMFIimpE7O7TVFmH448jyNuL9Omb9v2GbldyEZz6CGSpDmvVCigCq0pWJnskf5U4nb7AE1uWvzXssO9+95XC//3CuhXDcL2BFFhDgwjjN4LuoqCmolXGQPqcWWj5zFzstAM171lmGm6aP7o6g5dMdPzzH3GH/LHCU9Hwg3Jrgc3wy60tCDg+eD1yVhXx9CpY4PKyL9ewnmwD9gpfnXEVv6quOHTVN4CEmm+JpaUHI5dTQvgZNl/EN74gZ6tyO8Q68b68/uTalSjVh9IrmNSBaYZeKQbKIHlOT5WQX5BCnvLjmgjws3wTUzotlfS9/hH6AZvhOxxP1IGeU9IV0T7VBBYHPQoHqWEXUqA8RfoOfKFXH0yvvuYUOI4T81ENR93xinetNDhDolSGVM9Rbrgw1ndfAzN2NkeQSB8EmgOyH2gQRmL2Z6mlC7GggXQjnXVdH43gTOO9Aetg=","layer_level":1},{"id":"3c79df1d-8591-4c7e-b0e5-49f8d24e24c1","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"控制器层设计","description":"controller-layer","prompt":"为AI有声书生成平台的控制器层创建详细文档。深入解释控制器的设计模式和职责分离原则,包括RESTful API设计规范、HTTP方法映射和路由组织策略。详细说明各功能模块控制器的实现方式,如用户认证控制器、书籍生成控制器、TTS服务控制器、播放器控制器等。阐述控制器与服务层的交互模式、参数验证机制和响应格式化策略。提供具体的代码示例展示控制器的最佳实践,包括错误处理、状态码管理和API文档生成。解释控制器层在整体架构中的作用和与其他层的关系。","parent_id":"0644fa6d-da66-411e-b766-c810e7e56553","progress_status":"completed","dependent_files":"server/src/modules/auth/auth.controller.ts,server/src/modules/book-generator/book-generator.controller.ts,server/src/modules/tts/tts.controller.ts,server/src/modules/player/player.controller.ts,server/src/modules/subscription/subscription.controller.ts","gmt_create":"2026-05-13T22:53:25.8608623+08:00","gmt_modified":"2026-05-13T23:12:32.2598194+08:00","raw_data":"WikiEncrypted:QIBzkuXysBzMSQmkzf4c6+PltwFK+d7lrFRARvi3N0pdnnP6LosyLrEjFosMnaoK7kUgmEYqFeFoKQAezpGsdP7dyTTgqtbtDzEN0oUtAlOiUQxjMCTNIj2E3pkjOcqSqP/8VHF0+V4kEMHLTXhVdLl3/SoS+zu3tCwF9qxaJsd3fbIdpeYAinptasSVEDMe6BX3CEgF+M1oIc7vkKKz+mJSG4UXG9DsLWIvW/rwUxZ6Gvn9t67eceKqVu3NiJmUDplvZUT90SZBHmT7fclPDiv8om42GhUFNHYHAgQ9nfCyhKwYfZzA/T2ap1w83+mvXYqXRN8Ldxas8jpScZuuvBiIvWqEAlWifVGycCobIeXmdOr7c7mvNyqawmRRrPHLys1UowjJtofGMbfliZxn1YBJl7Id39vttkrGX+dg9uwI0jJam09JI1Wix5o0uE4CC/zO1MBe0nHveIYhV/2gmGvpEajmLoiBm5NycKaerQ+g619lF0jk1s6QcngDlVHrXRITIoXdguM+i5WnLMFUm+2imSjiCAP//HhM7XmzMCsRqk5RkL0yQ3lOgn/YZBSvDrdwS3kOvCQcKYHPvJZCfgnHIfAL6NZth0jqRcL9XE/rEtyEi4BzKbIHRfNxTY6pm95T8aF+bSd7U1hfItIksEDL9TkWh+QtSBf6NUEEGwKZbZPeffhZE0ks8+SbYjz51S9drm7g5uvo8GFDpZ4a6bRY/YgqFXK/xlcBePgcqYKh+PeyS+PXj6TuUXuv64iBos4v9Cbsn/TqDEmWb2eU5l8/aeC8vAp9iTcIyGCZVV6pCmX7V1tRdqYupseeLqZR42G2VrNcd/0AmAWKFVK74j/+6T8/nRZClUPLe7sDOzEIg5i5nZcqPr0vRtfeD00aY3YZjv4p/BD3ERLTgeovQv5KYLZqQ8VEWaJDfUjF4kV/PZDiSJFbSue8E7GgDo89QF0iA1n8s5idErUHCeSQS+ZgKD9xT0v1c+L1H8ZRQmmHlB7ACgtEP/CA/FCkt1xLCKgCJYZcq9fAAAMk++06KO2wRgQZKkQrP102xwwp7VXCDJ2PuHVvtXlkZOQcSNJYMzQ3xK0Lh0LBn/l8GlsVYN8qNE/1K2m/5EK/BaPUn1yFk+Hw5Nv43fErfQ/fviWdruhUok1lqLTVz8WP2H/mhEjw5HPSlt6Pib6iGVsKVLCQLQTXtf4BwpZK9NF7WpO97u8qP7/rdNTemJt/fbODrQ8zXlSDySIYhLDGRaFaYeCfHP/g/TsujJKfV+c0pDXoFn3wI87MBdbX2M3X6BHWWFCX1doR20QJOUoGk5AVw6/1fOUHLNuZmclP9W5HWKhotDo9k3qyfr/sEb79EGWrhdUa/luLwbrvycGRSWARzVBDzPH3l6ZKJ17HNiD9nLRWlum0OSTyRtQYTCjGi59VvyfGV2vewMjQOapm2DzOcgyRBAX8TforJ5h0UMni3v7hVjzHLL7mMqn7kQbnWnbbmKxUC8n2lWrv9raff1NB8S5ysYhPMNj8cw6YI/cTKzcTQwIa3XkiSXFejb87HvSZSqzT8euzD7ohA/VkvEXbqZU=","layer_level":1},{"id":"a0549fa6-a329-4c90-98ed-e4ec972a0599","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"代码规范","description":"coding-standards","prompt":"为AI有声书生成平台创建代码规范文档。详细说明TypeScript/JavaScript编码标准、Vue3组件开发规范、命名约定和文件组织结构。包括代码注释规范、变量命名规则、函数定义标准和错误处理模式。提供前端组件开发规范(Props定义、事件处理、生命周期管理)、后端API开发规范(路由设计、控制器结构、服务层实现)和数据库模型规范(Prisma Schema定义、字段约束、索引设计)。包含代码格式化工具配置(Prettier、ESLint)、Git提交信息规范和代码审查检查清单。","parent_id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","progress_status":"completed","dependent_files":"开发计划-第二期.md,优化开发计划.md,FEATURE_CHECKLIST.md","gmt_create":"2026-05-13T22:53:29.7643464+08:00","gmt_modified":"2026-05-13T23:12:15.8182388+08:00","raw_data":"WikiEncrypted:wVpQACS8UBPxJkyyBQNEMSCMSO5nOSBxz+Ggu0ARIOvf7iugED9ana44vVxfgR+z3p3IoCXcSN7MV/G5m0yWf1w2Y6e5nZYbQMtkmte35VvZN9nlaz/1W+TkTmWGtZ6rGkBqIokuODhyUNwNJxozlW4BUuKDUf4aJIJ4aCwk0LymnI+qxCL/1k5r5efMntoxAA2MTOA2eDpSQulL6R+xyOdNI7BpM195VyBtBMbVAQD2pIMXF8mtgF1SYc5r+v4fjbn0FU3N/0MRsSPtXfaGbg7wrSY7xMVO+OvK9ePt++q3UYC6TFevksJ1ayFkM2pNH1JQ0pDXE9gpyNkdYFDCwDXeTBCvhg/HbyC6+T40qegyuphtjoZiZbaFp5K/U82x4htp+OlLfdwLpqZwVjAK0mYi92fUHgeUN9Fq3GSrLgomwk9ct6/00eY7papPpAjIyL7WONbOCOu5KBPdSuts0pw6DSkm3sZYWITlpU1UfgwsisPoI2w5pwghAdOqW6wuvS3rQ9+a96P0GOnBwgVIBm1Dk4JDdcGDqE48IOXvj6d0tVwDIVdl4alBqppn1f7g9OkUTwYOysh+pbkfU9E/5tL3NIv/8Hki6382iS3IM6taapAUTLnBxnNa5u3SsTEuhqfwf5miPDavNxHV/ICrI+ZEl5R/RzfGxV6rs8y9J3UYoMpVoTah/nupsazZFsDWxg9qfVRI44QnKgrxxn4Hae9OgbqlwKWB/Kczz6HbJmCRUw8geJsd1T89Bnqyr31i4fgpNkTHRapL20a+F/TkRBZAkiVsI6sDdplogMhNhz/mXEZnN8g9nL+wc13hvaDdEU2njG1WxrseUW81u3q9SeKC3NG9f+ypcLi58ZVKJiQZ7R/L2gYHaadMAuCBdqrD3ZUBIYJlNpCCa0FyYRN0n8WE76SNRT0EfQtk8vqDAO6W34r1g3COQ9IBYBYWaWLmMW2+Tdl7H0SuIJqUBdrq+9sGhoWyNfKd0anGVonCuOx6Te/KmCXTy/8klFvihK1b2sEm82AK/hZh0Dl9IlGpEjqml1BDb5DrQZGgRau8Sxox94JzmErO2MBM7LAOz6OjrXQFoFutKx1vzQVnKDwFrfZVJy9YplFQ1Ow2DpLv4pkzTjDo4hIqrNEpX1qnVOh6PTwBzzCMDTM0CNAan6lJc6WZUMqJIGmhxCc2wjGXbrQn8FF3Z6692KVkJuSGW8U9/q0ybZCuDxzokPf/c8+L2P6sjIKhb8lf+9RnOI4jnD9wuYMnWJC0cCj85GoRLAHf","layer_level":1},{"id":"236993d5-5618-486f-8f90-e83cec39ebd7","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"前端问题排查","description":"frontend-troubleshooting","prompt":"为AI有声书生成平台创建前端问题排查文档。详细说明UniApp跨平台开发中的常见问题,包括marked包Unicode正则兼容性问题、运行环境版本不一致、Android手机网络请求异常、window/document/localStorage兼容性问题、JSON.stringify循环引用崩溃、CSS gap属性不兼容等典型故障。提供具体的错误现象描述、根本原因分析、详细的解决方案步骤和预防措施。包含条件编译的最佳实践、API兼容性对照表和调试技巧。","parent_id":"09950a00-d436-4c56-8d5b-5f418928f264","progress_status":"completed","dependent_files":"docs/app-troubleshooting.md,my-uniapp-vue3/src/utils/config.ts,my-uniapp-vue3/src/utils/request.ts","gmt_create":"2026-05-13T22:53:34.3235602+08:00","gmt_modified":"2026-05-13T23:12:44.677255+08:00","raw_data":"WikiEncrypted:rJ/rIw0gVau8jPGqKFBAsErLxFA7IQ+4oz1kXoRCpdKzfVZvpPypiFYCyD6TgX9TvvBJs+RBOtWDKSMVUn22Jf5VgXs0GFaLD+sZm2rh9KaQ8vO13qEzAsXQTa0EUmOncTUhQocssnnHpfE9WqcIcUko+cbqIQETgS3uRuwvMHMIySNgW3YeAObjke2gVsvdNWsvP7UjufK6TsZiD0FnAnX7bflfcrAv248PN4sITEL8aLzMp5PR10KWIJ/ODkFFFMv4NFhsvtSUSo0sUrzhI7max6eh/JVyY/gEFhO7NRrsadcokJo7KFFp2amj9MaqRdIJicTIw1MfP+JZKdvs7xTC56LTnkUHEhFPYo4BXVES1ZnjmSnbH2z42hGkJhvQC3lEag+WY9BTPgxdB6WT55k/AJI4tv2upBUiwqROGwPDCiS3gIh03UM91R+XRCMrQ4yTaIaEnH778X7k75+nFGAIt/xRmZmmA3NhYZbs5gLsi/5BEhdd/OWNPEgGXpx8p42cnpd2KiL2oxMp9n22swPST37p8XVjxKXsvJTtlQcYizJ19k/HFRJph8tIpn2SvlGUR4HlCL285zoEHivNVXiL8xSp530UnuGBvIL0UxyEuI4fk21ee/p0EOd3mGpX8IgGF7T7cLeRMg5Aqi5pPdX/LBjSk4vnOsOTMLzXW9R64vy+l7VUqu1gq3AIbSRSb70GNrxgq4JgbkKo8Q9bJz/C/oU202wiIEqrw1Fe8jeZZIRu+t6GmZjB62yyGKVh6CmuCz2Ijaq0YsTDXiPPMW1guNTW/KKznHSIWwnIjdSIc9FgYpH+DcUYxjtpX7+Zy0KUVVCkWKKVMB6tujNZYx5ublW1ckxmI40h/dmrkSiH9m+pEbx9c1Ce1fL6lTewviHgaEw9Ncrogyml8Wjt7kWEVPyYpcHrVK6jTrbbOdtMFF5giQ9rCBZC2zZjpf5qJPOQWA3fSWt2z4NJjiatpKxSxPO7lKWgGgMVUTpdFX8d9nSeh1q+kMznKPsz1095AWeIUJtBl78JoU147+3KM2X/4AoHxgF0Ul7eJDLwTH0vTog1OzrLQBBs1gaB6x+k3mI9HYvtxTzjx8LaPhe7O+UpI0kF4LvMaa+lfcY6KWvhLHvXyY/XSGPZgzoQ/2odd2KmHP1OPtmRlRkibYxdOPVpQ42jgc7iqjxlC8wD7iUQ4hmbz5cTP7kIkmAiQoQdbJpAmf5MlCxO7GxFEb9AZ8dBNlyXmMhWB56OiSwzNJtDVq9Is+wuFG5Pq1ZMH7Kx","layer_level":1},{"id":"76bbde7c-fcc9-4efd-873b-1495905dd874","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"核心业务模块","description":"core-business-modules","prompt":"为AI有声书生成平台的核心业务模块创建详细文档。深入介绍各个业务模块的功能职责、实现原理和交互关系。详细说明用户认证模块的JWT令牌管理、权限控制机制;AI书籍生成模块的LangGraph工作流设计、内容创作工具链;TTS语音合成模块的多供应商集成、音色管理;视频生成模块的FFmpeg集成、字幕生成;播放器模块的音频播放控制、进度管理;订阅付费模块的套餐设计、支付流程。包含每个模块的控制器设计、服务层实现、数据模型定义,以及模块间的接口调用关系和数据流转过程。","parent_id":"b3ceaffa-9f80-4cdb-a205-b0d69baceb09","progress_status":"completed","dependent_files":"server/src/modules/auth,server/src/modules/book-generator,server/src/modules/tts,server/src/modules/video-generator,server/src/modules/player,server/src/modules/subscription,server/src/modules/publish","gmt_create":"2026-05-13T22:53:53.0821929+08:00","gmt_modified":"2026-05-13T23:58:38.5995977+08:00","raw_data":"WikiEncrypted:+hgVdflPLL0xmma3oFcNhzBhcaOc1ri2L/NPsUVagHlOMa2Se49cSA7K8aChevOf/sPZo/A3EaQBuD8ugBvZH/2Fe6tri4XAB4QCmRA9Pgprbi65a9Ex8t+ALlLToTaLQDOQnvA3RFwN9FT2WWNcxIxi4x85eeDIMdDmI1yt/WFPlZH6uyx++HbFxH9+7ztmP7vbmfzpY9rj2DPIwXxnXgDGIShSb+XMiMMyBRuB5JlXcrWBAYPFXQgC6g9GHTQC5Oc4NxsDC8M25AH93XMp9lcK03ZuPtTWMsFjFZvgdRgoKinUa3a9G51Pi4A3NKQM0ivVnns3aDxBJxwkr3T9BiK4ebQ6aDK/9c+AiczwcJ9sWU4SvjjXQ6nlkg+U55pzyziNZp3EaFfLNbe3/LNX4P1mUQ++xmpcIqVrNwy4SInecuH/2vZihNnUgls1UGYww7G4G/8daWwR4H4oggqeY/VIBLpey8ilEpkiz9qJiOfvyVcFPnDGkfrK7TIwSyLdZBnxAylGfZzHVzVTTYCr/ltTihOqYM49x1Gph+dLK0hmbAwbfaTQra5er9U2tHO+TO18EF7TI29HCQHgl9viqUHONr11O2Drw5G3+FoVdFmRxZBEK9Rxoku2n6NTBbePUqEAdOouKwf6Di5x+GFZc9LMGqOJjsZgWkhiKIQ1bmFmevMwNyJ0EfMTvTLuOg925WKiTEOLeYT5euKSWHeimxgsPZBi8oDHnyHUBwFstpICgCP+OxaV0vpMVWx9VXouaKDmcx9sddlF5qgTqH/KxA5OrEotav20o8qlQqfha70n9IWTas3Tuuxg6ckuAtAL2PaSaM+YmTVunVg073pbOMpgJ0VSINTQXRz/fIKtIPXPdwVTvWqerl2xvEBUWE5/1GqjoBYYEWL6XElw/V+fKygFJyXLZ+2FrrOAY85HOt/iYBGXly0ktqFEvgUJZXWts8/L591KJmBFaPQcIQy/0FYe2XOY2uAde22yUHojgm3u/hrXQslkCkhim7WOtoDQ8GM7U+2L/MdxZDFd8S7r2cADohk4xb8q5BosCa9ZoFHhDA7LlTRC73By1RruONHKCDHL7zy2RTZQWk2LH3kjCnTOaQLNHS1oA8mbvO0mL97l1zYkXmlsYf23XFVGUtpnv137qrZpTM5fkYFlrMj+sR7WGdl6okkLvaNJOyiQ+cBhxOd0NhAK9Eqt+ZEam0m4l0wIWYxOqUMP9WLQcEzE5eIui0FDMGATeaq8KjQctZwCyVs8YxXs2Zy0KDVJC8/FPtk5l0grPjIGvJfyADmuOWGKgvfg0NPWRN1RIW4/GDnqpr68ydUrPApEEqQ8nX3Etu0MnuZradQUWV8kfet8Le+rJIVcfDK0hxs0IFmr6o0wxf+ELQzDaPbApsJPXT2gUxS7xal+u93MZN1LQCKnrIjXyjgdSGTkyTx/qar1IDnPVHxLfJsgFD6EqYxuWCwWMMBEg8j1RTxL3ee0ECs2S0fuqjhEFEqsQMCmA6UPtTFwr5g9s/rnk52B+5wE3S8pqmALS5ierFo1IQHn7k8nZ0FuHofOJ3ZBWFxn0vLwDK9IugESCDWVukufnYUFdb8aeOioEWW8PPGjZBH5amAXwA==","layer_level":2},{"id":"0a11cd32-b03b-439a-91f1-0caa792aa4ff","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"插件开发","description":"plugin-development","prompt":"为AI有声书生成平台创建插件开发文档。详细说明如何开发新的插件模块,包括TTS音色提供商插件、AI模型插件和存储插件的开发方法。解释插件架构设计、接口规范和生命周期管理。提供插件注册机制、依赖注入和配置管理的实现细节。包含插件开发模板、最佳实践和调试技巧。阐述插件间的通信机制、错误处理和性能优化策略。","parent_id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","progress_status":"completed","dependent_files":"server/src/modules/tts/aliyun.provider.ts,server/src/modules/tts/minimax.provider.ts,server/src/modules/tts/mock.provider.ts,server/src/services/queue.service.ts","gmt_create":"2026-05-13T22:53:58.1379019+08:00","gmt_modified":"2026-05-13T23:15:02.9618578+08:00","raw_data":"WikiEncrypted:ukPV2tcWPRGn89Upsee0BMJPbHQX0hwXHlyElH+Po4OMND5qukbyLNiyKhqcozSK7l/XPUqpOuMmVJZuaFxCDbjuETPIkxQF1j9uI8CBb6ySbfGNylAS04my8nruGT0sAD1d4v86IQL8hpJIhGcz6X5gMcQFBv6ecyXL7XVvtDmmAzaHejY4IDAvMGbFqJ2qYcE/LDfoajU2WH9bVb/xfPYp13mwsBrcDwfU3HT30pOf2cikcexmh8+OTniAeZRbA/b5RCKH0Eb6n/y8J+g2c6Gb/b7+eyrVXpLCBPQYRNjheCDNf9UvzjGds0Bsn8VcagY+LfpCK51ath08EASTe3+vmJtdTN0ohmngrE2pSjBJNazIcxPK4RNzx8rHApWFB/1hFb4oPNZ6G+yLiLGptX0nI7Tw5LeVO+ZvLt5UNyBfD3nkg+CSXYCYYWAp8DBxJO8UZvopZNqjMAsRxa2krgxDPUtxCl0g43iB6NPH2EZx3LajPSVwEm17u3MHmtn6Hr7RoEUYrwNJlojFDM5m53U5E/Dtj6olvwfrE7+cBIah7TmjoT67sNYd7RWWOQdcD0F5n7+AdzdykTwo2Wn4gfq1Y7VVgpRRsCtKKXwoB8kSNTiUqSVmVNQfzLUo40CRoZwPmia513c+gkMJOKjuvspiGo0VL4Ju/+kIHMK7Pj+76tSqCwSvKaX0/koZsR4VAUscz5x0e1UwXH22gj5TUGJarOYvT15J39Ihy4XQNojzNz4PM3+sa44pNfIbz11uuHwMDBjVPTwDDbg0ABwRbQybns70/g7Lj1TNH9b75pAIK5Ul0fzAWjcgfEm7rZpNuxTO3uY6m2Gi6Yh9Je7l1pmFKArPXnTp88JjOSDUniCrzdzvWQJeGcwg61kvp6AdeCyQhXBJpOS5lPGAzRcWMmFBbXDtRrTYbMfVBC3hySwIf3gOJQjfgWDktbBJExxuVshUjDT5P6rUDN3rM6aQp4Io8Ue1jlgfXYNREugT2J5F9ZUTIUqefJ6xthv5KAC7wcQKmMAqnIHfGLvtkehGCJKTzn8xVK+atXkxny4nsoWAnWXgCu21ECrW6xmLJENvkuugtPiHOhAHt/JJLoasi1CkspjkECUNNLD/K0iKDbJPWOtBLDr2XwiTqOimYy3k4+xCWmmJFbfBbX3Go403AYFieQ7mhupIEXjuG7bTt10=","layer_level":1},{"id":"f8addd1e-e5b0-48d6-ad52-cc573fabb848","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"文本转音频","description":"text-to-audio","prompt":"为文本转音频功能创建详细的技术文档。深入解释TTS服务的实现架构,包括异步音频生成流程、队列管理和状态跟踪机制。详细说明智能分段处理算法,包括长文本自动分割策略、段落边界识别和音频拼接技术。阐述音频生成的完整流程,从文本预处理、音素转换到最终音频文件输出。介绍音频质量控制机制,包括采样率设置、比特率配置和压缩算法。说明错误处理和重试机制,确保生成过程的稳定性。提供具体的API使用示例和最佳实践指导。","parent_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","progress_status":"completed","dependent_files":"server/src/modules/tts/tts.controller.ts,server/src/modules/tts/tts.service.ts,server/src/modules/tts/audio-merger.ts","gmt_create":"2026-05-13T22:53:58.6156024+08:00","gmt_modified":"2026-05-14T00:00:19.6252276+08:00","raw_data":"WikiEncrypted:FFPvH6fuTdNO6tSZRuIpzT2AodKjycunuS13Edfwqfxig6R0cDqd2EWuF+kP8W8CnmFoJzN04k/X9oWy+56pfQxqk1pMyIlyHBrooIUzyGX6s/17ArP/hjid1UULn3J/Zg9vS/GJnRSJcb6klbsxWmCKQFIrWqIhFf6ikSqnXmgTMz+hvuaBxEDQg1UZK6Xp+BspQrMdPb5hDwpkoKuNyJsKbbBXwFHvSM6S4E8c9aOLKcmOa0DtuIYSOZUkpGR6RCLf3qTsKNAxB/JtvUX1OOW7v/nabG1wwfDB6ZnJc27jSFVZT0Ytc77fS/u1tX28egJ2VsBat7+jaWIYheCfewTm/3yOEbqck8OfnMPcbWQJMxRy2fUfNb47eYjS5/uFEjc1FWxsTsQKEj+JIsOWbKmkgxZxQM6cRPRbNeezTylEafSHVHXG6GdTLO3h4fkObjkBtmkJl/J7qmYJOKbvmJr/wxpaQjYUlUGdLQcb3sed7ydoq4XO71N8cIqW0gAJJRqOpYgpp2hcIfFKpIMEe/kWDuQjblG2eylwFpDnYSHO5/zdnZnj1RC7m/eQ1O1mjI/h5xUJHKvpoiIdPIbZkdcD8oSwAbyXHE/muKbJeLjRfjGkRluC6rQZSKOGf948AhghySc3ivJU0KplMcm61JopOWubx4vP4DAfqYbvbtdU8Tl48PaYFi6kF0DxPp/xD55MiBEGRtppmwTTdILL75QGo8iUX5c7z7GkiLDf0VDL7bb0FLyFa8ke8xUSPqm9IainnTJEOA4CeHgGpmc+MDdovbk52TtF/646mgWwxQknAJV/fczUlkecga+JleG7NjzEABHFijjMcJrnXk56LPSn2FAm/5ud7DYgmuwHqJ/+bBqYcSfRfDNnx2AMOLOXHdhJu12qYo6ZCzDAvIW0Lr5I94aW99zsdg1Pt+v6IcONYclADPpgvOMIzbs5oM5glLYhCKsd3yZgROOwkgWdMlXDtZSCvqJC2M0AyRl5Xx1uqzEHJt7rMQENH1UrLnImYmzu12AP3S+KM97lhbX+e3jyst4p0gOhXrfXbj7Cd1n8OKkaeKX6YgsDbi6ICIhf5oRbF76CsXnknNwt21SLNWbedo5Jp4yy1gwn6/zbpR81rsjj8iyz9D5gBt9xwtOsYAtAezRBEpFhc2At1IEVWZYBz3tagrxs39bYblAEk141ohTbjQGwPWLn10hACOlom1RKhRNObmAsfCVHf+cZiMtI8oLs2JX3CL95hJPI2BN2OoOPXblDH34u51WC6AChcDAVmxsLs7shCUMo8A+E2wQxmr2LWswS0dOEajKY3Xl2NfGTlbubmyE09wemwzMg7kIyTD6muEWRNsiummUCCLbyZ27ZTN5+HJ5RfXwI0fc=","layer_level":2},{"id":"ed9d05a6-cec6-4e6f-bc21-9063204749ea","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"容器化部署","description":"containerization-setup","prompt":"为AI有声书生成平台创建容器化部署文档。详细说明Docker Compose配置文件的结构和各个服务的定义,包括Nginx反向代理服务的配置参数、端口映射、卷挂载策略。解释容器间的网络通信机制和数据持久化方案。阐述开发环境和生产环境的容器配置差异,包括环境变量设置、配置文件挂载、日志输出配置。提供容器启动、停止、重启的标准操作流程,以及容器健康检查和自动重启机制的配置方法。","parent_id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","progress_status":"completed","dependent_files":"docker-nginx/docker-compose.yml,docker-nginx/README.md","gmt_create":"2026-05-13T22:54:11.8244748+08:00","gmt_modified":"2026-05-14T00:00:57.9030713+08:00","raw_data":"WikiEncrypted:OYVOcFWO8QG2KTNzD99v4zuRysS+rDEwuwZR7k58FQFt6CJAIad4kdyOec8u3itZUbYZKQECf6+CWsgXbwGSBC80DiRq2jBOtze7zk473aBBIogACb9C8WS17IUcpcZVWKmR/x+NUyk3u94rBLPoYJfpJgw4e5SQ9UwsHJRvC5FFe6WGebXy8NDFBUApOciQ2hF+dphT+G5sWAamf9gfnrYA7wkBvvCsca9drLhPBPjV0txt0jUTn+Bcsk30Fd4I67IHnd4asAG1OVFYIDY+AVcejBj4uTnMh/jByj42au4QrwK+SzECx64xzh/janaEO0VIYr16nMXBqf4jWvtYdvdATvNtPSrguaqiAjQoR6A5EF5+HOBM2ozzm6HYpWtnIcSn6FH/Sbz5CSweR4yh3gYncClq0YbgN1jgSLkUoLCrkoyh0Xtu/xfvquWCr6nmCJz7EOhjWpbYVfKPcKd9NBA2eCHegKF4G9dmyvYv8oZW61hGSvPf9HGmj/y3M3mWmdamQAjCcOsB+RQtYQgmAFe0jw6dW6vZ1ZvtEp+zqP5GagADXa9D3ZDc8CH5xq9o28KEUB3P6EbqmfCJzKdIesQw7m6USa5kEqBT12+tgs6j9UDjdtY7UasbYerVVwOqUzm9s3GWW2MOz7V02wS4D7mzpxTKsa0JIXTk2vcTZTqtUP0+Hf3Fr+MVyIivv+KK2pUDtWNxSiKPP10/pePtrOeHDSj9624mTgD/TdEMsTwfkMxyAG4qvlWJbwZGifN5huMLmYX0+KDqJY7c4JF3piJeCounfhL1OtE8ImRQP1PQVCh0nqZdEXkq1LsqVkODzYBN7GFsLPjqgjnVZ4qeSybEd3ZX2LfEgI0vkfw668TJi5dVBKI1r2M4tOCnYReWUotYlTAXCk/qJyZXShyzGF+8QR4H5tF3Gcn9GoQ4nXGUxr+MNs7tXQl8mg9dQgdYhTvTCA0NM6+msBW1F1UQZMFFKfhIE5Nr3GF7FUhaZZOfpkvThrE+fCES/U8SMNwQQxY7Agl2eXl+5ygrMlV38wVVntmvwV3mIzGmgg4exCU0TVuLdNYaKNo+lOc4D/rOo7/ME7HUV6Jiv78BbenNQQ==","layer_level":2},{"id":"6674894b-62b7-472b-9af7-78c44de5dc96","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音色提供商集成","description":"tts-provider-integration","prompt":"为音色提供商集成模块创建详细技术文档。深入介绍阿里云、Minimax等第三方TTS服务提供商的接入实现方案,包括API密钥配置、认证机制、请求参数映射。详细说明各提供商的音色差异、质量特点、价格对比和适用场景。解释Mock Provider的测试用途和开发调试策略。包含完整的配置选项说明、错误处理机制、重试策略和降级方案。提供音色选择算法、动态切换机制和性能基准测试结果。","parent_id":"e95b9689-9c54-471c-8889-c927cfca7973","progress_status":"completed","dependent_files":"server/src/modules/tts/aliyun.provider.ts,server/src/modules/tts/minimax.provider.ts,server/src/modules/tts/mock.provider.ts,server/src/modules/tts/tts.service.ts","gmt_create":"2026-05-13T22:54:12.8410974+08:00","gmt_modified":"2026-05-14T00:02:45.5161434+08:00","raw_data":"WikiEncrypted:uZo6XdPV0RYKXMHMNnnigAepjf8133TlYORnYl9WPXCyrKHxL6w18PEuqjhp8w0JtNVAg2pfeM0Qb6cbj7f2D7WAIJzkm8yRYMcPuwIGYXgmerW1stboD8fpVYMGDJitmdXzgMP4ZdHAVHNrObZfCd2qGNTU5MFEVLLw8LoI/kv8+R+2WlZpF9heebtCupMnPIBV/b7lvaAnQZhXg1wIU+AkTZCR1k8IXY07Ppmnavt4jDhTYFZLB/mxqXWBdUxW6CYi5jPRXGBfy1kPjBgP2Zv8KNcHSTRpHC1icEmDcbuuNJoHyeqS2f+L0v1jpLJQjVe5C6d/qTNhZZ887CxSk6RRwhj1lWoMnskqZuFD6QU0b/TQnCzSjRYWprayo3ZZS5j9VmjkEp/4xNL4EVDYn+YcijDxoKQIC3u1oKGlBbzT638DNAsUv9ISqJTYDyfHKjk8QgwDPHatKdYom2Dje1vm1TK2FlGI14WWAirWCCgMtaalUJeUIz2lEHzU+WnT1EmS/3ewtCQgi5kz117f17t0JHdT2XC8PPODvZSYizTUBGpbffJNIrN8pCZACL0XWT20E1SxiiFGTxdr2mPGKWAAVBgmwAQ64dRdwu8OCkLpj0Ng5c8XWPiLoxakMqvi6+gNjShDA92/84kNd7zU8tEMO67N4C+N9hrDX5krViUU+DI3z9mvdUYbX7xDC53ojDcsIXurNFLxMD+PWpGeCzoUH+7brjSiTy+83qRQ4UsMUlx+krAxZWelW2OSXvHrM7HFU4t5bbOReG6JgkU9PIo/e3vOLid9D00YmFTU252umTCfcWX9CA1Etl3lZoJiZiJOGBHr3chlFj8i5HyI+6YdiY8xOz0yYaqGbR+/q6j91nLTmNtyW+9E5BBzBI8mA9L+xOoh6lGUxwHvxOF+y7Wemj6T+zin42DMNeKnsIPA9UxJoF/0mfySK8OHwaQ/uugyxb985u2ODxqgwJ/tm0ZzSp+9uc5swwXAnU/w9Um7tl4qcdExXqlivyEni+posIBoxrEqoe+xxMt9wdPwTC/efHxp/PfYwGv5cHe5Pjwf60oiSxEN5KHVyNmQPiyLBCiza3qdxaoXhuAsRFLu2JKFzV4sAX8/b6t6eGMXQ7/eo1llqUL0NKxljlz1tvuZhfw6qryQBIbEjielGYy5Fq5RSsTVp6LS7rYjLG8HkRWB+wTNX3hPPENhFbis9O7VsbJwMB9E/ILJW4zyvLNNK7jkjUJVNtzh/GLX1h8UdHk=","layer_level":2},{"id":"7dae98a3-fac8-4065-bae4-499eb2cad302","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"LangGraph工作流设计","description":"workflow-design","prompt":"为LangGraph工作流设计创建详细的技术文档。深入解释状态定义机制、reducer函数设计原理、节点连接逻辑。详细说明GraphState中各个字段的作用和数据流转过程,包括bookId、userId、topic、bookScale、genLevel、description等核心状态。解释进度管理机制(progress只增不减)、章节完成跟踪、错误处理策略。提供工作流启动、状态更新、节点切换的具体实现示例。包含状态图和数据流图,帮助理解复杂的多节点协作机制。","parent_id":"ed23c946-e41b-4585-8aa8-be7382625e28","progress_status":"completed","dependent_files":"server/src/modules/book-generator/graph.ts,server/src/modules/book-generator/book-generator.controller.ts,server/src/modules/book-generator/book-generator.service.ts","gmt_create":"2026-05-13T22:54:15.2948035+08:00","gmt_modified":"2026-05-14T00:02:43.7969328+08:00","raw_data":"WikiEncrypted:5TfoOZUXi2pU1NStYas3SzDJIcfo6tbk5mDrhTIrN9WlfPTAU6vEpLx2ELCEl3nEZ7Mj4B9wKbidx16X3W/B/l3beTqd5l1jTCJFvIbN/MGWxrHtl3cZUp8dZZVNh7gUDUU/vToKvgDlabvXtHo9QZhayhFiWev+nesg39tWOOw6CmierCEQYXNByKdX8V5f/7+l3ajhWYWA0+Vy/fUViUcGVmm4Mk9F3RmauAeGTDMcTMLQWCbrhP7yEJ08Y6r8sVNlS2x5x+M6N0ppx/EUkMwmy0jWcUlzyamMtPIhu70ovA0+a+MMzF2Hg1eRf4iFZxRv4BPRx3q+bX+OMZoHXsaxIDMGLsE00URqU83VhkTQ5NEZNahLa3Nqa9vVPrvsGog+ppWAMg/ci28LwpqXQ6Xmi8gUX8tZS7tF347TyrPDQ4DwNCzZo+pcXXlTt8UURPD0XD20jAXhNw8cmJJ/oeS2c+aR7jrpckSO56Mzd6txZPPbZ9l9Wa3rXHmmUkp0rn11sxIQqNfqe8+oelXxY9u5HAE9lsQZBF7P8odImhIDUWrvYRQ+bSqTHfgYo8TjyIl5DR+2QMFBOWv6L2MKQslavGSFEhzxXZg6gSz3vfnFCj/YPisiNe6UJmQJOHNdmCymiT7HxdRZlnpuH8Eeexu65Nx/6p1xktfCDF9Mbw0dUt0jf5caT5N/5y89yFSDwpxI0kDs3FtCEV6vZoh51kW08qOKln9CehxLSnB0BWANQdQvdWMO/0N14Yaog1Qw7slna76vx4Ng/I6h9LxCyV+9Jc/IL93Tj+IOIaR3vTc80Rf0bNazfCuSmzaf/1lnHn+PbyVXhGAyHItbtQrg1EEY91B2xxQ+UIHnUb08XEbcHCakjGDLBS4Pi/q8xJbZd+pcyEY1qGC8fcdMedUE66j6VTT6cXclIjDJEGDtyD7JBfyxI2Y0l8S5xczMAHNPXaVRHoZ425rxQMLOhKxV5NjCe8YOyWwwI0DEF81c3xlOEZgeS9weU/vH9t/U80fPlc3sYhmGWB7auuSkH3ZOZ81xGPrRZa4SVgJQYVLSuQXOPSaInVcdNiQe8X3RBkcOkoque6DjUuH3LC7J9Yarc7E6YZ+zQEUTFGK7enMWnW7M99zqaUsBhlmyw5/6h69goxOFzBplzR62/jEOTqjZbevlFl1dN/QGk4s1czhamA210jRZhThec4+6B/fs2aHUtr1ZQaOvOkODsoRfvmzYqHqyqLD4Fc2JafN7IlM6YFweC3svfX7YtmWP00kZs/y3B4T1LEYBv03XLgf2hbfGUUvjOfgwZE1NHBeO6rlzOXz9WnvRkpApSQ7fCRsN8zKc","layer_level":2},{"id":"dfaf0510-8701-40a6-b5b5-b3087732c2a7","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"会员管理","description":"subscription-management","prompt":"为会员管理系统创建详细的技术文档。深入介绍会员套餐设计与定价策略、订阅状态管理、会员权益分配机制。详细解释套餐类型定义、订阅周期计算、自动续费规则、取消与退订流程。包含会员等级体系、特权功能分配、使用限制控制。提供完整的API接口说明,包括套餐查询、订阅状态获取、余额查询等功能。解释会员数据模型设计、状态流转逻辑、业务规则约束。包含会员行为监控、异常处理、数据备份策略。","parent_id":"abca1a7b-42a3-4a19-ba37-6e30da86e151","progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts,server/src/modules/member/member.controller.ts,server/src/modules/member/member.service.ts","gmt_create":"2026-05-13T22:54:25.8679232+08:00","gmt_modified":"2026-05-14T00:04:56.0783137+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqEsGUgPZirgcV9/QAqlRWwnD4SXdIISOxGlwC8NASzFwmA6uTyfWr3plJxqSQ8Cae2R17CUEQLn9N7bRzymrQxSHk8Kd42+mpdXKi78gdOQe5Xb0sqKtIZyOq6sSVqVjfGVOLSkKyoebQIo05Nff4Z7fF8x37R0l7WJ8Q84kx6tCm+Jby0AA+TkVHlhloT7fo/q/22GojahhNTeE/uQZF3fTIJzOqd9QbobKKvrqb//lTkUTZtnxPNUTDNPk29pKg1g1OtAU7nBw5oEGKmmAAAzicEzG/7soiE92qtJ25LwPgR4UXT41jRCeRfkkDntaLrx6mZFJB4JUntNwUPxUvSQI1/2x+dEaFsz8sve7cbrJolKQ9mydyTN3pVuvpgGZolE49iTgdGBCa6ByT4tMNJQBR0MkTO0omO7aAGJN4J0gI7rHbRgsR5NETEfQYUVyVNrqdfr6sKe09ep/3uy/qU8lFo86q34+UsthQV4BBsR28VOzkngRUop8jRUQo5aMLVKeR4ZWDyhBjukMvh19f1lTG+HpQx1bcMAgKPiJf2h/144GQ3ukyyPWwtqkrulF2aEzWPOZ+R4BbkftY6hVJHnc4NKiV7W6XDQYu8EPXDtIttqpY8AmDF7Ab72x20TncPMCzrMj7/Jmxx3WgM7xyvm7PoKUSfLgJFa0D9Hkpb+PieoP3ezOOnyZeTp+xZ+wBkqGEoyskRBLr8Yg3lGHB9zhUHbV68ErZie0lAbxie5h/4bPUy4n9wbmAt9Ci5gAEp+B35Me1XfrMetv1Q5ZxudrZweShvE75Ps4AAnXkVxp0o5RpaW73KySJeo3JU6NzqVX9/ATR5lMFAZmMu6USepvDtbq0HA6fJy6Aj4Pzu5G0wc85daDgUJzkrZOnkNo1OmRYl/x9W6TdnUYMXYoqlfuJO79MVii71F+sncgIPP/ZnjqfFtHy9RDdFSGtr1ZW6Ka+zV6C00F/WldxKlqHGC2e+PJ9MtoelpCw1DxA3icsrwB5bFK0K+kMFUsYkjvVnqjKwvJWwVo3HdqawA60+o6y27rmE6GXD9ZhfLtpQBxzBLQNl8HcyYpARBeNCwTJpLgLkl6quxekzlECVMdqrC2SKP7+zJ+8T+AbBh9yx6vz/NrEPB/d/Dkw+fkgrAeXOJS6SHz1cDDFtFlFmsMDuQdnUnrRgUCXq0V3D5xvcwbIPx5CAA1fkC5BqLfkxLuBCwlGvrsTprtlPA8odRWqJFwUiEX8rkRir0uSIJm6bmOuBXuOznkU86IzV16DHyrvoYAhUEqASUmuEWfqU78JN195RyOYY19nU7L9+mkxyuZQOwL4Ys+ORY3bqLrqAIahixi2FFMq9v9ZS1ouKa/y8S5N4lfl0p0zNmzxuYI3ZEuKR6sYAmgTMq3kqS2fDwsiw==","layer_level":2},{"id":"8285755c-f31f-425f-8283-60af70942c99","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频编辑功能","description":"audio-editing","prompt":"为音频编辑功能创建详细的技术文档。深入介绍音频剪辑、拼接、分割等核心编辑操作的实现原理。详细解释音频格式转换算法、采样率重采样技术、比特率调整机制。包含音频增强功能如降噪处理、回声消除、音量标准化的具体实现。提供音频波形可视化、时间轴编辑、精确裁剪的技术细节。解释多轨音频混合、音频效果处理、实时预览功能。包含性能优化策略、内存管理方案、批量处理架构。提供完整的API接口说明、参数配置指南、错误处理机制。","parent_id":"33e6266d-c33e-4eba-87d0-aec3373141a9","progress_status":"completed","dependent_files":"server/src/modules/audioedit/audioedit.controller.ts,server/src/modules/audioedit/audioedit.service.ts,my-uniapp-vue3/src/components/AudioDownload.vue","gmt_create":"2026-05-13T22:54:27.9721714+08:00","gmt_modified":"2026-05-14T00:04:57.3367655+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrLJVpVWUxA47wLFu0BfImF92XbmhTCoSbv58KFsS1KBFfkretcYifoCuZgN6MGwHENlc2w+Wf7M0d9RwRUsqic4RKkpl0tehiMeBZgkaXPf60oQR5IkRN61IP5XuxIZVTai/tY2PjMyT8ng4ksIszfope1nJ+JD2lSpxC48yXX3/+DzjEt7foN20iUI/3qglPMK03WVA2rcXHxyho//hO1/17+eVlqFut5RxcJBYqL2zjz9i0m0PK2wpFdMPm1atd8b+RNcT8GOcCn4oEplsU45G1vEtNkFLa8Kv9/gKtyD4qoLsS/iUzDjz1iLA7seOzKkYJtDe1d2tCN8h0K2D0nmzzR9KQqEBpikVgIW3qhydfcv1CJWzw2RDAXUq8B9DeWG1Lmgn2Y63jD3yzcVIKBh4AhFgsstTNEMFrgqv/keATS9fJCicXDq3migdEr04wlDsRzWUtPMRSd2raY/S+KklbX6KAm4y5WEnrBvS87QWWbJTdC1iUM2rgwlCXEfwWAOCkVaNDAvt57MYEuvG4J4wEN+gg0mXEZ8qlCAVTlBQvvcnX5cg5U25FeFBuPn3YWudjKpEsPqBWiwCRZLPnVPESvClYhQqi3+00zyGLLM1hBDIru8qk/lAUKac6PM2pbSh6duMQhV4NcV2dHYn4454DZqHoTSEAvuERVC8en00f2zZ68RwnBCYs9pL3nN+CJN7TkpfWdOOjbPjdQExnLZkPQstdYhPo4iaollmP1yul+x/sct4CVr+aSEJTrGl+ZFGKBVVgtNZW4FU8rwjsD5Tb4qfz4925waIiLQnAjw8w+6YMJV9ZNTCU4/yOJMS3daFxCDh3884CbWmelx71KbN0/OKoOFv3umBxexekn+FbEfo0ZE0CPHkDJqKbwxb1PvuaLftuumzDcb33jR+c67nuL8dTEuCJYOtaXHfO4xvutwnMq5X1l5MZvVdp+kkTRLxfm4EbGYSAIPoRsLLh30TvDvpSibdDSR4WXHnvJeiGqU5+Tcit6GDQw8juKj1N/PLEkIxLrlOm32IiGe7aMXcK+yMsS5KEK41QCA3D6dG90mW5HLa3wOYVbVjgSHuPtrUPWDTPHXaddqWX3rrBmiF7eN6IUSBzd2EY4M8+R6eeQhRrW8Ufl2Uvd94MvW0/eU62fNs2hirss83Bo7qFa7eu6J/sQIrFjaZUwOA3zgg5mGm4KvFeYy/o8VYSjtYcLHq48QNZXi8wZ7HghgzpbRbw6mCme39SYcM7HrqwgA1iKGhJUR6mnyaf/0JNCqCv9tB5ZGJHeXeTghXa7Ue3/SEa+4yYHErpI7LDmeErRI/gcLn4Y0RBwD2maIHS+9t7Q==","layer_level":2},{"id":"f8fd1bad-dcd1-435a-a4ac-0686a31badc3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"收藏管理","description":"favorites-management","prompt":"为收藏管理功能创建详细技术文档。深入介绍收藏列表获取、添加收藏、取消收藏、收藏状态检查等核心功能实现。详细说明收藏数据模型设计、数据库表结构、关联查询优化。包含用户认证中间件集成、权限控制机制、开发环境测试用户ID处理。解释收藏状态检查算法、重复收藏处理、异常错误处理策略。提供完整的RESTful API接口文档,包括HTTP方法、URL模式、请求参数、响应格式。包含性能优化建议、缓存策略、并发控制机制。解释收藏数据的生命周期管理、清理策略、数据一致性保证。","parent_id":"96a4f32c-e94c-4d2b-b1a2-05d464dc2392","progress_status":"completed","dependent_files":"server/src/modules/favorites/favorites.controller.ts,server/src/modules/favorites/favorites.service.ts,server/src/modules/favorites/favorites.controller.js,server/src/modules/favorites/favorites.service.js","gmt_create":"2026-05-13T22:54:34.5047404+08:00","gmt_modified":"2026-05-14T00:04:00.721935+08:00","raw_data":"WikiEncrypted:jPzyL5KINUJbEiQ9hSawcOc3AFdhBymZTKXr1S9mJy4rTE4x3DDBoBL1A9lqb/y1OohqTfXLJCrmgUGDJRwM1lYKVdYEMuuPFPEfUoffKYEiGUP8K2UnEkXdB7iijyFJG8aQiO9DuQXLZS7y+WklRnH6fQsWLrUzzVWqwptYUqmYQxtXgNrUZemOg9FqVyT4Q0WxCif24wv4yuDMz8Aww4ug5SnewZrE4oo1nWluOXUEEXRIvblby+Ntbv0FX3OEn6XQNGxh/z4Xha6HBLxqLC1FzPOsniyiZ/RnAZYhKQdT/nC3lQ6nq9V4QeQIiZuJQ8GEYpNHz8lnchYLO5Q5iRp+q34CGKjrjs8YYGJi7X2IweoaTMJncRxrUvDbg/eO5bgbBZr68WRNMBxB8fGt6s4jFZAqDuc+PrGZz6ZX9HjeYFDp5rgzucUAT+PhAtxDsE+xO1B6rtsXVdkm+kptotRYNVYIOHoHwMDjctO4rLDVoxWCpXvMCmCUL/jgyaCPv0ok2SPKboYh4sSv3whX+HfjMjjUg/oGTrwYHjh3JnpyntLwYeVeb1u0XDJ7MI77/b4IJzEyHNyLuYwOeftoMdG45pF5gKwH+NdrHNa13do66sS6RP+xbQzewppHnIE7RkaiLTzBw04wB/qRskXdt9LetXKt37797tC3e9v2/P/VM2NcHr3zOI28ERFm4xP3Uv35hfAy9g4T6rmKRL9m7lroOEeBqg0UnhjPLFuTTphNcGRwY5axU9R0LUBS57Q8pzv9OWuBriLBDNPDS0aezfEpy+CbaX0qfQBGHRZb00RyxnLFhjfdkgVhDJj5Pz1p+5W1XBYvluj6JTAAiq3XqjltDAr7Wn3GkngiKRarC21whuul9lxjhJtJzhwfblTEm46DHxg/VRS57t75fZ/TGVGfWdebhqgn/7joKtg/I6Om3jvk1a3kcI78D6+F5DP6EU8TB7ZjJWN1uob+TYEYDo4gfJcZHx4r09Lz2iopGM/G5ghFPtQt+2jj9LDEuhN3EjLV3MuTkK0TmJziC3e4ytGhTklDul0Ld9yFD3Xf2IyGciZ/9cO+keUPHgpaQ9k0iY61JSgWXw00EuZWNbfqRbF1YMU3DuufCmggGKXNf9DlahAaS+iiyK3w+bvxjy1gvieJiu9e0OIk2KPdOIEoPLVBdJMloqIqEyln6/Mrhpzpct9t+Jinh+o1EvSizx9uUpITs31vM9lIfGiI0321+6LqSoB7bgPNU4MtZoNfTPsL66DIDlHjtWdmSdiHLXWJoJHCGjytyHKiM6nVfOyJjmD18R7zsUiKOsGMDEVjdt+tpIyIrBfEYRGbPUXDI0AHiEoaZQ4INvPYAVP6m+yQZyZRBjDRdo3hhoU08uGggrfy+6UyS9rKivxXBjCwBWMuuFvfVHjWDmXh+GiU0UmEUdAC12Rorm/xEHaNz5242ctEQodMRxf5NZRwtCrf+oly7+EhkPipZMVTBcDyDma/+ShWbAM6bhM85RMNk5EIcV5ljXqPEtF7083/sqAIBzhK","layer_level":2},{"id":"d1c81692-1005-4d96-a1b7-20e2b8d890b5","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"书籍模型(Book)","description":"book-model","prompt":"为AI有声书生成平台的Book模型创建详细文档。深入解释书籍实体的核心字段设计,包括标题(title)、副标题(subtitle)、描述(description)、封面URL(coverUrl)等元数据字段的业务含义和约束条件。详细说明书籍分类字段如受众(targetAudience)、风格(style)、规模(bookScale)的设计理念。重点解释生成状态管理字段(genStage、status、failedStage)的状态流转机制,包括草稿(draft)、大纲生成(outline)、内容生成(content)、已完成(complete)等不同阶段的转换规则。说明进度跟踪字段(progress)和章节数量(totalChapters)的计算方式。解释书籍与用户的关联关系(userId)以及与章节的一对多关系(chapters)。提供书籍创建、更新、查询的API使用示例和最佳实践。","parent_id":"44b7fefa-24b0-4882-a5cb-b1eb5db75bac","progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/book-generator/book-generator.types.ts","gmt_create":"2026-05-13T22:54:43.4117798+08:00","gmt_modified":"2026-05-14T00:05:49.7751154+08:00","raw_data":"WikiEncrypted:szYT+fefEk2Q9RhdFt+BvFSC5F4mhnfgvWiefq+ePaxHQcnTDZdrZ2X+mM1AhfErq8uOTbYw6cgcRX9dxGWb2+0cdWcWsXRO2CTtGr84VP8TRSWe3cCO+LpOSRgIt/WaRsPDjpgM1HsMaCi/VZtSAlGXGDPEsvCz6xwYx2drJ3/mZdFdoNy5HagkZC4JZ8D2CzRb4g8jf7xjQOZXkQenuA1HFDVh+yJ+zkaWZCTmoR7w/7Nu5zw+pHRmLoUNglTDvSKUdHJlLhkUoO+gGopV6swJD++GQw4CbY2RfNKQqzfJRa2IP4KsS3SoJwS7IEZwxG5+YTjrLWFK/HQDkZmzpUA/y8+AShVyr2dwvs6mS7ql9WdDAz/6cCWMCKGzjXB2QJf/YifbaeBxuZxaFJQTx6dkaGMeRp5eizZqkJRHseEI6E61gS9jKBHOb30VWaylFjSQBamabpCuKX90CBn8P39viHwxpnyASqeewB0hiEmu6QXuzogBaFicgGdCB1H8+jXzVYJ9iri0Gwo/dy7VdI/7KiSsGeSPxnBTAUy5zDRXu5VfGKZSVgk3BTFOX71inq8ZDNO1mwX90t6BqsYW6AxzouWNbF87/EuyBLZD57wwFkBBY4zjjwhPFcCld5ooXD1eGnDybjI6sEIXjxnoTSWPfx0/8lT5K5/iQUsLPH5pXCE22AP9770pBganwoZ4j8gHf9bvpWHAFwdCAB5naf03UaViBlDbsgJUsaF63BcNgh3WwlyJV/FnYg+uo+lgpG1kivlM9C2Zo5zIIyQWbcP6IZK2dYsZHM+HlxMcwkr6r7UeTOjU4kspn9N+FSQlplZ+RZrsvnc3zywb6/GlyJxaXJYxyOMaGRkrD+PDs057myiYwiX9iSOnEwg9dr9nqdEazIpQ08fTFX00nLqWOAFsBtuJp0KYc2zr8xJmOfBznMPA2foYZLl+LOnIEGqQBvGB7WfqDuWHcKWq4K3Ixh/qqn1itL8z+5l/NGHc3+V0QSIUL16F4P8fDblCjtQB6FFRhBHJm9ApxvGVZ/7u/E2hRe687V02t+uaEI8GNUMsygUMta5tusUcSZ5iInJ0wF46gLV1ZonZFAb456XSbM2iz1bgcFMSDlqEw648t9UPxTRlAaX5E7hAK5qwEz5gVzR3Uqy9dHD+oY1SJATTIBktgGlk7Ezyon4r1l7JAz3HFSHVAuiHtEBM/vJejcvZ0ICHG3XIKi9tvAoqhROyBbmd24ahy7ncE7J2z0hAfmVCcX8hI3ZzZimn1HKrZqiDAPu+YiVNJmYJ+MX6YJDn16T8Rqqom6JDm0ku7OiaxF0X1gkIEMjqccNqCLzcx4TV0I9o9wZzbhne7ZluhH6L210ajDJDWZqITnB1IKyKxuLOufmpl9uVjjjZDthrHYUCymyU1y/lgJGT0Qd1aW4CY4znYFFSg1z7ass7iE0MfP2k6/2lnxnDADO8wHHWGonb7BTTAxUn8SV72fno9pQXXkKSjwfCaXg+Hk8H9ttyC8F2zokODGVKT5krKon3uBOQiQEgPsNfftyh0u6v5W1cHzfRXB6PjTXU/zyyLlt8Epg=","layer_level":2},{"id":"d9411afe-1768-46ee-9c45-83f8f4e97634","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户基本信息","description":"user-basic-info","prompt":"为AI有声书生成平台创建用户基本信息模型详细文档。深入解释User模型中的核心字段定义,包括id主键自增、phone手机号唯一索引、openid第三方登录标识、nickname昵称默认值、avatar头像URL等基本属性。详细说明字段的数据类型、约束条件和业务含义,解释为什么某些字段允许为空以及默认值的设计考虑。提供用户注册、登录验证、信息更新等常见操作的实现示例,包括手机号绑定、OpenID关联、昵称修改等场景的具体代码实现。","parent_id":"56a87613-98ab-47bb-a173-5228193aee92","progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/auth/auth.service.ts,server/src/modules/member/member.service.ts","gmt_create":"2026-05-13T22:54:43.6730869+08:00","gmt_modified":"2026-05-14T00:06:53.3955757+08:00","raw_data":"WikiEncrypted:UfwrP/uwcngPNRXGKE06Cfy0PkZSm8VSqVZqjOu2OKrhpUQSLq5FBnMllSso/zj/2wIqTQRKEMi7QqEzfXUdgfjOWT62yJEN6AbKUvay/GsQIpN6HzCkrUBzWZAFOZyHwGRmUx4SJu67pnRqW7frbd7waAhzD8xvtCjmuhoXzGhevzyx9jD/M/JCyj5Zz55bHb6FFn7yPlqwNlpKZmGYo+MdRMoAa09oqRBRqv+YIwG7GdxVbBpYI/RfjDi3sUvsPF8hXknyEOMIfwaWPQD7gf5pe6GIksW0oxr4r9qsp2KHOYcFyAzyj1ED1xp9TT7ggcavJdVfyszFxWa4suQ5C9jAb/jV6eREG/wFHzAjmUYcFzkwme+m6mg2AnZOWajSwNWwY+yN3hhKxddAQ7S+TkPSCQCXEmcXgn8wGf5UpBc2+PjsdJJHXyMeKDgdeGMViy7kquaQm6RztQed/op3drcGnx6Qj+fRiXzcZYcSg1zshlAzak8WRlH2D9HeT/4VFwaOobhhO2B8IPBaIegC+H958lQ8CpxVrIM0WadSJN6znlskHvmsq3x4B1Z6S1mY1ZA0WiQdnW8OKyiZnOq5uLge7ySb8Tu35A5Utt1qaRbLIQmoQdzUGUDLt7h642fheZX8ubWs1TjuNcu6H7bQuYxrQ8YVcL5nkSmvOKaVOWcns1/E9aq8xV1b4YJDveMERc5GQzjJX92xl3BRTfgATcSpJDUuLmXie05hrb8JQGD5TZDaEk0v45H3jdjNqa0WoJw1gueH5Ms3rOvqKaEUTT+f1OA14HEJQcb72NGkah0LNLl92qRmsUTbEWZvxyW3nFrQ7V31ZOuHfKo3FkPKUHA7Uii7bvtcHz6jYJ8B56CrPQO/S+aM42D1DIUYScSpPgq97Fhd1L6ebz6iVVvEOUzgoOB41yZPfW0wHewb+5LdJJyYdC5rGVeZ6QZxiNflxO0VLbcUkGuzRHzWqRMUpkopOdFk1kE35aR0WNDpbhTEvcUXyf8bv2fmFObBORYfNVQLFsMzLu5erk4tnbT3ZsCMS2FP2txliwsq8BEQHnE2dxE8tPo8rKvIpV44kTVR8D9sme2n5icksqepa6HVxsM5HhKj7/o9qcrQspQj+J0hTwKcmbLiM3U5pMUvkMTXfU59rACoi+n6gMVbZr8hxGaVUJjvy4duQ3Wb9StLoxwjHCLW0KHQjLw7qzU7JtfQdJaJF2JJSoRfBqd2kePX3LdkWiJcDQVY4IB17T7EGAXIYtkb+YYECrPgF13PZxls0YJjw0OYio9A2CfbmLkzgg==","layer_level":2},{"id":"77168476-ffb6-4aa9-8be5-4db36e4549ba","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户与订阅模型","description":"user-subscription-models","prompt":"为AI有声书生成平台创建用户与订阅模型详细文档。深入解释User模型、Subscription模型、SubscriptionPlan模型之间的关系和业务逻辑。详细说明用户等级管理、会员到期时间、每日使用量统计等用户属性的设计。解释订阅计划的定价策略、会员权益、自动续费机制等订阅功能的数据结构。提供用户注册登录流程、会员升级降级、订阅状态管理等业务场景的API使用示例,以及用户行为分析和会员转化率统计的实现方法。","parent_id":"aaf4b31c-af75-4cc4-99a5-d5e6f829f80b","progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/auth/auth.service.ts,server/src/modules/subscription/subscription.service.ts","gmt_create":"2026-05-13T22:54:57.077891+08:00","gmt_modified":"2026-05-14T00:07:17.2504321+08:00","raw_data":"WikiEncrypted:7GMpDAULkInIjOJUaNlZ4jek/UP5LmhyI+xmoOAQ20xhSGGLFop9H9jsjOknJGdPgU0AAaRjhK7PlzNebWJfzWe8FQ7tpoOCt0WzRaNR/j7NSuba9y9ZUrCDDVKAZkji2Zss0Zed6GvP9LH/+LG/3+meaBatVqTByEj8daAjwsXcZOcmJS5kiZUsXKCk5WVAhmg0oo7th3NWQyrO1I3zkEheE0iw701NR7IgQEuGm1FdkrShjEsewJ/IHTSh6GdyysC4r+GdLFAD3CfBy/yEhWwFFjnfyMDhaPhgnwojqDzX0BzvRGRWX6oXt5UFnh5KYbAx+wfT9RvEnKvkaxEP2J1XPHzhEiIQGpkiYobrRP/dhdi5fa0UGY0eZLO7gF7slre9Aj/6626yWaKfAszF8cUK+CU9qCtbS0jwVABcU7HqKFdCCizcEETbYAobOY81jjsgdcE3TJTfBwB8PpfQWWnWBTyFqz1KQeuFHj2toXEJxNIcvcTfzgaAgdXknupdvhLKGbGkj6Oyxn4ix5ne+XiCNhmDPUeUkq8NDl81k7UkmBjFkJFmlMYDUNDb+F0TQi13hHWqsnIAmk4sAkBBkzjsYvBJSOq0a2B73+SOh7wX12x6O6rTtWsv0YzSaZ6LKPtEDqgLNYdjRSm+LOh3ByiZds5rwALi7IzsQkbEHRJQGPday0006Kjn3qzuo2dMn4xSk9yRURw5EDm+aFbZlXy/LM9iwrf0TzngmFIAhDlGC+ZUaDEbdlVgvQb6ydMVuXueT7MNJ3y6gjCLk6Gjjl2vjvHYxz5T5HLsSJ0RPP9BsMdpkzvOk81nqPyrUZ5HcCmeo3RB3qHboGyy9t7DZeWio/+W+d5B+dUAyYDWFicT4Vwk1HDjUxf+rmfA5kqufmNR4e3R1pNqBW90LCtKFy0EinnJ64yNRewue16klg7AaMLOJ5RLXvtvrlWoCiMeU9brphUSmC8ZDPDRV6Z+JLwebzLxwakGYRDeKZjo5fqX2ib9RhrAHUUWMiUaQp8Hqf4Qt1RQSQRQ87MD3AXkwbBs4D/0OTUbP67pnxQEphoII7kn3jJyabZ0IzfFiiUmCRrzYtJXi2W+M6+rltaBp1NKB8GnJ+nr37ufY/SGLL/QfDmo+s9coqV7cGEUMed7p23uUdwYrqBfNOSNjt7VWVYCkc4XCIrpcl+PyUEZf2ommLMjAMPtD0KB2msKVCiVYHlgmCY1F3L9yuLJjz+8uG1MF+Xw/deZt0d2vun5GydfOvQpUeifQI2YooY8BR9vR+/pXWaf/nkj8vxP218kzR+duYqqQwZ6IR/vOdWRMGqJ503A90KEvlWdKg01Nc4pWeyvllisEZgCxHAcY/mSaw==","layer_level":2},{"id":"f0b892dd-e0e6-46e4-81a0-51d41f86862d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"通用组件","description":"common-components","prompt":"为AI有声书生成平台的通用组件创建详细文档。深入解析MiniPlayer迷你播放器组件的实现原理,包括播放控制、进度显示、状态管理等功能。详细说明LazyImage懒加载图片组件的性能优化策略和实现细节。解释Skeleton骨架屏组件在用户体验和性能方面的设计考虑。阐述AudioDownload音频下载组件的功能特性和使用场景。分析GenerationStatusBadge生成状态徽章的视觉设计和交互逻辑。介绍NetworkStatus网络状态组件的检测机制和提示策略。提供组件属性配置、事件处理、生命周期管理和性能优化的最佳实践。","parent_id":"2c378c6c-03ea-4edb-b220-6948e511e14d","progress_status":"completed","dependent_files":"my-uniapp-vue3/src/components/MiniPlayer.vue,my-uniapp-vue3/src/components/LazyImage.vue,my-uniapp-vue3/src/components/Skeleton.vue,my-uniapp-vue3/src/components/SkeletonList.vue,my-uniapp-vue3/src/components/AudioDownload.vue,my-uniapp-vue3/src/components/GenerationStatusBadge.vue,my-uniapp-vue3/src/components/NetworkStatus.vue","gmt_create":"2026-05-13T22:55:07.5677514+08:00","gmt_modified":"2026-05-14T00:08:23.5841385+08:00","raw_data":"WikiEncrypted:xN69xsyfHUnwfU68aQhW4XXXh5D/mKXwVg50pcc4uCMR9g9TiKluPhxjAaJtBWTCy6FPn2wRnssSDEXkTrqc++nB+iF/uU1ACYI96uaOgL6nK6YzTgk9SX9aa6B/X8CteSheTKlkfbJJ47VPDIlchcBsvkgzSjYNPD0pA8EaJOL021GTbcynGlcG2L82EzHUUDa/9aTJFbs1TWe5AqX1WF9c58BnRAg7D68QGILm+j/pP3fLDGsNQBrKUig+AhjJBdAyJxmgI2s/zPoLaZ07Esbhm1hpjeInJDtuHuiRMGjYt6YgJidv0zNJiUEwHMx9F3OSatg0SANjsF9cZZshc08Zennnzq5d00B35EK4d2Gxu/sDlRhyhop62DNVh+rNy5vhON7zZs1UPXfMECSBeH+nBin1X2gQuQ2gYkL61s7QaKs7+iFBh0V4EDQCtBBkVfakA+MhUlXryaxDuWbWkHpLI16wi97ZVMFyIBjpB2TKQrODo+sVPKrG8p74evt5RPULXG1eJuHaNG85h61gk/xgPpEL4WPjUlPvxbgmFZjXZ0Z0gnB1avSvagE7c16qmLzFVqpA062ZcoSlEk/78wklBDZKWnPlTXLgDTgM9Xq/WnM9Z6SE94JV98LfSL+SEt98dMdjsX1jcPaESNuiWYABe4r9kiq/njE5GKPfJ2e5x3kLUYoNnCpv3c73D0xDlH4FWd54krBfWNCy4jU5cH4k6hPpWfQQRgrCmLsQJzJS5iETLqSaxAQCQnENlyO/a6jBpDtmH/3jzmLBCEvUl8hveHP6QSzIfvn1wcC/jg4sTZ+BUeFs8xizfXBP7yNQZcoO+J7WY5lxOovrWRU3BtF9VqKP8gWFXzUr4PLQOroLdKWkFFAqKIPNZb8fQE31fezm4SJXJ3kbOKJAgqwvaYmIHvhc4xTXLbrIF25L4un01rAe66iZxNig/1d7E4/2hz+ZCqU+CBziQSP49oKfzhMyAt34ZY970XlWp/hykVM2q+Xefhp2nkWA+6oM1u1Ru0dgq7662cVXZVb1tvOInBxAbyxwbLtTtAZQK+CsKN77TffdOx7x/DECSjGIM7i7QVJa0YNNiZYbsaZzRROI/uZsMtkL12sR96nsHcUYX22qQejkzKJS4vajb4ytjhk0oAgbfn7uf88NCGnODyUtDpfTmWI68ndOCbKS/Rg21RwI7lCaJCwymHnS8dZ6kNq7R/VZwalJUye1x5sxBNf9jC5Fqbw9x5KHPnZVu6DH51ELIlJOXk2Nfy2BqP88DQPCK5QopUJgMWfFZiFfaeUKam/oVpC6xayCVPf4g7p3OTrTnqNfEFLLnAG59Knx2QSjDUchJLBc/8Zc7vVzXGmAfafVnNqMoUpn7ch549j4K9bk8onf61A11lgn7Hp9l0Gdj7n8kwLivRbNTvb6cidt2IZhwN5vP8LZr2H2wutEnFc3R9jMs+jpj8iLH+J6LmysGKD2ZYlxMZhL9Y4kPWjq8RVkyIvcZzEmEkigOzUIDPOIgcj2kmq/rAJ1WR4ACuuJheQ8TqpmSL/ii5geTBRGlBBUqBf9cdBUYIcpBh0aGyVDlPKTmvMTCqafD1k9ax0O53jyuEqrzQvEELsq+HovaZ0NQ5CXHUaVfILpAp0I/BVMznVuEfiVroaRD1lYfE6Wvzn4S++8KCY8uqlhW+AxW/PX421sLZW8uhf/Cfgh+1a96JxPz/OPtfdBR/thDAKshlKCE66o1Sx8VW+4Gn2Gx0OViWp+oulmdKpBbsWd0RvwMk3is6u3Zfc5JfaCD2L7DJB6er3v3gu0AeBesMbVMA==","layer_level":2},{"id":"b13cd866-da7c-4ebd-a068-44c717555113","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频记录模型","description":"audio-record-model","prompt":"为AI有声书生成平台创建音频记录模型详细文档。深入解释AudioRecord模型的字段设计,包括audioId唯一标识符、title标题、text文本内容、wordCount字数统计、voiceId音色ID、voiceParams音色参数、audioUrl音频URL、audioDuration音频时长、audioSize文件大小、status状态、errorMsg错误信息等字段的用途和约束条件。详细说明音频文件的生命周期管理,从创建到完成的各个状态转换,包括processing处理中、completed完成、failed失败等状态。解释音频文件与用户、书籍的关联关系,以及音频文件的存储策略和URL生成机制。提供音频文件上传、下载、删除等操作的实现示例,以及音频文件的缓存和CDN分发策略。","parent_id":"83d0b783-d35d-4a8a-a303-9cc9b9c2d4ca","progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/tts/tts.service.ts,server/src/modules/audio/audio.service.ts","gmt_create":"2026-05-13T22:55:13.5846659+08:00","gmt_modified":"2026-05-14T00:08:41.2086212+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrOFn/m6yNMR3SVYKOJWT4tzodtbQ5Fmmpg+wwZgPDt1QIiM/yL07+PEp37IEoNG8GfgRafqXhIMm998DE8LM1VIjV/+MBi+wrOFWgY7xiR9QmOmHNXd0IdP5bCUDvvMWay4E4upvILBLlLRDlsU3Ewr2SemV1WWX/bBSGLHKN4jY4j1YyxUlWwVwX4pnqoGWD4zA0Z5h2CiU57r/lmuirmqjaWfvjv6jJigqEC7DWVQdJ2mvodO21spxMejPcZnK1t8q3RBqOGk/yYv2F1a1hRYwIDzW9+WwoB9cU1nVNtbcSrKsEJ28hkBRVWTQYfd5I8VEr0OB41HNhDfqRq8PdGFzOEPVqJn2t5k/NB7XKS/g5Fl/SpJgUjWU9lO6DtI41xYazLG/T28B9g3bdaD7GPXJPzooh/ZEVMvlHkdSKCSL3L2LvG5Pjn4OjLHExwoLLSXN2yhIY4+7f6DjMOa3zuxd09V708Vga0/XhWeQMKyGmT6S3SlA+NwvSiIDLTLC4e6M08blK2DpbGRTuK1XA7BG/BwejdbMzn2NT6x3aHemHOU4dazDFKTToBLsk6f5rBomj97EixNL9ocwnJwZibY4QUR4Ww7oKfN3Y5q4gHZHOoXpBrD6gF2Dsb4SNINf2dT+oLo6eGin2MY4XVTnR5b/2/FhILUZVDEz9lpAkn+S5SB/iTLIL6beueauv+dfJLUYyKibMQQ/LbF6uzFQ8DqZM72c6aLcaHvoTEey5lkXKyfMnEGhWJvEgvZ3jUOOc12AyLYOZPWqdSX0YZEj0PH2jkaE2HMWNwYwLLGzVux2QRr7fC2Whkpe5jP16KdOtfhtfkc2PNWZJ4/WcTYKyMGYcbjZ8+PqiYth3M43Om89+R3JJAbpybAHbOWl4MyHkmZpQ6mA/0XhwpR+UmCBPhu35+YYD8cTR/AMgtWbpB0n78iyKH/u9ONh6qDvgEJdNZTP9wdMc0qU+wiUHMSaTrpE/UjfR1g+le4d6EvTuVokgU2f14JHMTU5qi4ec70q59LYHQG5Kvoc33FI1mCJmOYk9s8NvwgiH77t3u8p5MTn/NQFx0J49bW4Si31dUMwOijLdIjKAVbHWpr5E23KQgCQPNdqsLuWNiurtGA+tBenrwpKQAPGK73OfoYUTbjCXPMYzHz0SJ2cSzoW+YssuWBZGfuYEhCkr+g0ixWf/gM2JuIula3ix383xp8Sk/3P6i3dtOLPWcAtu7KaBm3tYc7t7YNIkasHD4HyKC+N50x9u3ZrH9QMz56MkTbDdaD7c/6f2Ue5bX7fLvLJxhS0hkENp9kfKz+Z1RprlgxHalSFFy7i0WDz6Bayz2ee1IqQxxgVXSp0oMc/qRG0XAyMgoclmKc7O3HA9d4GFJIXYlvBgBppkMmJxtRSBct0IvEMWAWuwQnycxeyqx9y7jUOQXEJx0/1WrLRA1H5jmbHI+md8siDc1U9HIwJGgOPt1rc21CwiQv27dqKpHQ+i7QncuvzZUzFvhL8rGm1MUeayRiMA6/miV8iqjXJFxHLs4/SuQ==","layer_level":2},{"id":"834654bb-375b-484a-b19e-f12e303c67d2","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"收藏数据模型","description":"favorite-model","prompt":"为AI有声书生成平台的收藏功能创建详细的收藏数据模型文档。深入解释Favorite模型的字段定义、关系映射和业务逻辑。详细说明收藏与用户(User)、书籍(Book)之间的多对多关系设计,包括唯一约束(userId, bookId)确保用户不能重复收藏同一本书。解释收藏数据的增删改查操作,包括收藏列表查询、批量收藏管理、收藏状态同步等功能的实现方式。提供收藏功能的API使用示例,包括添加收藏、取消收藏、获取收藏列表等常见操作的代码实现。说明收藏数据在前端展示中的应用场景和性能优化策略。","parent_id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/favorites/favorites.controller.ts,server/src/modules/favorites/favorites.service.ts","gmt_create":"2026-05-13T22:55:15.3900159+08:00","gmt_modified":"2026-05-14T00:09:02.9053921+08:00","raw_data":"WikiEncrypted:jPzyL5KINUJbEiQ9hSawcPS8MVaYmszQ8fPGXmt+Bc0uO+UHEV5Z0fZJ1e07kJ6w1hNBd1SNk9FLO6DX3p7WcZYGLKo4Dfxc/H+QDfzaQYYVyQ/TSYYAH6BE3hT+DvlrCWlkWc6hUvg1+8BmiI4GHBIun/b6TPzKN9kD2S+DlRbgsdtdCwS2a4/jlpiUapcUgOPc7DdqakY597uz9MfmvcYW9gTlUcU1KN2LY0cpeSkFMm5ZhQ8DCTPbPN0rxozok44hf5m43T5FlHbR9fDlOA5PUNHpFoC+NZ3JoorgP1f6yyYTTEPF83cEpG6G6knTOtyBuPpECXaFoBbnpkT6ubxp9T6tbkx2+7lx3SIPCyW/hUPc7l/hFttsUzJCxkttccW8vbjnrHGhAodo4ObuVdtCqzaEURb4VCnQAfDSrkVPxb/giCZrntGQlb5xML0mVc3XRKXXvpp9cPLVY7XSmAWnCBObWo5OWY0g3yVJzsv3GlczTywSAARHO1z/zlQv5g5/LvWq9we22mX2d5VP9vhLytu+dFHZM9734w93yJb5aYGcNfjaG+mNkpDpU6KWhMEuvZcvvBRE/+LdhmEAIIDb6ENN0rj6MkoRB5L7oFEBoAGBvc1QcXPgB7lAXGYERAEJDQXlsStdqcv0UvZiGKW86+uNdE46R2B2NbIvacGCo1mOPBck08OYvsPsd8qTLQ2El3DuCSqzmDbSUkU6rqtvNNlSJnzjPWCHTAtYOyPrS1eGHfNWqfJYTRgY0B7wc/TvPW23hMddxsxDrV4hGqxGdqWTocdErj5b+cMTjlrsXXwVWfg27b1lUCi0eKfO4gRxSDZlx8MZDkJjWXE5oxnpmqshVHrjAGUrh8f2wDOcvBrKVypcPXlQkw3NUHhLtUsP+yYgoWry7vtCoxlVSWdKtLSYBkas5bvusVx1dfEqNxnL7EexCLioFX+w9H7vvYdAakaj5bUByaVfWcTYyu2R0tAHYVFOqj5vrQx/pK63z8hysBcnHTXyYpPNluGwhh+rdWcffdcQXsPHNrhYjf1CVtAhTeyRnVYCYZ928KCPdTLECVDMoPsOIi2fH/IMxF5aTBRlZPqeg/QJHfGNRizcftyEEuLFLwRpHkSP7oKc3ycUR/4R3hHkGw5EJ7xJBMPRF1a2+nT8Nm8RNRnL4ipUuKj1CF3BcN8GmhiwivWQGX+y+crLWhetL8gNvjaEG7MKJxpBKQLHFuitYC+30qTKtQt6oolJRMBMuEewTSLVbrQ8EC1xFo/tXeLJnb0W3+iysJQTT/JPoqciS4bIOF9wMO1otDtp74T+iOrqq7KnwROgDvHThZ9Or2UGEWisJVEOfPB6yImvX3BNI+2UnWENRzdb9cJMVV0Ct06hv3U=","layer_level":2},{"id":"da33c9b4-9107-4046-9752-a9099d91fff2","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"套餐管理","description":"subscription-plans","prompt":"为套餐管理系统创建详细的业务文档。深入解释不同套餐级别的功能差异和定价策略,包括免费版、标准版、高级版等套餐的具体权益对比。详细描述套餐配置管理,包括套餐属性定义、价格设置、功能权限映射和有效期管理。阐述套餐变更流程,包括升级、降级、续费和取消的操作逻辑。说明套餐与用户权益的绑定机制,包括功能解锁、配额分配和优先级设置。提供套餐管理的API接口文档和实际使用示例。","parent_id":"a039ba68-0f9d-4f92-a4a4-d02242720fc0","progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts","gmt_create":"2026-05-13T22:55:27.5723979+08:00","gmt_modified":"2026-05-14T00:41:05.5338425+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqOAZNLlTSWvyP1RvftpsU2pBuKIEVFXkdORmE9odq4JtmKDk8YtySyFvozI3eqJChnf/TRy7nfKwus1ZajQrZlM3jXCBPUUDDedHRnD/GF6XUNXQXei+SoS3MvHlXnF1bAocO/ch7JG+Hd8dOWTj5TTniNNhfGpCWE5gxt61w1lsBbWvxs7idZpxN1NCNGo5wpGCE0oeoKW5ABuHMripnIJji5taHidYSYPsz0qlkapIdvtG2zCKR5wwFU+7Am7SArsg8OOmH9cx/1ggc7oIAToZKGUK57SUus92UmnGXhZEug81Bj1+bsbeAOzRfQYpDQ/m87i8TLu2D2xM1rYjQYY78EwN+/LiXDO3Fmw6UNP9oLQDXgoy0RJ8ke5vvyM76/sNiN2AeLtGYcm/G25KlyHmD3gmWzAWva0t01BWQlx2odrQCzDMZ11EFbb1DB67S1Sglb6Zbm7kHdQaO+IkckdfjzLO4eGMR8KJTMa4DpRWTknNzmXzixDtpWu+5Kp6OZldcIQxIXfPV0IKA4eTX+xUcKzEGkD+SQpmx3kns+c87o7gdCTzZ1zsx4jHzjJY+/S6tC+Mz1Vf5Ke8yVelpG/Qq8kWtuZf3CUjRbJkHF6qnhh2Strg4+S0mpXlKOgVjKWvcnrqrcCnW/DQTtJq4aFjmpDi0hTxpN6Nb9yDPYsLkNbxhJR8IijAOctnk98dkfee6aQVP1x7/L2kMAinicq0TNquKKwzFQtldy8SFKlC0+V1QOEuhfbcW8+OcxFWHtUCvZEFMJIFdHaOMTKzm1pv6qAXtq0rJ8UinbI2LMNbDTToqzMuZ1W01730VgHt7AcRJD7aebMAuWptBbizOHSOQZT6riFdyfsL0WGolHVUV1lgPfsRHu32wTjvon156yoRXTE4TUxsnQIXvTj5eSH4VEGz/ug3gw2Ue1c1tZJ65UO12rvSNw7Gg2j52Kw8iCBDHP1az78RFHcQPnXC9O5WlhiIJQQmz8xeOBxy/8wHAL6qth/9rm4gCsYVB9MqrVujO3082zWCsSt7c4StX9d2IOyYW6nvGuk8xko2QXvJIT/QVvOSP73W5n7Yk2tVVwF7s9rRX62lyn5o7zY6NAUjmf3EpAR8nu6hLeSYNGNdFMooZqfEw+GIseum7gl0PfRz/PB9bWKMMrGkTJmEhy4=","layer_level":3},{"id":"dada946f-e6a3-4095-ac0f-6b9090600085","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户认证系统","description":"user-authentication","prompt":"为用户认证系统创建详细的技术文档。深入介绍手机号登录流程、JWT令牌生成与验证机制、权限控制策略。详细说明认证中间件的实现原理、Token刷新机制、用户会话管理。包含用户注册登录的完整流程、安全验证机制、密码加密存储、验证码发送与验证。提供具体的代码示例展示如何在控制器中使用认证中间件、如何进行权限检查、如何处理认证异常。文档应涵盖移动端登录适配、多设备登录管理、登录状态持久化等实际应用场景。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","progress_status":"completed","dependent_files":"server/src/modules/auth/auth.controller.ts,server/src/modules/auth/auth.service.ts,server/src/middleware/auth.ts,server/src/modules/member/member.controller.ts,server/src/modules/member/member.service.ts","gmt_create":"2026-05-13T22:55:34.813415+08:00","gmt_modified":"2026-05-14T00:41:26.3406486+08:00","raw_data":"WikiEncrypted:SmmNTSq96N8aZksVSKE+83PC+cNK/DfBO+OUzl7+L2l2e/CIGqmnuvQf7qkuacMm4P98mkP4o/xYNjRUdWok0Xj63/TGC513Z37FlO8TMc+rJZM1CRDHeAn/vYDPSpCe1MgpPB6Ajnzk6j+wcCqhSTMkqfwRn3+/rvSZRJTuHxALzBJuWngUMtKaGMXpU+Fzi3YSQX+kU8vPJ/I92Umh/g97PLwQtb5rqth+2KKxQm2uw1JNOaNqz4u8HHLTkotcDYwTXh/+Y2qWMXMz3dqo6mNq1AX7nKo6CkltEvuqMdus8oFR13RHBanYN+oAq+YPZn5sjB9LQY8XB/yRi9+48c0Rc3X9yokNkhpTLEVlQy4R5EPe2zC6mMFSLG1TKTKnqxJYMtbgoFyDwWV4SDuH5r2xcdNBN9aJ5qJkXNYtcaQfySmM4T9JA51aBTwTiWQXiN7MLflUL2G3T/oPqR1/ZD44wyaw/WdaBhDpKZhqPfrj9MFSeDv8yV7ePGS4nRX5QKYU0WPlC4870wDhTJIOjC2bSQg1+akMI+3Ie5zS59zunYuwAh7PgQKMnvj0Vco+gsZNlc9NoxgFsNQVgfcGl0cCbFNxGTHCGKCJRFixIwIyWKI+cSolauj3z98vkVPiebT+qNxuRMCA/N094rHtKBBpOY6L9++uK+VGpfwI8YY1y2AqOZmxw+kerD7D8c0MPRnucS2Z5tWDXj2CrouMfFae6G/8lvcDIqsRuNXsb2rKul+XGooJKy/6E+Sw0l1Ot63HxEQBrOkhZ+SqbFkn60eQ/LlcT+GmvgzhA04PFXiOgzT6EGq6hqQ6Ok0B7NWbAtlhobZE1aFzOTZTq1uEhdm9q2EqiggOEgPTFlWcQfFEe5lGTnxzJThzOq3rue+6lkHG17at1qO5qp5CFxPrVlb/1gIY999QGXiReysuAQ9mfKcSDA15i6Tx+MwxuvjIbO7ZQTkYiJXKqhhlra2GCFrxMaLz2cu6DCPBYy1ypK4/TC63pZ4uar4lskPqBhn80IOBTTOmgUUrSEjOshpOFatwMwk+b3VW6XWWOCwSFZJ/HYwCLKVQeFWq0emzi/cVRxhQ7t1H16D5TeDmf5wVdjYUiYYyGE+X5gzv30tYiZGBhjY+Tlmcb7ZP+6M2F2sCsE/wWU40za4QaDn3fvbOhnucL6V0aoWR+yS9vMnUenJ5rcZWpV6ky8iTIab40ifBugcB36uH1HTMY3uT2lFfNeCfGwhPkG1UrE9uWmGlWF2Ha0/Gwq8bmAT54nXrvI/sxe5PypgXzh7IyOg8R2K/N8LPDLdEgUbUxVf9W5eUfjZAox0N7AC6nFw3FvQ/8f/IbjTd516kCl3IaYujv0eM8+43Z2cTkAiciyK4NZXh6NZb7mfB4PQG7m1Fw6x4vUirvhBusgxzPG2IdhY/DoQH09kgBY8h/vXLe3EwcZKoDaE=","layer_level":3},{"id":"cb8287fc-9b8e-43b5-b38d-59b9779660b9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"队列服务","description":"queue-service","prompt":"为AI有声书生成平台的队列服务创建详细文档。深入介绍基于Bull队列的异步任务处理机制,包括任务队列的创建、任务调度、优先级管理、重试策略。详细说明内存队列的实现原理和使用场景,队列处理器的工作流程,任务状态跟踪和监控。提供队列配置选项、性能调优参数、故障恢复机制。包含实际的代码示例,展示如何创建自定义队列任务、处理队列异常、监控队列性能。解释队列在AI书籍生成、TTS语音合成、视频生成等核心业务中的应用场景。","parent_id":"5128296a-f271-4be8-938a-fab632166600","progress_status":"completed","dependent_files":"server/src/services/queue.service.ts,server/src/services/memory-queue.ts,server/src/modules/book-generator/book-queue.processor.ts","gmt_create":"2026-05-13T22:55:35.441315+08:00","gmt_modified":"2026-05-14T00:43:05.5379193+08:00","raw_data":"WikiEncrypted:qQdXnddyNKkSLmZbNy1PAurXsTIhLC1TfY9sEQ2Hbohbv0Fpy3DteL/XiJ1loOC34RuofgOy8E7THcin2603gzjqCQBKEO9MPZrhtrP8UuhaNx6fFmEd2U5sfa+7hrVcRF9D9d9c7+EvSt4dD6/xdNJRI1MOmcm6iQDDaN6MVEnMkel0Zj5516BmNwHWVtykglZVqg3A4kkq26LqkfWnzorXx4uZwzNeftmdMnobT4v55cMZnv/sPPv3PirCmcUvMqUQSHQ5dmZsAsT0Kr6uEMdu5X3jQdSvPK/DvLsQwBq4e+JMvDi5wEVP2/314se/9kFI/rJCwXO/HsOwzgRFxo3XqWFsQfHEvHztwezhDHavaQm2a8/g3iMsokNNPwBVcaG9+VdXldqqMEILi4NbN8lXpglBCplGk0QCMMr/a8qdOn8AQ0YipA1hmIPCKo7HUIrFjQHcwQJ5GNAKnS5oYEyn4fZ8n6QUvx8Z0HmT42iz92kWcROmrGWTS20iYWcmFFJV/S47gaHD7VKrfQlx+Rxd1HQ/gESdCyQNzuBtQ7j+iZOZ2KPI1MsMdbCeeRpJLch8ptzZmBcPHTrLfHjj7Wfz2AiXsyLdfC5N4gZZh1PF9EM9rnFXP8kTXQvhJqtQS8W1U5gtRu4MugBhsq4H3wgIRi1WSvUYMVSQ2eQ++edUwTgO/MVdrHhMLdU0PAjenAIjoBwCTo6OfYPU7c7YZcvvLRLXsF1TH2MNADskUSZiIvptWItr8ooHSpMFA0HpF64KDsDGMlTiHTkWxWi0a3mTY36N9Dq2SK66KbFpYO3zdTK59L+skS08LwEwbqdfCDAXcrZD7zhnaieMHvVkjU+aZFeA+iK4E69/Ow0EiBqPsnSuSAgK7TBPJRpkpY8+rgvbzwy2TrdN8HZJAEM97nmq1HNTqdglk3t7YEXQQkkpyEy3VD3IfE0Z3oEdLw4CF2QqW/TP/S+OiTso6CJ5lbYDN4Ts0dKdQGF0hbdDQFsbBO3tQNnqDfm3s3wLOpQLA1l0Ghq2sO6mJyYPGsT0C86PcLaqxzADgjtWl1lnR6cQw3fNaI2lHrGjR2YiyF/XaJMlYMX6v137rdFe+RzzffVSkJtvjsSS8sO8QFqiXLFYeTJPyfRZ8DtLEpZdKPRjE0NaP0BdtP8LFqSWDb9EZ2ol/QCCJ7rrs+BMgBEKAXWScN8yOKm9oakWhShQgf/PT/a71QTXbRNayHSwDA/ncc85O36wAhvS40PZyGEo/cyoCVuzXCJFB66uDEEz4Gjzbd+zjLTZM6rylwagVGKA8jhlyJoIr/Dbt9VxWd4odKkNrGAunYAffQjFHqIECkCg","layer_level":3},{"id":"b9a7958d-1f80-4fc2-9af6-58efd0ad4f29","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"收藏管理","description":"favorites-management","prompt":"为收藏管理功能创建详细的实现指南。深入解释收藏系统的完整实现,包括收藏列表获取、添加收藏、取消收藏和收藏状态检查等核心功能。详细说明收藏服务的业务逻辑,包括用户身份验证、音频ID验证和重复收藏处理机制。阐述收藏数据的存储结构和查询优化策略。提供收藏功能的API接口文档,包括HTTP方法、URL模式、请求参数和响应格式。介绍收藏功能在前端的应用场景和用户交互设计。包含常见问题的解决方案和性能优化建议。","parent_id":"f7b6e663-d6cc-474c-979d-d16f5d382722","progress_status":"completed","dependent_files":"server/src/modules/favorites/favorites.controller.ts,server/src/modules/favorites/favorites.service.ts","gmt_create":"2026-05-13T22:55:36.6453573+08:00","gmt_modified":"2026-05-14T00:43:06.7530475+08:00","raw_data":"WikiEncrypted:jPzyL5KINUJbEiQ9hSawcOc3AFdhBymZTKXr1S9mJy4rTE4x3DDBoBL1A9lqb/y1OohqTfXLJCrmgUGDJRwM1lYKVdYEMuuPFPEfUoffKYEiGUP8K2UnEkXdB7iijyFJG8aQiO9DuQXLZS7y+WklRnH6fQsWLrUzzVWqwptYUqmYQxtXgNrUZemOg9FqVyT4Q0WxCif24wv4yuDMz8Aww4ug5SnewZrE4oo1nWluOXXRFhZN3AQ2pCuWA5biHtx2wUnv8xONEJNvit8X6EURwL9YjgB14RBHmna5Z+Ls8YNPIU9odCVz0b2rFK4rarHCSSz8izMy8jrmTl7hJm87IqLMDVUA4F+sm3d5r6q3UiwS6CXX3RByxkT9HYEjQYdt4KC4cUbCeU8yifoBf5fQZlWg5DMccjw6zb4jWbd3iARb6TPoOQaJXNjGGAKokHmywveA+5gDxCkRyWCnla2agLGVgZ9+qpeovKVJHMMwgPdzNsSHS7zDsFlclU+50chEhlO3Q1VXy8r/2wi5kqj5YOwLkwHkcNjQhnMeQua+2nTEpXOje+zu/XW8ptEBmmuQRpK0OF9SABAqXmExsvWHh5nf4U9iiVGDlwYjLwBR6ctfjiPfM0MGLohTPS4tdr3DUehvANcoZL5kPsp6cRnrJwBgJAI4K6vdTqkE1Zl4/RfrU/ugF46VQpBYXmTpoTr2TjRr8Lid2uhjub5A2syGgxZg2XZzwu4LmA8sVRwEjMUA5FpCLcSUMgPm3QHpsu/YOHAjyLJ6TPNHWw2zLF1wP4UOXZWqXQ28ULK0PLzwNGfv3+wgm+1SDjyEebsUpUUb6LwekCR6adi6xgyEIQdXjCX/9Mu4i2B+dzwNYgzRShDj8/pp+1h6eR9UQfQb8CrOBxpkt6qZPbch4AOeUR27sodv8n3f2E0aWkpAFcO3FS2sgAZ9C/vg+DQCHhF4a2no9beLcuGAa/T2M2DRzTb1tpTmnu5wLM+mto7kxgDotGJ9Nw8m7/7qPIzEFIqNVJiS4eBx4jUmPaQImfLKSL13FhqCmPl6f1P1LbJBfXrffYapIA0eV+XeuJnS5scHJBQdsAIoK7nOE94n0KhEzonhJudmpRvuEaNLVJYXy11ElOSdpBX2LB3Sne941gOsIfBdZgkN020QyKdzJguV2LeoJJiorSRebbGRJgbBYwOIIT/f+ucoWZk580MDQkRbjyWFe3/1rshw2efIx5he6WeL6A==","layer_level":3},{"id":"0af19a28-199d-46b7-ad04-03fddf265103","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"LangGraph工作流引擎","description":"langgraph-workflow","prompt":"为LangGraph工作流引擎创建详细的技术文档。深入解释LangGraph工作流的设计架构,包括节点定义、边连接关系和状态转换逻辑。详细说明工作流的执行机制,包括状态管理、条件判断和分支处理。阐述阶段管理器的作用,包括阶段切换、进度跟踪和错误处理。介绍工作流的配置选项,包括超时设置、重试策略和并发控制。提供工作流调试和监控的方法,包括日志记录、性能分析和故障排查。包含实际的代码示例和最佳实践指导。","parent_id":"701079e2-4e5e-446e-ab66-c5148c3b706e","progress_status":"completed","dependent_files":"server/src/modules/book-generator/graph.ts,server/src/modules/book-generator/book-generator.store.ts,server/src/modules/book-generator/stage-manager.ts","gmt_create":"2026-05-13T22:55:46.6550837+08:00","gmt_modified":"2026-05-14T00:44:20.1726841+08:00","raw_data":"WikiEncrypted:pbdt0lyicGObQC8qQ1b2Pdhj1iqWVW/ySALB9e0CxkiQrmhEzhjb2it4ZzVn9j0PaKoY0DERqMiAH1GmhaVfrnug59hk/KcPQVfa8+X6/qESWux4AjPRyYEoPrFy/tPoF+52wHWe48ozmCYrBhBSOlqf+2vdtVjdf73R1XlrD/fZWjgKL8cPIjiZG/qS02OISjeZHyB5HjAY3x5F30VgEr4NJAKDp6gtZRfXQC8/HiP0LiVJpt7gHbOrWfcflQo829ieH8WrgAXW7KSMm6pOpTfSVI+s0bM2rdkpPdlXe7UeZiuZ5v2SRCBoyvm+3eK9t1uV65yJdMqJtBpf4sGwpnTbKeJ9O9HsGDFXfeNGP7r/x7qBj4AxS7IpK+Zk6btndjkrjNEkuXdtvrRUIM94jCDujp3r9/PZLid8EbT8YydQWMRmPwupCR/Iu3IEhKpiqNfyOtsDSKrgfUVP0EbBx4P9l4MVsA/CJUVvuFOUoUFvK/Ndg5FZFLmvIRPX/3DMlkKHi+d9eMJl25WDRtbJpo2MKCBbFJScjyTUh9heKgSNIL/t67RZvUKL/734X/YNg/GI5ZocwW6eUVVlNNIpJr12sDfYQFlbHxUi64lJ/ovVu+ju7B0+XTuURD21XkvV3OrlEk06RANo7BS0QxtxCt6qBjQ8om6p6Mf50ppdqJZ/e7EgS4+FO6pyMy00UWAXyNoimOpNtOfhrF7MuH+Ks03mrmr8d+NlEsfvfMtUkQM9OYX8YoFhuOhBbw8Z6npKosuvAJGq4PXZNNHpCIhjxxnWLxGs3kKLnbBdSXsUj7SU9W/j+mzITlxyrkrqqGxVU1zOJwLfvbipQwzosrdD7NS/JaXPxqpz78xnWdYx2B9nhD9wqjJi5gQtaM8Id5mT5pT9GgRhI7JZP/AqIu+pFv4G8dPYetkb/vdf9bv6SYRyGxVjRuWnLCAgNh2wDDyoGwpYbM2cZ1KZTWp5EaAjRVfE/bJtLRT3Njn64snRIj0S4YWvgdB4FukWzOSxS2ig/B+tG6nksXJzglTDI+3swPQlXTTJ0y1sV4HNqhdyrlIEq7vmYwvCmx69/kKHXUUryUVW+T9sOONaVF+AY57e2NjV+vTxGSbXeaTZZ+/WqFj4TQ/nqRHaqa8qk2XghYbfGA54dfRLLWx8itacDmf2ApicOGSEydOLD7Qjih2GhoKAjVNTknKmzCIAir49TxIyIDQQTlLGQgp3jZdVxsy5fe8YVnOWVKzGTAC3tlPfJ2kDfl2O229bIw2uPw+xPw87dmHGO6cLe4on2jKiM/raw3G/YOJZh6n8knk5lAkZebBwdz0DD13xSgQffAgR27Xz0f+nWWNdKKXS7X1yJN1u8LydPcN/B2F4baeRD/L3vWbCCPzygqYSgkWA5sBivFo3EK5vUayoAt5cvq7dLWacKQ==","layer_level":3},{"id":"342cb33f-6401-4eaa-b79b-ab7cb0d1ee61","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容节点实现","description":"content-node","prompt":"为内容节点实现创建详细的技术文档。深入介绍content.node.ts的设计原理和实现细节,包括内容生成的核心算法、文本处理流程、格式化规则。详细解释内容节点与其他节点的交互方式、数据传递机制、状态管理策略。说明内容节点在AI生成流程中的作用、输入输出规范、错误处理机制。提供内容节点的配置选项、性能优化技巧和调试方法。包含实际使用案例和扩展开发指导。","parent_id":"4195e43f-be71-4897-a6aa-4df85a7db7cb","progress_status":"completed","dependent_files":"server/src/modules/book-generator/nodes/content.node.ts","gmt_create":"2026-05-13T22:55:47.8612597+08:00","gmt_modified":"2026-05-14T00:45:44.6059009+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CFxhsaK+plvQdy47iHix5LNqDg+gxO8XEFz27Zw088rHT8vpwL57pRjDIg8xQGolfnl6lOg13hIiRTIDWCwuYsFmW02kyScbeW1w11Yx0GpsM+pkgAiofxiBxcabZz/wRaKxhB9B8i9xAkHUJIdirdClORpLQ/0Uj6riiUEpKbBQi768glTgh4lRI5qL9JGOEDYeJYHAPBmyH/InwQ2F0/v9TjzT8lInfUUVlfJxYpdqsq7WSuC7uVcaGpcg0BC5KPM7TQ7+a7qmCkgVA55vva35DLFfwpz8yvT0g/ipf2pzlYbt3GLt4FGyCOREPr3k3HyWf3TkiYBJP+h8uSUWTrh00tYMgc8qJDfVdqFllLRUMgXmhA+D/RIaLB2pwJabU0rxddL15/cs3U77NeGFLZ64uQOubmD2z8lXa8uU0sSCGlgKw+i0VRE1m3n2N8aT9StnVXVfvRY/etdWqQq9uSppsV/gRhTIP2TL8s3YbpELV08nWLEkx9BExf6xvM8//Uj4GBRn6h+BQqyY6g6f+ofrLguAK6SrwiWM33rkWY6AM4nr11Oy9lVRRBXr0fUESb2jiOq4gYVY2/r0j1rgr/firZ9Z5cE6WNs0YV/GDjOEfqEE95bjRZ/oNMGnxIlxrQEYn4Sm5KqN8Y/2FL5VwKKI/vEC4Z29KMiKEfOkAsFFbgOyj65tgy+G93ndnkrNc5x4hXnTpPXxy9hPcUybc+++IZmlHK03p+CVPg/aNpFvjYBf7jBYeglA27Cf2DVjn86NfVz26/HDU6xmWtuHIGjA25uEt/wgeu6WFmypgpEQwd5hXXCKPmw8yMFqhCAJeNQ0Nave+yY1mi0Gcx5h9ci9kW4AClgS/f2bzrqcBAFCBlzYukfrc65cf0kHURmQkE9PeGiuWRSmgroZeAoji4ms5/z8hPGEmH3V4dgJi/8cqac0UFkXsotBQsht5sjEMZJj4A4nJNFwg8TVocFLPWeXmH7Zj27Zphw2kpuLRqK7d","layer_level":3},{"id":"1d73138e-3a9c-4467-89af-99a9b5e64eb7","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"策略概览与选择机制","description":"strategy-overview","prompt":"为生成策略概览与选择机制创建详细文档。深入介绍策略系统整体架构设计,包括BaseStrategy基类的设计理念和通用接口定义。详细说明策略选择器(StrategySelector)的工作原理,包括策略评估标准、优先级排序、动态切换机制。解释策略配置参数、执行条件判断、性能监控指标。提供策略选择的最佳实践、常见问题解决方案和性能优化建议。包含策略切换的日志记录、错误处理和回退机制。","parent_id":"60a4d55f-2abd-472f-b698-a810d4529780","progress_status":"completed","dependent_files":"server/src/modules/book-generator/strategies/base.ts,server/src/modules/book-generator/strategies/selector.ts,server/src/modules/book-generator/book-generator.service.ts","gmt_create":"2026-05-13T22:55:48.1357544+08:00","gmt_modified":"2026-05-14T00:44:58.8041816+08:00","raw_data":"WikiEncrypted:vncIuVLs5gKBPQDvkV46pILKqqaP+0PEvoXjyurWAurc2+T6Dexa46nQqlGhsn2/2KnPo3qfCM4oayRvb0UoGE0PJFg+RjdIxwE2m1KMjby7Hwf/tSP1jIxzFKYeIC+460CVMLNXHf6WijMTeqtLP+Y6nIERPUZy14V9NYEuLiJnS1BJLbKOIGWTq8FV2VJZ148JoWPzdCIUnRCKll6Fce2rAqna7fg2Br8msvje4h0VsmHoS+JLRvbsqs4TyISCK/DBGoUfSWHgi4ERNYQA6+slIeUVymMhji850YKAdbCwRckbl2vw+rHBEyz8W+tNRR0nly8z5DS+5lY9+m1Ot0k+gbDzwcyr+N2WSDlJLMYpJ8M8i8bpne7GunUEjPnpmDUoJIjD7Zlq6wgugofeyYDflReqpepvN2mwXha1HwrygGAfkVDaTerDtfOKxr3gWgwl0J89dnWNgFsH4GEuaT2DUNn9vIkoQ47YA7LVojIGZMQMrpMqxCCISJkSw5clEf+DPig5Jbfih3KkEwBejBnBXERaRVFPPvYZhr3Iv55D8Gs16Y5euKIA+buSGOpry72ocZb/ftaceUa75/3ogVXnI3+ycSwXelDcKpo2X7rSUSCTUGqSuVtBVmO39fFF53sG2q6xg/oDXEQWxpqLgl5ftSFqKCnuSP9w/7HQ7OGwLYNoFDJKNwoXWapNKeBgvS28xT5pjdVZpD4Ve5dfz6l+fBSumDqNbzMetr/SZO7DAR4Qd7CgsPaxKXejkV65dX/f6ozMtxAK4nN3wnvbObu9QI2vgdA8PcybzkkeQPnCDqRtdBiLU9oe7DckxtG6kjkbWZ1lpqTcZupWKczgxpl/7qmjzuFGceNVpFNhYq/8vd068ViVk8yeHg4t/wX+F4onAczZML7OI+tOaZr2bbVQ03TWzvI823oyYvX2GD5rQI62BS9HRig0ZWvcrT8JsG2s317S+MuPW1VrVOkF9J6qp/L3v4/oT4c9TwCRK1bc45SJgNBMoJjbYKJBsm18y52PpgPu8cf7qEhy5wmnRqx35xO1+T5LoMahJz8r3nYEQDGJLnMDzlUwdjssju81NRbdUf/9C4cbD4MsHAx+eCyK6Z6yv20aAYzzRAjrup9Eys/Cj9VWTUy3sKNhTH2eRlK3KLUl+xdvo9jLVK59XxXiyK1ejDHQTGzYr3VgQsA8oZH1cZ6vklHfzM41RayrkpnPX8TFvYiM3t/h/nnmqw==","layer_level":3},{"id":"5a0e203c-790c-4ac4-a0ce-cc6720b1de74","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"LangGraph工作流设计","description":"langgraph-workflow","prompt":"为LangGraph工作流设计创建详细的技术文档。深入解释基于Annotation的状态定义机制,包括进度reducer、章节完成数reducer等自定义reducer的设计理念。详细说明GraphState中各个字段的作用,如bookId、userId、topic、bookScale、genLevel、description、bookPlan、currentChapter、completedChapters、finished、error、progress、failedChapters等。解释状态流转的实现原理,包括状态更新策略、数据持久化机制、错误处理流程。提供具体的代码示例展示如何定义新的节点、如何配置状态转换、如何处理异常情况。","parent_id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","progress_status":"completed","dependent_files":"server/src/modules/book-generator/graph.ts,server/src/modules/book-generator/nodes/index.ts","gmt_create":"2026-05-13T22:56:05.8905116+08:00","gmt_modified":"2026-05-14T01:04:57.6193809+08:00","raw_data":"WikiEncrypted:pbdt0lyicGObQC8qQ1b2Pdhj1iqWVW/ySALB9e0CxkiQrmhEzhjb2it4ZzVn9j0PZRfxUL8hejlNSRADaeKRWVQSmmbaeBtX5opgT8XXIS2xAbyYDiQjquqHXOtDhlZpv4st/ImhaJ1+NskGtKqbzXI5/T9nmTRa1UvZ0lvZlqZXDj6SIqETfU8pxFCg+vVWCyZpoYmqCRBYVh67JcHVeAGNau3WL/qX7MxYd8i+VFeBH+qOoSGs3LdtHqYJNfMvrQ9N6Xp1k6rgvZM+txuKHCSqmOryYuI9cXNS+6ytp7lVSayjZ6S4uBqY6oza6G9o4GyRdmmuo4KOpNdVy4dgaSedsOmbeyQhQu6JsLc2aVwukiAAKowhLavPVZhyV1jUc/2DWbguD/nRQI51xjXrosg16yijToevLbmHYdhmZK0a4mnG2AUt/JK9huxwjvES0Oc95j0Zwdk1lasRMkAxZpbkx4cI5Gw6kKmGxPv4mSlFFfn6ohNXX7MPsY8wNfvJkJXLzpVsqCA+1fs6ZQ7UrG0p+eLFMKpnQqOr+vxKBEKER4b+31PeeDUYw5V1WfVzksUIfzwP3CGNW+dqr3MtPlU6yKadmtRKYCxEI4Vrce4KfMWst0MfsaFe4MYtZfaD7z6CdFsv98XNBqssMsE6bPdl3yo6slZcvQW0z7LoGEvSinYeaekIqSRad0W+MVlb2oCbz57bQAheTq0Ry2pWtcoz9c4OqBvCt55cej/Gu6hL71lFMzGTgT699NpvldJplNfLfNgDYVKD1v700A0XC+08PWff0H3x2baAtfrVeaGSslYVAKgC99H8dvg+yqJMlIIdIf//4tN5d38v28oC6sr+3WxgtU3Y2lSKXICLYnOUQyzVbIuWflyvJVhpFOGwE5Vr0wqwXk5cfinbnXWo6fXiYgffSIB2IvYhrm2vj6C0ffivRofqiSznNRgPs7gYWVOvu+LtVDFherdOAdhmiejLiAlVqRXWbkLBSpYtqgpwf1l7cznuAHtuJp8G+N9F/Y3hhn8548I/B/EyuFZNavasiPpi9g2J5c/mWkt1ShXPQrHmyT8okBIOzJzBdyKezzexBDElCDxwQOE26Cwqn5/Z/4moI+h/p6eZ4c4xAnOuF6viBR5tXeuEewxCDzapI1EAEPHjZ/8Gdw8TgaUudiiGGq1moM92YMeC/vh12hYXE7JtRL5D1yJRWfdn6nC9gLe8roNnv81TYmXUVmL96O89vWy65KPwvHvLTk4pldkjsJDCTIXZR3+rmMMPHm1ZaFThCg9QPOWLaL7D5Bsv5cWd3xGpzj6XYAiM5+O/SSPLO98ngyJ4oOSD2aC8CY+qR2R4LFDNHjaVAQ1CsEJzMw==","layer_level":4},{"id":"197037de-e711-411e-9a99-97931ef1eee6","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"认证中间件","description":"auth-middleware","prompt":"为AI有声书生成平台的认证中间件创建详细文档。深入介绍JWT令牌验证机制的实现原理,包括token解析、签名验证、payload提取等核心流程。详细说明强制认证和可选认证两种模式的区别和使用场景,解释开发环境下的认证绕过机制。提供JWT配置参数、token生成方法、认证头格式要求。包含完整的代码示例,展示如何在控制器中使用认证中间件、如何处理认证失败的情况、如何获取用户信息。解释认证中间件在整个请求处理流程中的位置和作用,以及与其他中间件的协作关系。","parent_id":"b8a9084b-781b-4146-acc9-565f7e350662","progress_status":"completed","dependent_files":"server/src/middleware/auth.ts,server/src/middleware/auth.js","gmt_create":"2026-05-13T22:56:17.5593298+08:00","gmt_modified":"2026-05-14T01:04:28.3136084+08:00","raw_data":"WikiEncrypted:+VM8U7FFLOniHies0noAqKE9ZRWxRcJ+Irn6WtT3mgP01OWUV4pV7g3QfWfJtTjamQOiCeDTspW2Pp1Oa7TL5pNi8l3rhc0n0OR0cPzr4W38jVliYA9jh8Leg7N9XroIq9fybpw0AGVWT0jAyUlo/ISaJRTWozY3uyqPUhQH5W4RgQzV6jjirw91Eo4IvuYERSC4/5vVrPIE3Ee2CtH2G+BHxD9rA6Xw6Mdd+D986Uzpi4M6Oi/nsWXPAQLsA/u7ej1EwCH3UyUSxcadRLS40/ZA2sMmybwafhsmTULwG86l3OIhWa1jL6wHZk8a+05Kg2WXZ/2JzwQCK6q2RYJubF02fTIpNsxd6bULG+tDKpcTtc5hDAf30Q41P7iBZuH1hDAcejJSBIQXw5+suIrYoYQomsqv3SuOKklOXiWs5Ql5njM7CQRLsiPvIy23Iu6Hl0zK8CjMVNj5fSGYgcd0f6iOhORvnMmRI4csbNHRwcFkjfvGPe5Zq8qKA62OEobGo1rZXp4Y47ylN/Ok4/bzIcrDAcWac4PG0B9FIMkZGuGt7Gyu+wGEYruDvpVc6IjCktFPWaZlFWtrS61HFTQ2T0U3iaOr4sfGivdmVYBv6X1OI0ERfryA5NSdPXhw9r7qGIrJ2W8O9fYrC4t3HcP/I1wdcn/Gq31mniaXJ344YYNqfV98/ItPp6avet+7Dryt5+4J81KFb6ne+ReyMOi7mVamdNz72HsDG8NTyqGIISY5LZoEXx63zglRDRC6MNzYS/K+JYBQqq0CdbIORffJzxrU+DgfJFuk8mPlE7qOJSAQvTdcT0w9UYoPo2hEQIL6G/1EgHn8u7P0768jSWYUoz4AzuLnr6k4zjLbM9j9wG3UkMTu69Ok0c3FkluC5AQ0WIjAREVfpXyd6PeI1FLEXzYXlr0L6IP/gNlKYYUhTv6ZNcp5bJ6TnYgVAAj/S636KJHrrhjJ56td1AasoPQwF527vEAYdH3pymLZruJuscyYkuZmMeI5rO21YlnXwnOfeE+7yUOnj+B8RGUJtcse/mSFdhixhisKZNVqz43cQvYrqg1qodwzDHGwzt5Y1C1Jgx+6Y9NLIuQPmOLm6wZdv3dWRqI/K9hA3iigb3FTMXeE+QLTiwBFx7TKkK1FWhVPSPgCgLmpcSJWxlD0VA+vUHSywC8AcsqAAz1ycQCjNxgonN5sXZ0fQsRaTbH4Uls18gbc00AYEoxbf3xVZuTneYcWiYtBRtDL7XiRwLbiQpA=","layer_level":4},{"id":"e82b11d7-1e27-4b1d-9f57-ecafa5c12858","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"快速开始","description":"getting-started","prompt":"创建AI有声书生成平台的快速开始指南。提供详细的环境要求说明,包括Node.js 18+、MongoDB 6.0+、FFmpeg等必需软件的安装配置。编写完整的项目克隆、依赖安装和启动步骤,包括后端服务启动(cd server \u0026\u0026 npm install \u0026\u0026 cp .env.example .env \u0026\u0026 npm run dev)和前端应用启动(cd client \u0026\u0026 npm install \u0026\u0026 npm run dev:h5)的具体命令。提供环境变量配置说明,包括服务端口、数据库连接、JWT密钥和阿里云TTS配置等关键参数设置。包含常见启动问题的排查方法和解决方案。确保新开发者能够在30分钟内成功运行项目。","order":1,"progress_status":"completed","dependent_files":"README.md,init.sh,server/.env.example,my-uniapp-vue3/.env","gmt_create":"2026-05-13T22:52:24.7102614+08:00","gmt_modified":"2026-05-13T22:58:38.9821608+08:00","raw_data":"WikiEncrypted:qfgbutC7oyxR6nMxrwk1ODnNMBEQ3/sG78fQT1yXWju83LC7H/jAM8CEAvWT8huE5OClmQiIfNYNxHQ9s7RRS0qKOV1Xow/Q40Lf5w81YuuvgWLq7CasDOmmcP8nu7ArI8AHc40sP3udTJF5xrtcu6NkzbX0FxUvC7LdEsHUkWpX8LkeA3sJuGHp9ppClYzak7wQP0j9G7FIotTxkdfSwiAp7iJVAa5Kf0ZtcqIk9+BdwHkufKsc7ExE/wgZDbj5mqaYDfx8v3TmhEHfpf6h+fc8hgvoq028S5W247k/zWitjlafa7UnKpeK5g12McATo91qbSum1D1CdEQppkHyfEslv34jhShSC7d8YeBTrl+c2rPyz3a2P98VaFOyGTFjN2CmQxJ62u/HggfTekaz3tb3VJSZbv5oMkW++iHTEHFIhOpa2WWtLpnifJlIG4I27VRLze5htK/iB/vzMJ8ArGRBhhE0ySqZCMQr7ZiEsbB/an/M7hiB2uMz3S8ltUUkj2Txy/zh3JSuWhaOQcIbmq//RpUPDTEkkem2bf31gKycMxQNJmoU6hv/1qkMOZegLBsZF1oeaddZXQ0XAYFyPlrZk/hlbNjz73VN+pX/6Mfq3IzGl8mV5/b4JGIVv0j1NRnCG34iO33uFNJF+DdD6jzJQXumdrfibmSpID7uJdIN79RMVQ00/djGgIxwHktwYwmyovWxYESd2sqWk3afS2R1gQcXMVOLXoQD/eB9o3KsrzsKFj3baH0tt1MiugIubh3OWzvcG5t1iYLT/aGwWZl5m9Oo49grMFJVtG2BOTKhXa1m8ZenCoYfYPmiH7MfEbXinaRPXInMrxRA716n4epyBVcdIMXjBMe5qZdxFq76klwq2Q4s54gqbQuchiXR6+ZXJArUq6P7pCnsxGDKY2zzK59HKh1ZtbjXyCUbpodb5x2ElvWuAZ1RKy/i8fHpoxdboLPO0Efk8XYclNIu6MjFXxGv0XPYDffk4VDDXgVcR+uPTAzeLuvKvUc6jLcqXoIJ3Z1lTG/hTmU2gh7yC33vWJGmNBHdjUBQB8nT0QhRWIehp3VMgrLGC3VWU4RWdJ+DQVTtelAw0tN8prjCIrOF+0Iok8jf9ZR0RBOzx5vBTbgzCoDXvrXwmUWnklesgPgl+onJGREy6jljGQ/977gP48adC8KWA5lnDXJzz1DA/LN1ilwJVxR6N6WeKxaVdsbq4IurRwdM1XsB7PUk+gHOhdav0t0+uVDUW/cRxfRWm7RX9+EnSwNda/UsUxv2W/YuS1nnEfvroZYiS5ZnDUyJg6pfjaW768rYQLHBzwSYnqJIGNVk8ACxuldjh4qefi2eO0JbPnAq7lNv6LPnQQ=="},{"id":"2f161f25-b81c-4b49-af30-4b9c816a3272","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"核心功能特性","description":"core-features","prompt":"为AI有声书生成平台创建全面的核心功能特性介绍。详细说明文本转音频功能的技术实现和使用体验,包括智能分段处理算法和长文本处理能力。深入介绍多种音色选择功能,展示10+种优质音色的特点和适用场景。解释参数调节功能的实现细节,包括语速、音调、音量的控制范围和调节精度。阐述在线播放功能的技术架构,包括倍速播放、进度控制和播放器状态管理。介绍历史管理和收藏功能的数据存储和检索机制。说明会员体系的设计理念和权益分配策略。","parent_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","order":1,"progress_status":"completed","dependent_files":"README.md,server/src/modules/tts/tts.controller.ts,my-uniapp-vue3/src/pages/player/index.vue","gmt_create":"2026-05-13T22:52:48.2172681+08:00","gmt_modified":"2026-05-13T23:14:51.7183579+08:00","raw_data":"WikiEncrypted:luoNp8LvFa7zGThvIT9T4gfD6KbzJyTAydbcRfVv0b5YeFdNznyp+mx2/wDGE3jrY+ppe4y/bh/wKSMUW5pJvO2ALEaz4WImyCQFtY8qIXlHaniDu71bDcnKAMVtw1p6afvtysNwqZYFLiAbWjkeQPEf16aPLB3j6Yz0VhbkkWUi4tZgSzSQAw1RIYpryJBigHeoHBJXd0xybLzD65j0qy8QgT+ookMrmjxYiuMW6DJS4c+ShvGpLyeRU//C2FbPlOzBRoQJDbZuMSARzKUsAUyCc4srmKVnJT9P31N4TaobxLFp73sKHspP6/pge/ZY5raPUt277kX1ga6SloXyDsDMDRF3LFv5kw3cyJLX3CfqfmRKuSv9mXItjcGEY3b7AOoowu/u7O0qDi3UrDmNUr7MZiVwn1qLFFeCQU+9wCT7wvEFEHTOSJ4rw1D59vTeCY3xW34yZNwvfFn0xxl8yYj573mCUZBou/jwK8F3oDXDv1KnB2WZCGrXOtNeVwvM7THQGVGy+u2O97xwvsbk9DfmkY9af2uPIaVSDyNboZk9mAq33+wC2RxnsCDEF+Udp2H9urxEcO+3JESo8UFfTrixM1P38uuVt+AQK0kX0FXHS/hkJp6NGDX9MG+go17JQB8o2g2TNC8tZJaQPif6QwdNaZxh+sUEEmAIdAcuOUNZ4IkuqPS6aavNXpTJJHqUeD5BCY8vUdchhv1DvW2GqooX9MS9ip5BXeBrF/6LMGH7/1RotF5a+nC2Z9D6hRW/EJcYVSHfUuroM8LUD2UrUQ7QLJGeenL7jIZWh9XkTxzjyC+liy7hHVSGdxzdt2FFt0lYcnFmAvsm4c5qIcbJ3sH/3P65WhR22AfY3YfU522q+/7BNFWOpn2BMrGV+cE7St0cyHxo1r+br5wIDDrmpcl7NCObUOUJ/oBmgapSRG9Nl9SGHn9ES59WCieB9VBFrgqF5cUMi0I3EfuiigaQhsDB7w1Rm09OYQ0/ppR+C3Z5G4cMnauTTc7fDy2j73cFaGKVEZ9kkLAL7VWGL6PyqMRPgXPamqOrewgBC/+eGyoHDdfGJ1JRP8KUNdXC0doF54akZSMXUI+s8WbjLDxvBB65nCAFViADRchYE7AD5cA5g9UgkehzM4VLnBtquLTiUiOvrWooYlZ7Yity2ZI5/TmPOnaXRh8t+/t/Z52Dg3VVl30zuUl7CMlsKZHWZbcQoC8+56i8ctpTQgmW81rGbC+nBMdCq3FYao2H6UfUxfVPXQHoMx3bb+EJYZA0LOHk+b7PMjxJEaXEKNfa12X/RdgX5jBP9COaiMMBwf5gVlt+QApU4S/erV+F01DKQw9/E0adIwJIP24hWWyH5AQqqg8UKzwTs/+lpyiNWD1mWNYmF0WbIP5DbNlNXYWBMFcv5J68JdqH5Kkp7VpDxl+p0hSwnlrph+gywDeWieK1MmWkCiWjTR1hC3zT/rpENidKO2L//Qqju4a/VXnS1CEB6g==","layer_level":1},{"id":"581e4a89-928b-4456-a248-87b013d82d80","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"技术选型","description":"technology-stack","prompt":"为AI有声书生成平台创建技术选型文档。详细说明前端技术栈的选择原因,包括为什么选择uniapp实现跨平台兼容、Vue3的响应式特性和TypeScript的类型安全优势。解释后端技术栈的设计考量,包括Koa.js的轻量级特性、TypeScript的工程化优势、Prisma ORM的数据库抽象能力。阐述AI集成技术的选择,包括LangChain和LangGraph在智能内容生成中的作用、多模型提供商集成策略。说明媒体处理技术栈,包括FFmpeg在音频视频处理中的核心地位、fluent-ffmpeg的易用性优势。介绍数据库和缓存技术的选择,包括MySQL的关系型数据存储、Redis的高性能缓存策略。","parent_id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","order":1,"progress_status":"completed","dependent_files":"server/package.json,my-uniapp-vue3/package.json,server/src/config/index.ts","gmt_create":"2026-05-13T22:52:48.8827115+08:00","gmt_modified":"2026-05-13T23:14:53.3820175+08:00","raw_data":"WikiEncrypted:w0CkdCdnXCcvlN5xOpiEhEX3U68GI0Ngj6azFMJo9xTI87VoZUyY2w0F0VWUiuOaJnjP8qt1QMEGDybWoAmLFSQb83nd3SaMneuWUeX6A3U9reY3GeHp41loifty+RBxmRXYbCRcojC+xrkmBfJTEH6zXmKju0FN2U4XnA1x4ctidoPvjr8+Hl3RFzCzTqBjg/UgpukkUWyKm0SDUJexfbIcBfW4rBE3He9bX6wtc54lF2593ltWTixXe4FAt15msGjPVF+xFbzncc8kdGDX0fIy+dQuCvWPmV835dv6IPyXWq4hZdaftbsNeFxDpJ49/YaQpuHRvOBhgKXyCyG+G+hewyizBOs0yAPIAZ+bvXeWu4u6u79tjyKKtELtQMRoBgfCxYANgzghE0r6XVuGNO/EPO5Jp9BdYjjm+7yCQO80PwtmUC9Bd+Rf+Y9vVP2YAgKTmzyC9X9HxWjJhvaP6nqcmj0q8tzIuCkziUtgCwPdVUT+f3lttiXF1fk35tKudTaaJ/ZgY6WzRkZIoY0WP5EXffKU+ce8Gtmt0hA27Nwz++/XMiCZXpcQF4mSjUR5nxc5a/cQqZoHBHJaDbF5BpZ0egDuslwkT9r90lI4zTISDTqb+8pJvjJFrCOQ06q/6uLz/DLdmS//zY4j8Jq62pNovktHQrgK/8568L23mxoAKTnna2f+AUAMkElJZvUOJQ476WIjkqlDKRSahi8EKZPyvTZLJIQX+yL+YqeiDUPsES1GzTqTjxR/9WKrv/pQ7t1lNAF1vn7SuqJ2ay6NUyOeXLPGTsGxsxWDxWojvt+aPNiWsLgWY/p2K3wVGBG0A0LrhcFNIiZ1dohCr8nrlWdIaoo4qxc5CsVtNCGYjT5xV12gR1g//0Jw4Raf/CtAXLLqy+CSSelPqIihdt0dBTk6KfGQWnqdifMeHZUt8bB3akZMf6FvTr+Q8Hgu0QdZ7m/JZU16ur0KiAdBConf5RT3lUkeRPppRl9gR+PoA7BaQvnglKSH86Z8xbrVua/PRG0iinzgg8exCvpn2nd2tbX1MK34Y7gmJ8Zv8ZgHcYDcOqbWFxPLEt1nSbPjO+WaCYdWH+EmH61I/xfG2quZ5U3qFrhpOnaUBNDB87RyuPStvfwc1khE5cfx5W3pk3m88HtqUkS2jHGqVKCTY+H3jXrikqLkfO4FO3QpGLPeoCzurmIpyym/w8JuP4osNH107uZr6BuksYjoAalIDkzO/ggBMNRpJ7brPmCRyvZhbHMmTBG/7e2Rz2/7LnxZkC1Z0cfh1j66/rpGtA2st3W1JT5p/k+znkaWoeIi02mlELkto83/xIlDRvQXebYyJI+5YvcyDnPgz32QTbUZYpOQcw==","layer_level":1},{"id":"ed23c946-e41b-4585-8aa8-be7382625e28","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"AI内容生成引擎","description":"ai-content-generation","prompt":"为AI内容生成引擎创建综合性技术文档。详细介绍基于LangGraph的工作流设计、AI书籍生成流程、内容创作工具链实现。深入解释多步骤生成策略、节点连接逻辑、状态管理机制。包含大纲生成、章节创作、内容优化等核心算法实现。详细说明提示词工程、模型调用策略、错误处理机制。提供完整的API接口文档和使用示例,解释生成过程的监控和调试方法。包含性能优化建议、成本控制策略和扩展开发指导。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.controller.ts,server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/graph.ts,server/src/modules/book-generator/langgraph-controller.ts,server/src/modules/book-generator/nodes,server/src/modules/book-generator/strategies","gmt_create":"2026-05-13T22:52:57.30067+08:00","gmt_modified":"2026-05-13T23:17:44.5105187+08:00","raw_data":"WikiEncrypted:zvBBiubNp9DOI7xoIXa4K4gCwfRIxGt4B0V/y0IQKMfauDQrXJy9a/uUQTgNSII5U36oEYpSzF1K4TfOrNxTWVZJdYMi62HG1OeggZZsaZ4+v3unRRP1Xk09LjUr1Ug8Z338m3dtN7757aum13s3MKjop3qJxbBiFwwxGOPY9YM+8AXQyo5U30ongZEauAI5Su0nLrWcJ9GpIwu+ojdHW/RyBRJSQSQ0DKn7zJhGNB03TlFIBjvIyVyGXfG6KdSYvzdT9FZyzoOzgTmFqt/iWY8BjRPvNZ3zgDBe5bBparyczwtG/h9k9jAVkuG3ls4EHRJ7i4sbAF0dOvcM86KIe81oepY/v1kKVboEQKYgJzpQxDNMKtfva5gIu+j+7y2Bf0c6bbHbwSX4nU0x6wrOQDmrnk3SbkuA0Em7Mt/VQaiJavxVS8gXxHNZGDmwWp9l9/mVtg16t1k5PX+6QNXOllo0R7XhIWWFUEJUk+h+tAF0ek9VQG8eIH5K03GH9QVy2OepCPe5ONSJeobZDVLC2xQC6Q9Hd1391xze7oXkDYNDwscYHIBvEZAhpXnkk1kFryUU4jyMaz3Wtbxdc4TelGfO+7At0XeRq7u4e+bG11DdOw3OCgeAXNyppbo8l4piPnBIAAJWe2m17GSmvOrOta6v6Q4A91pyIBtY5eAdbttAFg2i2sBakolkE8G4KXkGNCgtKF4DQ9UJeAD1S/IaHLKcmEsWsIKER3riG/pVskg4Os7LjfTlWAQXhYPF+N7h1cRp6BLHdMRSn+MzGgKU86hH4E1bBuUQ79l5oX30e0RRKh5x1aks94j72vH7VTw0tU5K/sqGthhYvqqBCmXJ4n/sURAN6DY22PaG+PL8pMmLyEVfxPReRFkd9FMcLgyBJ270ZyCXlmnpUGw2Wib3feg0PWgz/x1rRc77CIqPRlMWkduTPl5RdZ6lB/0Z4cC6u+sItyxeTasnr3jCoywHFbifapEdnGO7iv2d1JK/Nm61HkE2wCXg7NdRPc7jverB7h5zT3+4DCwfHkQbH6a7nFOjc3C7FdFH4DEWMkuSjW1tVdWeRc1NZbucMWKn/4onQ1c/qWLIw1sgoeBdwTzqdzJ19Oj+HanGELwYB8KJGMXhp/zgUIG/JnZ7/n8kAaZDIeL3cC7ee4xxEBmrPHbuDf4cBFMg7XL79CP3+6GzV+RvQFdhkKU3qeFKiQ2FyPUpKRAiPwHzAEe7dAd07cMofb9KbSLscQhmjZO3FpVthpd90D5d0xG/75vyp1L3jBZlp8YJqiarygtpDU3mI69tJ3KFe2ej2pIVZWfSqopkjT/0GDwJdPlvqK4thMNvnaeKFDinYCOmtMDv0uYcepnNkFsijwskHQBxgpjJhkyWPZJfg/wgUeO+kTUHSYnfWz9GLvLevGeHRhlPxaKegWP6wjF8tb+tRQ6UE6PJindK2g9mfRTzq+bv4zDkXS7eAXHE/TlXgh6WAkFHbZHUEAAN+BLz9ZnSS9/jOxQqjZsnw+N9z1r2zoI/dxBwm9pue5dU+SNhyYMFo0r/150wJdKjBoQMdYhcb8PZNMepiVYCYnTWY++kKgCTxnfEockjuTDjIDBgLnjQ7c900MPoQcjUKciI5Yt6mAqd0X12rNMJ7kk=","layer_level":1},{"id":"70f2feb2-3fa9-4ef2-b525-3330b3b13e8b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"TTS语音合成API","description":"tts-api","prompt":"为TTS语音合成模块创建完整的API文档。包括获取音色列表接口(GET /api/tts/voices)和生成音频接口(POST /api/tts/generate)。详细说明音色参数配置(速度、音调、音量),音频生成的请求格式和响应结构。提供不同音色的配置示例和音频参数调优建议。说明音频文件的存储位置、访问方式和生命周期管理。包含音色提供商的集成说明和故障处理方案。","parent_id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","order":1,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.controller.ts,server/src/modules/tts/tts.service.ts,docs/API.md","gmt_create":"2026-05-13T22:53:05.703254+08:00","gmt_modified":"2026-05-13T23:17:42.7285523+08:00","raw_data":"WikiEncrypted:nYnqHwwsXblI7TGgxAsVArcqTkUMlhF/kMJ8qc5nuFQb7LKK1wqL49QSl2okzSriE8DIgAaIuPYw9iPPc3GjJho0xEymAY57tTiEvbWXos4fdgRleyycUpfBZaVvRIDQwVWki0gKsDd6POMD4te65DHf872dtfGzh//78FBr61THdrZ9KVp8uyV6GUIYRDmJaILv0MeJhcZ6dkLjX3d4cHM5poay76T6bPLgoxA6fvBzA6kiG4htj0ynAupucrVJ9M+1IQrTxxMHFy0Gs5UWS73dVuQppTtzcYdjPFZvvw2iNRI6DKXo9XwSsVG+SLSIfCB6dFdV/aJiH9KYKhCwtuVbFq90TK3jIl1tBwbH23iUH859nqEDonbIDkzO/fU5xp+pzSBxg8wpsI/8x6UV6f0Q7i5gJbWpkdAg6ulbP5Xkzy4AK+7oE8If8Jm5yM9BwuYaRmbWwOKNxOlhW70QV3ky/9K5mzhpsMbEqvtNdYOLbHbSp04y+sBoyTTPa39y0pPT8SwvGRPoFPEbDYyrImzZkAKgi4xvRkz6B1w0pNXw5fZyR1bv29Fbgj1B4wExymMHkbs7c/+ZrAIJeWxbHYo2zVjxvrI/FFEJhXEkMXLc+GY1m9YMTHFr60NetyR47+O3p6ebODdcwdiUjKu7uqxUvAZGEuUwGRbr221WpD2acuh2lxXBM6VVhPoDcd8JNVHAZdccP6k0/RY3hgAwhSjs8fzWbJumFliyhyGidu0CV4XZ7m8lfHmCDsrnmSY5QEuej73HIYxu7NNgDoyj0FJIygBQAm6GGZQZGsr7IX/2k+0GSz+RVsRvJO4UMyE9dK3ypCY/J4y+brRkwZrBClX/G/VWzMrNB4IHrF3iu+ij1C8tQaKW3dFtqurGhdkB1FnhQQttwsKzP4aJh3PelDAJ74mGF4lFYRCRWEAPF2kMIo3YfSRpLEjOv8M/kjh5eRdlADcrXYsjztRwmzC6+LbaoVbW8zY7qs4npGQ+4zhjabFBnwprn/O44SB7bd/xYK78Xufndoy6Cbd4vydrYSrr8A36Uf3UAHHfTW02ziqf6kwJGUN8uMna1V3LzGcLm0AQpMtPKPdOPAGeioc9jKzh8FVgRdFfLWRQosOMsUQ=","layer_level":1},{"id":"56a87613-98ab-47bb-a173-5228193aee92","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户数据模型","description":"user-data-model","prompt":"为AI有声书生成平台创建用户数据模型详细文档。深入解释User模型的字段定义、数据类型和约束条件,包括手机号、OpenID、昵称、头像等基本信息字段。详细说明会员等级、过期时间、使用统计等会员相关字段的作用和业务含义。解释用户偏好设置模型UserPreference的配置项,包括播放速度、音质、主题、默认音色等个性化设置。提供用户数据的CRUD操作示例,包括用户注册、登录验证、信息更新等常见场景的实现方法。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","order":1,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:53:10.2724138+08:00","gmt_modified":"2026-05-13T23:17:23.8989835+08:00","raw_data":"WikiEncrypted:b2BGJgTIatkHozAd0Nudm/SuvVVYZvaYCYJT//0Xr2YLspulsfZ15EoSMz1BS2Qu+eT/Pia7Bp+rVzGEs5oZfhHy+JQlZUibM9HKtTPTqewwFjyqsGcQHLH/yVWu7eqjPJdF5jzzV4jkKms//r1xSMCr3mBuHJOK8hBaFWw/osN59qCSAcx1f4gPxQhBNZ1uQ6OnV6N2x3ipD1558/TFYYU7ST87NktpRp8HwdW1uOag31/mn1gzage21KpH6wLVnRe93A5yqURin+U69YNhLotdNLZJpa9NSDlKk/n4xEU7uBmmGfaLp5CUzS1W8NI/shn5XbIuH6TiaL7FBaE0T+Y0vLtmw5L+ZggLP4I3QL6ip4LEGfkNbvLQwCZ8KxXtOHonTXynLn86GKa51PwnDSiGTvmgF7hAR8MfBWQnx88C/yZGxVjcr8JgHdvJVaGYvdqi0w219btyzcNgoJxaeYZAWeanXNToBCRqLxBisSZ9a/MQqT60lh1ngpwK5eRI+VqglaDePW8KR5iCQCZHkxTjqnTll2hPHia7mAvwgzCBxyMaGSF/chuLt2BmnHu1Yi2xJToxyh/KPigYNggrpJ1p1ffDHJK4J1Xl0Ms97XN59b19oxVfHKFLk9JY84LJLlB4stpSgrLv7lSEeFeHfggGj1g+Zi8VUMMyfxA1377or+JsVwz6J96BmxCjvDQ6BqY9EG9ywIgdY3nLsI1AO/cQIHHfThfWntYOgwbI6ZQR2H7EqM9Nr+yrs9kBkPN4CYXBmp2XS9e5yTNFhWqxalAxG2/kKiQIVEXkkISziw081YkYS26xWHW202gVTjXbe+O2do254fv1jD4PbYtkhWyRkub0iIHsjHHVQMnq4UChEqLX6Tsv6fyxHPGQJNXbN8OPPBf1BOPlQyvSVRigOiT5YXmQOOMFs8S55cls8SXxmYp6bMwWS91vVaf2KrzsqEh4WzhqLLz6KabHicqrdRi+aqpbm7yse5dzfuAmsRFMCzDuyTdohlNKLDo3+pPq1tf6dJOsf1WkxyAukLvhImR2sWhnEHD1Eo5waCAkok43xL3LSyFkbcdCNNUNB4IOoWPwBAYt6dIxrK4TJ1SsKR529EfDFwgWO3JV0ORtvPBz0TflHeqtebJLR16YyUbyJMcs3XR0NEvrCz38mPhcjneO7C9mwr8xBd4JNgkB2idsTxCsjNirJCP3Gh0No6IxK8DYhZCLY9fVRxSY/bdKZg==","layer_level":1},{"id":"cbe1816b-e3d3-4261-9666-5a11470f6f31","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"页面路由","description":"page-routing","prompt":"为AI有声书生成平台的页面路由系统创建详细文档。深入解析pages.json配置文件的结构和规则,包括页面路径、窗口样式、导航栏配置等。详细说明路由守卫机制、页面生命周期管理和页面间通信方式。解释uniapp路由与Vue Router的区别和特殊处理。提供路由配置最佳实践、动态路由实现和嵌套路由设计。包含页面权限控制、懒加载策略和SEO优化方案。","parent_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","order":1,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/pages.json,my-uniapp-vue3/src/App.vue,my-uniapp-vue3/src/main.ts","gmt_create":"2026-05-13T22:53:14.6211381+08:00","gmt_modified":"2026-05-13T23:19:10.795161+08:00","raw_data":"WikiEncrypted:cXN0d1+/pnjEL/vyZ29ue7WiPFle+Zz2qcjAnC8LtV68kz0LVeL3Yvb+vF8Ejm5QsK9X/Km3FSUYUwcwjfvdsLYJ9k7glft2vJtQozhd5K3CqE9+7zPLZU6YyCQoh8E458+DCQxYg/fQ8lnyPmqL3Ph1heC2tmzxOBna9H295D8PevisdBoWY9ZLU8er6HJwVZ90/zzEdTSwZuJC9Xv5OuAem+q2XCQD3nMq84Io8uFiSSlz6Rfov5nFGm4alJn9aj87svYBhTZPeH3qyMUQ4071POu3cKyFDHxfR0LMUCFY5VaHqLzBkGrUltx+9ZhjCV2vXRVkgG9kbyYl0dNg0rBupv1318pmUMfH9lzs3ynsiFH2BHZV84KlI5GPvfW6vsbul96tub7AOJKiDarnj+1fparoCNshCiyqWPC/KAXmFa6v7Rg5EHS3a6niZBuFIM1Iygx9SlXiR0a4V1zZfURSpIfLVc4NATE7MsHJBptLR8hLjdlCf9Fd41YlSbymDBQi5J1AdpazfnS/nlzGH/MBSfiwnHiBsE9KbBSPiBcZiXVn4v6VKP14mqsU4UTk/WpMNiHaN5NOcCVqgyhVcEoMaWcGCDL8dqQV0MGjbiwdRmwclPrwPbyjT4AYDVNAQVieoRM2LMhc/g4YZmZ2rIbR/947icBQ/Zt8yXzHLlvaWbw2BS8d79LDXmk2eVyUfRp3G7Dl423mX334giYsmK0PFh58X3SBhIrPogiR1rHpxltDcgb8sO9HceskQ603rotFlu3sPZ7uIJqTPHjXis3meuzZLO7BOgtp6+Xs1NKDhBxdEIr46egY0nrf7sy5KMfjHCsPOZVtjh7oVqk9mU0clhW5wz6yxElK1owclLS5ShuTjvJhr2ZVcWdGVj4bot9VGHBMRW61EL52yi8lN4QdRUkxS+PhrSAtsM2qA5/PtJbBzYvKd+0kzvX1gjPhZOLQ2XCvH6e3Jf4qswgrsrzgj1j9TmHt401UZiUB+ed5XjHVcvsaZPmgB+bT7bfqSlj2nmde7lLbUo/3m4Te9Zrqnhq+44/fInT8Uw2GldNFKwiYiSsbOwB1B4+DagJYHcQTFSua/ujLrAb7T4XIeWJv8kNEUrt6j2+EKKbiONI=","layer_level":1},{"id":"835f5060-ce15-4255-b59a-589143e351d7","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"容器化部署","description":"containerization","prompt":"为AI有声书生成平台创建容器化部署文档。详细说明Docker镜像构建过程、多阶段构建优化和镜像安全配置。解释docker-compose编排配置,包括服务依赖关系、网络设置和卷挂载。提供Nginx反向代理配置详解,包括负载均衡、SSL终止和静态资源处理。包含容器健康检查、资源限制和日志收集配置。提供容器监控指标、性能调优和故障排查方法。","parent_id":"a7644116-2431-48f0-8cb7-2bac60b02c86","order":1,"progress_status":"completed","dependent_files":"docker-nginx/docker-compose.yml,docker-nginx/bookapi.conf,deploy-package/server/Dockerfile","gmt_create":"2026-05-13T22:53:21.6324528+08:00","gmt_modified":"2026-05-13T23:19:43.0809588+08:00","raw_data":"WikiEncrypted:OYVOcFWO8QG2KTNzD99v4xxMusUyWhQxf3J/07wObNtFIyC4CbcNIuFY4V1ewVc8ZQcA3boon6xnUDfRpiaK2M127d8R93BOEj9oLkCDd1G6DUCYGIkpvrX+YUn3NGE57IslyNGcEpbkyMsCrR3xcwImUp5FGVwwz7ad4HHEEwdnFqrdmoOAH0KE+EFC6a6kWXInCS54xPBmLfcN9Ytv/BvhrkrjQ5bVycoJpCFVa9seARRZtjNv2ZSpe/6/015RFYhknkuIqaYy5gsv67pLOIsA01mUYYCunozciR7ivzCQW1n7inNPQumVQHSe96dlPiAL2sTqOPlxUGxFYfvD719t2zR0itotn7zg9XkUgt39l/y24Ba+edyXy4aCB6gYF8rELRLySSZ2XSPQ0BnYwloW+gH4USXM9gFDCm3WxDjLyrfUQu4sMWWUK2TO2ADAhnWxwUVJj4F95+wmGBVm955lP9LhLZRekUZFEWC/bLkHynryNQprDdRBSF+qD633LheM4Vp+N/Y53j2VvPwyaUuwYLjBQWFCoJeL15r0ahK1XGMbaZh/UxwhQ7ytx6+0r5pVRE3+okbln/YaXGQ7u+chaTeAc0/7h4lEC17LzOk4UYScE8rYHBuz6oLYJwQ0iN9tPkg1SOmN1LrzfvHRTtNEetgcQNZyBIjKs6HUh2nwbFrzIaSXEJ94Sbv/PWaSz754ocCBCWnghIYLyNFt7lLfv/OzCgDQRtXUpWzXKZv2z9zevjH7iHOh/f1bMHvnYEL6x9L6W52Tajg+xKnS0oN4HX8x43H6LpwgIB1dKenpd4KqOEBh1CvX0qJKotFyVwZgJP+h0/bO37RiHQl8N1JpKYuoyGTKEbpRJsHn2gRmc0NlYhqmVRr6wfSkcmnGe8iZvu4e5mqXoK7I9Vc00c47bmmTj/qYvA69Uxrxg6z/AxgLqBvNI07uPsElyq0O49xw06KIen1B45rWlb9UdsmBqSJp5YXCtoNfucnXSKOIQjhhVFxIN09K8BGLkG7paSR43gp0ZUfOV7+jYg1gFvoPkRZOb2ARxDihJ3fLLX7VMLCdaTpLB/GmSyH1MBIY","layer_level":1},{"id":"79074143-59d7-4de8-87cc-c1cca95c6eb7","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"服务层实现","description":"service-layer","prompt":"为AI有声书生成平台的服务层创建综合文档。详细说明服务层的核心职责和设计原则,包括业务逻辑封装、数据处理和第三方服务集成。深入解释各功能模块服务的实现细节,如认证服务、书籍生成服务、TTS服务、播放器服务、订阅服务等。阐述服务层与数据访问层的交互模式、事务管理和错误传播机制。详细介绍异步任务处理、队列管理、缓存服务和存储服务的实现策略。提供服务层的依赖注入配置、生命周期管理和性能优化方案。包含具体的代码示例和最佳实践指导。","parent_id":"0644fa6d-da66-411e-b766-c810e7e56553","order":1,"progress_status":"completed","dependent_files":"server/src/modules/auth/auth.service.ts,server/src/modules/book-generator/book-generator.service.ts,server/src/modules/tts/tts.service.ts,server/src/modules/player/player.service.ts,server/src/modules/subscription/subscription.service.ts,server/src/services/queue.service.ts,server/src/services/redis.service.ts,server/src/services/storage.service.ts","gmt_create":"2026-05-13T22:53:25.8608623+08:00","gmt_modified":"2026-05-13T23:20:11.3133889+08:00","raw_data":"WikiEncrypted:vMsgMax61wW2sTWhXd8DH5MWokJhmuibsTyKEKUwYd0a3sJcbbipJ0gHhlJamxfkyRpqWFpNexwwUF+aNrSWOo0X5acfgYP64in2R2r7CUj43m9c7m/Co4pNSt9wyzm56EdmbYQlNkPeUu7XEerUoWfw6aM5g3wzVeyojMinMsK/gX+gxS0r9INyysuHkTrYjcnIzTIqjphq9XB23hCz70jkftGH7NxdDW0iREh6w0E+zq3BBbwBop/jFitTccFKCF0syItz8MfC8RyQBU9VDDDJwwcDx3WoH5pR2eS8v4hJ5JQGfrS4wSFynQaT+WafmRyQ2yiQagOKF2Eh8ZqVhU7e+zXeaujdvwngeaT4O0iV0ezxjeuc7dlOpRp1HeRTGEj2owhQ7FskoGjZ//yNs/mU6n2C2i4zys9wQ5fkdWq0cGRd/8zEmZcsc08P83sIM3sxSraYj5h62LCWyv1Gfpj84pDsSbqmVI+zbyTxgr7A3ACTatp2CN/PxXMM8lSx7Jh0QboiRPXDpyiH0LnJcI6LxDSXDWLbNz4eCAtypd4/tqeGl4mXTc51xL43sEUj5ReiFxvZ23JCrtSs/nzt8EaqmGtSQNX5EhMVtjaRrXd7eCaB9faaSDMIDmvjT1PYbRU0dTFMzt/dFa7QYYbGSYvs7ZpVsc0aZmQultQ7vE7pRzHY9zUkXqhw0Npu1VMZZqopuETS+Q3eHQTs91l71+U3KdiRVGCSgoyP+31Qq7ARP85WHwpKKLpw+2LdmebhD4K9BXxqrfJYZANRyuwx/yd/unTcmp6YqIl7+XKuGdijGYmWaiLVmq5P4i5XIIJ5430oBPRAYxlEYEJ7Lug0RcrSbH1SPr3peZHS71qS1T/1mQXVI/1/YNoqJNAA1Qfc7XY4AUyeaExwI35czAJHPBCex2bBwMPB8h+xG3fTdusRdC2vgeScE9ms3VaUO7A1jkUqvEk5KB9G24tu4JpLE4pwtIl3ybpD6Gfco9tz2RT+gLoy8eNRDmHju+FJ+INVdfRrFh2V2yCQ0ZEHFrmxoE4n+ljdQekkAP23jkuPVCcM4Lao0brARLORJAWTgA6Lqf7Qe8vuKfL2CZrTrqgw2wNLN3kUdI46jL4bAmxxfebUTQKHvjaN21LeLrwjrEJUR33b0OX2vCbvCFYXLpb0+QN/zLoPSGY35lBLA6k2NWffTuBYrNA8SyS7ayq9TAK/jd7mpwmuTA1KfDvkZNvdU6Lt+sP57oYxGVMm7kDZrsrKihvF59CmKgZcoW4DG8KRnLTjOPPqQFud+DRMOjrBorQMKRwrrHXAiy74yj3zM0aDTcuIxO6En+agVI7tGKL9qpMCSHys5syQRwRnAabGlMJso649asV/nRF87C9O9tPEBHoM2STvfnzUD6Ro35E5mhTYP/nkwXHudMybDFBxZaykFUKGrQaCwpwBxTtBSombUxuVJ5GP4LasptrD7L9OsrK7qWZoq2Lycj16rOpSlkU7/hcOdHFFkhMlGcOgowO9vfIafanqabLeW9usuuxmYv72yJZYd6k2XLtt1grn135jmOmI+27U5NK8Fc7BEJ52Ttoj/aBrfP4qAxXnrdoq694340pC0kiiAHS8EdHfjv3uAxpUIYZ7F7rv69JuuYi2AT+bbvFThL5tBk22RA8+NWfaVINrhVQVZ7gMO4q0qWxSvkV78NgWbG8Qzi7wHv7aj2du4wU+/fa6atJRdA3LWfxVAJfVC9sRVC8J1HEaacoktAPyEpfPRmKmQzfPeWs=","layer_level":1},{"id":"f26df6a9-3af6-4a88-8585-0c818ff1d908","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"开发流程","description":"development-process","prompt":"为AI有声书生成平台创建开发流程文档。详细说明功能开发流程(需求分析、设计评审、开发实现、测试验证)、API开发流程(接口设计、文档编写、联调测试)和数据库变更流程(Schema设计、迁移脚本、数据迁移)。包括开发计划制定(功能优先级、时间估算、资源分配)、任务分解(Story Points、开发周期、里程碑设置)和进度跟踪(每日站会、迭代回顾、风险评估)。提供新功能开发模板、Bug修复流程和紧急变更处理机制。","parent_id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","order":1,"progress_status":"completed","dependent_files":"开发计划-第二期.md,.plans,FEATURE_CHECKLIST.md","gmt_create":"2026-05-13T22:53:29.7643464+08:00","gmt_modified":"2026-05-13T23:21:30.2208452+08:00","raw_data":"WikiEncrypted:F3QgleoEfoy16cQggYe9CydX9X3wOqlV9nH4ynUwMozsxiSBckNpAvSjpzzornUmCf35E0tFlWhV6K1UYbbu/13epNzv9izgYuZnGClD2pO9/Jz2RJYtX4wQ3Mwnx1qid2wO+avZWJaIbCH/stR135oL9oPeiHdov6DwAovJZjKbIu3DGAMQjFLJekUgM7gdqePIwk50Vacwc+sPXjm4rubL0ZcEmduGeYMLy7QdgeiJ5EYfwas/kwtEr+Wyc2trhp0Sr7vxtjZcXHgcCm2i1s1VNF94TSpp6v4X1zWq/9ErS5DJ8d60WX2ryLg3hOW3EoBkoK00xZkdR2yFtRrovT7Zzpl56U8ZY2jmF4H9YBipMb8wIgdsQPtGPGNJwWcwDemlg+iXh34HXj3h7kpsZRZBRMinEgqMbRCnOjtNV+M2lK79OMc88VGWFKpE+bxqz2d34TuXdqJz2rBwL1dyUkxFkE8+nNmiGBjxggooEk5lieVHJoxikzDzwwtObELhNMAWNoIba8ON1mnZ/KIF/lxOnYOme8SksVQ5+IpaMKvAg1K00rwlkvx/nX4Ppmfj40QlXU5J6SJsRQUAr9CGrVwJhAQro64bGXuedzv+p9vBr2OWq843Eaz+8dtzhQMKOkSFkAGb1PJsO6TsJkxDeJF2bUlIodO6AHhGDC5VbShiCX+WrGW+PbixaQPOuiC4825BK5b+ODNxBDhzS709JNhcYv5ekZ0vZgLmJbktG7oJR7Okgjb/r12wrmOfaFiDiUqiARBIlc5iLwBvlvNvqHZIxuwiVw5ll7SCBftotghFtdLMbqkfQGzObqOZLwv1sygwEC+s4efqiX/kZOOpA0UorZn2KXEgdADd0uZx/0L9dVanK/TeZZ3Ns7gU9G/9g+aSGns4T0cCqpFgXde0Vy3I1BNg//lILSOy8/ME8/+ti1um8M9C9HiYyVJApvA0e61f7EJdPdNSwOEFzxl/zskGc+3VU++tn0DeCKKLqpfHRW5uFTTaNa1HRTdp8lqy4a56EbGMZ9MI65+EbkJuSPUJUo4pho4gfK+yFs60GEN+y4WefRGvOAkEvGgcNfzyt4yJcTWXYowa1QEqEgcJH6ckAeQVOu10J1DL1ydi6+voTbQNSC9AFr3fUhJt1EK1IV5jgMS/zbpvNUvJVp8jl+PUUTIgbEUa2rZpn0XWaK0=","layer_level":1},{"id":"fdcc2824-64e1-4341-baad-35e843263754","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"后端服务排查","description":"backend-troubleshooting","prompt":"为AI有声书生成平台创建后端服务排查文档。涵盖Node.js/Koa.js服务的常见故障场景,包括API接口异常、数据库连接问题、队列服务故障、Redis缓存异常、中间件错误处理、内存泄漏检测等。提供详细的日志分析方法、错误码含义解释、性能监控指标和根因分析流程。包含异步任务处理问题、第三方服务集成故障和系统资源监控的解决方案。","parent_id":"09950a00-d436-4c56-8d5b-5f418928f264","order":1,"progress_status":"completed","dependent_files":"server/logs,server/src/middleware/errorHandler.ts,server/src/services/queue.service.ts,server/src/services/redis.service.ts","gmt_create":"2026-05-13T22:53:34.3235602+08:00","gmt_modified":"2026-05-13T23:22:00.0524448+08:00","raw_data":"WikiEncrypted:N3UbzwGjCC3xD6BrTM0cq+LQApXMfiWzd99ihfzDzUmBTzpG4EXP2sGhMjFGobhZqWr14vwTtjTbC5ZbrZVB/rZAUOO0y81eDxEpY7TVx6NdVa8VwqQpF6LwNOSjguolD9AfvJF5p0ej+CP7qwym2PYWWiah/3Hh5mBZ2N63bbWTYApi6H+YiTPB9T3WJbzW4HbU3P2CZlGssZ33cAIufehWTSSzqTWjptXZIIcaJ5/O2TzGTAYOd5k/w1DNTkjJ4ovMWk1e+DjuwaWftqs4cR2sxuC6wBciavqe5T/B1XzxTCHFhicaGVKDvoMpGAE0qXDFkK2yKp4iWiWTQB9hDUZaGRqZZBCqwg3Jfad4K2s2dR3iUpGdTbZA73oPQmCuKdiR5q1ZVEJgpIkXf8VYubj8SVxC5HhiJ1qfnaDFwIFfZCqbAghME9PxPChLXOEhnsVlHuXu493oDj5BwjcpaY4qKI2fsKNsCHCDmOKKjrvRExHLZtPmYpXUprWfeZ44kPTn7w8NcLNntRSNtml4mvxrIK7zGXkZMFiG0wi9PFubst+zN6ISknUIglph8uieja5hsOFgoOV8PL/6aodCwSUIbFmAK84fJ8Z2TOsZjIWi88YYUPzGxmTW6etOYtA2ZdpDB04EGEeu39PGT9de8feqKyOgEzVFgyUrUxTPcJtVz+D0FWKTN/8mz4UhL2DYuRydgydGM9G0m6mkY0HGUzH0z+BiIKy0+vtQx9+tenplhASEWbyw3TaL1VZ+oSba48S/JKfBfXaec2GUgwt7q22gQgAD2JqtBTYbtRE73/O+AUTk+zzt8x1XdrfJEK0HP9bpppYvSOJyYJ3LF6S88gCLK/Uk62vfmT0IUnTXSVl/A9lppUjrrCAHCsuxadIR+rYsGPwl5cgTAjuVaWTPXJiPw5sY4RBPHAGdPgiW0U7DUFVzYqFuTYB4N6rkRVAh6EDS9HtSHehQ6YyrO58idj92AIlYbZDyUmJ79YclIRpw0yRPaVrQ0ev/YFsjeg24oF9RSvYxGXkz/3JnYii6OKBI4VdcRJGItBIFo3MS/YWGQPxY7eikQp5zAJ+2bBw1CYKAAFT13T03pi7nTTewyyCGQG1k47hWVCiSoyiwDBOnkIVQ+5GPZXcMwyYb01AA11qcf6RgBZC6dKO+8umWQE0Hufpvz7hwbnmXr9B+9IKEP6J8hvfwa1gkpX54ecFZOuBJgUTP1pBciOFihJ0DYQ==","layer_level":1},{"id":"5128296a-f271-4be8-938a-fab632166600","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"服务基础设施","description":"service-infrastructure","prompt":"为AI有声书生成平台的服务基础设施创建综合文档。详细介绍支撑业务模块运行的基础服务组件,包括队列服务(Bull队列的异步任务处理)、缓存服务(Redis缓存管理)、存储服务(阿里云OSS文件存储)、日志服务(Sentry错误监控、性能追踪)、WebSocket服务(实时通信)。说明中间件的设计模式,包括认证中间件、错误处理中间件、安全中间件、性能监控中间件。阐述类型定义系统、配置管理系统、服务注册与发现机制。提供基础设施架构图,展示各服务组件的部署位置和通信关系。","parent_id":"b3ceaffa-9f80-4cdb-a205-b0d69baceb09","order":1,"progress_status":"completed","dependent_files":"server/src/services,server/src/middleware,server/src/types,server/src/config","gmt_create":"2026-05-13T22:53:53.0827308+08:00","gmt_modified":"2026-05-14T00:10:56.7846913+08:00","raw_data":"WikiEncrypted:vMsgMax61wW2sTWhXd8DH/FzgiF4f7RP38zZM32tB6DiBiBmN0ynZeRaXeSJojxESqub+PhKUgbABEdzI1N4Wi9Kvuht/1KUTCfIqZqdUfy2kH6JE9ljVZJEhR1I1txV5+afe6caTzqNidl7muvKhhBuuV6pgWFFG0HOGWShUXgQesvrKSFUJ85opwpQVA6ROLv4uyKjB4S5P7buC9h22dGa9VPDObAV/oOWL0RPQwUqVvgQacx9+XT8PmE9xvOigOM54ndavRqYBREXQO3qyOiMs4y+MOfDB4IZ1Q0aEYtZSd7dULgb+r+zmnmevYIredPJSKGrS9yrq+k70yID90eUgSiZGVRm1m9isgfh46WFKn7CBYqJwetYe0zJTMes7lqEhqhH8b5S096h+hSoadt7KuKjWXodISYYtfA1Mb11O2lUnVRgT6ev3D7Bp6NoZ0Ri+HwxvfTUMkM7aA2BJWQV3piPyoFVJrp6QkS8ntuTQH1fHLl4CRrSs9Y2dFuSEHR7U0UNG0LJgmSvitIZS3B16cdLWMrv07+m//Ov2lp4am5byjYZOQ8mW3uZB1dUvaTI6qZqzelNBbycAZsPCkQJkb2le39fQFfGukl0SM5kh5XhnNtPNtKUGcAuZ5mmPjdUwGrJCwWsagM27aJ3ccITzvPmlNSiZtn0EWPiUMUapb2KcZc1FJB7pvKZOOwOj61YMobn9empJgTLrZm1nrLccLiGRipC/umHiNWPs2aLDlyPOizpFsFxLz3UD20STwJWXvE424V2cZVno/cMX953CBbcZKuMC1hfQTyqEBHDQdbSVclq1up/yU0LdJFXTbTHqBkoaSzb5X2sKvzGyOnJvv/y/gE4m0jttWyxA5twdlxOX7f/EoTV2cqNnLo+aeY1/CLTPzOUgt4kjZKwSjXfiM3L8MOMZrfmvvYi03IbS2DXQVy8ZiqAB2+sw5hr+xgbLXL1XuWc5EbR2+0+bYGRthQoq6ZtlKuViy9GmdHHtcGGoyVjHMfhkYfVZpJ7cA+fopm9/W+t2kFkf0AXlFK5G7V1Xm0skzqxaajeW7EaDd/+BsA2ngJ0V9/mBu64xApbYhGg9hIlVz/l72VAM1cC5aPYtPaLQ1WNgqJqgEZeoG/wdnzoPgevz3a2AEHbJb04TkLg2FI9iG8xlZTQ2HHoJNBvLsE1Yy+FytaxDq6TMD3EquhjSwbZ61Wo4AhCo7XpevMp0JlqU+2AsYPknwtNRmCgzPo7HBOIoG6Lug6qxx7fcU1HP14Gvmaw6EG6fDrQkWOvRE9nUMwfDZPOQ7bTOxILHLYW+PSAQr4gGLsCb6k41S1lTu9aZFCfpJC5yJLp0O/mHsO94o/uTfmKRncSgR13NBPOtmcNr0vSQoNlWYg9Z7TaxoIF4jKYe0oW8XDeAidTIJzB7Eqb9Tkodw==","layer_level":2},{"id":"ca2b10f3-513c-4fab-8860-e971fd23b17d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"第三方集成","description":"third-party-integration","prompt":"为AI有声书生成平台创建第三方服务集成文档。详细说明如何集成新的第三方服务,包括云存储服务、消息队列、监控系统和支付网关的集成方法。解释配置管理、认证机制和API适配的实现细节。提供服务发现、负载均衡和故障转移的配置示例。包含集成测试、性能监控和安全考虑的最佳实践。阐述版本兼容性管理和升级策略。","parent_id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","order":1,"progress_status":"completed","dependent_files":"server/src/config/models.json,server/src/services/oss.service.ts,server/src/services/redis.service.ts,server/src/middleware/security.ts","gmt_create":"2026-05-13T22:53:58.1384174+08:00","gmt_modified":"2026-05-13T23:22:46.7991039+08:00","raw_data":"WikiEncrypted:WxCGFGSl9zR6IDeUdkqKNACFcGLyx5HNn0UQzHtkOJVoVN2BLrMtPbbNkfhYYzEQGaeK3o4fBODff6YTXKxAVwX56FccN8fd1DJkrYnPVvgV+pC9xufAwKREjfndk4E2N+aub+dGLzF6lg6ZVR5P4h2dg3sGlkfPTuYc6nDvNIATYEEJ07zzeNG43fVEm6mgrRwMiovtco8j8OnB7Jx+DTBy60Z5Q4ZJfqIpiWeNk5ceWh//hbr1r8uWO1Yf72NxtqePgSoN1Ip0cVR2J27lhROlfDZDLt8TFqVSS9f+Z3km88bG7OaY/s3fqgw7Cu42YGh/NjNInkqBxrYrwIkIgSXUVvowDKVF1aA5jSRqnk6EDrhRJ+i9YRRPYeCI2c5m0mQOhlGFDLcURsFIX6NLsMBa/RSpImL2ii8Akm8GPS4HhXapnwIbQVeZakiDOAg2eVIzgiKw2ckiOlgUhuQJAv6cbzKK8FyCRaoO1ev8h0dmZeuyDvfWQWC4ir4oQC9bylT9f4Gp++/sYP7yFKD5TfAqsrHADDhWf23WZCDIP4H/o9MqoLHF7mVd5nNPLGoADL3dK/q5P7pnzFTKp1q8yOetS1tBpLuKC9pYoCBIelN2BVZX6oDfxBXq98AN00b2WpAFzRXCU0FJiGjU96nUDoL/NeJB060OxADLcv0FrDMMOrDIH4IdsAfAhNBMtv6OtWNV2lrBwJG2FJTlZENIC4Y9AMh/8dcjZWvh//FU3Ro0j9g0lFrkChYC/w7wuUsJBnIPYePcGL+pRd22P15pj9qWfGF0/uSDjaDaX4wxFyFiPO0yM/TOFHyp52PwDy6QuLlgLNVrrJwdEimIaZvXv6OyTySEUx6KhWNRuQCAqPZrF8fEI7ztF0728SBKTPORsA/qOGCOA7YFGMNjBY6Sh8I38tViXyeMdQ5AHKhkCSli9Aa4sjImBYtbGX1O9+iViTV4OKndH3sRiwsmmRYBHvoATyBONTopOOeVRHdyR/Dg3vMoYNgcIG2RbrBPOeeKUWd0rbCgKQoJhdq876rzbeL+GOOI0eUtf9zoCX07fRZX5cxJlR1YZCY4C4F9Pf1NHOvQht94V/Qsd5QKdtymfZzm8yeL6WLS53jaCoawvvXDu7d7jtmqjkADLgGPsjtRpmmCcoelxi4n1J55Abw93+ZdcpO7I9jyRI0FI4yrYWc=","layer_level":1},{"id":"f9f88651-f0b7-4adb-83c6-38914476047c","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音色选择","description":"voice-selection","prompt":"为音色选择功能创建全面的使用指南。详细介绍平台提供的10+种音色特点和适用场景,包括不同性别、年龄、地域和语种的音色分类。深入解释音色提供商集成架构,包括阿里云、Minimax等多家服务商的音色库管理和API调用机制。阐述音色参数配置选项,包括语速、音调、音量的基础调节范围和高级参数设置。说明音色预览功能的实现原理,包括短文本生成和实时播放机制。介绍音色切换的用户体验设计,包括选择界面、预览播放和确认机制。提供音色选择的最佳实践和使用建议。","parent_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","order":1,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.controller.ts,server/src/modules/tts/aliyun.provider.ts,server/src/modules/tts/minimax.provider.ts,server/src/modules/tts/mock.provider.ts","gmt_create":"2026-05-13T22:53:58.6156024+08:00","gmt_modified":"2026-05-14T00:11:17.4947241+08:00","raw_data":"WikiEncrypted:M7RoxXiHpi4iE2Tsziws6XSQmhhz7cfRQ0zmsG8g9FV1oxmfi812boCVCUnHGE2zCnA1ANmTBbz0UjvGZZ+togw/NmTrT6q+tvKItKbdOPKWhVdPcDLAjj6gLTnyksbCqzi3qNu7CJdS6FSXMg41eAF7wZDO3qNrE2uFGk/4KuG9fi62cV2CUEi0+S9dQOEEy9U9IpNY5QQIgZpivakjkqOC8uMvE1l3Bcru/RxnzfV+KcsIOoR9XJ1p3t7bUTdkLaMypYXSyev7CztO0NuXN0sKEp4TmzeUf88BieUKhpgV/59vQhrfxErSDO5uDNaFH/gC1gNogm3BwdRYFNgKFU23vuMAa7ccQfNaz35g99gbO2NbQsqj3Qer/XLRioiOXe/B02jhhfWomTvbIgKGmbqLNH50cvNZh/GalezEivq/2HmzVmBaCGy06P8KCuFEwoB0Z5/ycXsfjU5N5LNOBMh5W6qBPmzJsLyoLuayQmSSggHfzKzFDHKNdhYll+1j/TdpH68KchjPZksr8oXZCbFZANhbgGTSEgbkSNEU3B7tzLlEHbR2Tb9o5fjcREzZQ5Qqav74cghXycw6dJOCsRIMJ9UyShCxxZcEtzCSMevvSlOKYqi29qJjUm/BWtsFmFPlp7g3BLR0uQh7shf8uaPKpH8/nj7GBQ8xq1Pl6/rk2+T6ub+vPPjXdu2E1pTVfFnIL8I4NTCOjyOqD1vtMuKTHkpg2kGyyPZi8vGdXC54WwP3FsLftazlXuoy28vCsFmgedRlWZro3osyt2SBB6WxBrqeeUr7LpluKduHZk0oOPyyxg6IkggtZHeXzCGzMACWrYMP3B6CX5m5SMGeD/oQhMKevltehMnWKX63Qbz5Qg7AaGyERfb1crGNu65H81tZDh2yXRUzKchYHxCkqmiQ9o21Tkos7OIqxcB2vPPhMfFU2BWBgnrXbO/eFriffstKnlPrlKIpAgoeJn3HdIXEpKu2kY+emSMqCAWCh1xU1+cK+AHpxR9U5vwPI0UwzIuptOylmw5CZ7/snfmATge+XTE6rTmu8oOF0VLFdRT7vnnZBxAGXU3BSHIkO6c4y96DIB/7HixSACOtj6BZ1YRXpTOoi1fYyeyyIkn6FBdrdRet5MlDoVRKNQAeFyZ0BJNNy9e8ytrn2gHw29/FSB/IjuKVa1z9QCsOtveFlRHzE8iu6tEVNHoC5jPAaUGeAHV+JmTzKGU3gdpiUdxNmXYu8RsBPRa98y65Zw2tLaVVir5i3AAYXsGfcocv2b4GasgQt4aRHwdrX2ewyXhacabo2PuBk5859xY5+H3eENFF76BHFdn7sqs2hFOBchCDY5lZPSceVUNfaLO3wsJ1J+NDJZqGCBgN3seyyGqSZ4u3XKcFEGrIp3ZUFWsOPjAbHNXxhFrEmr/AQmeFi7ySRxw5jFgu4j0z3kDPaneQt8C/509tT4lEAcJCdaEpZzZFPK+Id74jEPkeVVKH0u22xA==","layer_level":2},{"id":"ffb05bc7-ca99-4532-9685-6d6480a0ab25","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"Nginx反向代理","description":"nginx-reverse-proxy","prompt":"为AI有声书生成平台创建Nginx反向代理配置文档。详细解析bookapi.conf配置文件的各项指令,包括server块配置、location规则、upstream集群设置。说明静态资源服务配置,包括静态文件缓存策略、Gzip压缩、浏览器缓存头设置。阐述SSL/TLS证书配置和HTTPS重定向规则。解释负载均衡策略的选择和配置,包括轮询、权重分配、健康检查机制。提供Nginx性能优化配置,包括连接数限制、超时设置、缓冲区配置等最佳实践。","parent_id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","order":1,"progress_status":"completed","dependent_files":"docker-nginx/bookapi.conf,docker-nginx/docker-compose.yml","gmt_create":"2026-05-13T22:54:11.8251897+08:00","gmt_modified":"2026-05-14T00:11:36.6179842+08:00","raw_data":"WikiEncrypted:jkwPAGb98lq7NrD/gCJSasSjEagMn9nVALZAKrq2Ai9RWvzeaYBkPOyodLfiFLpxPPYngWZ7tOXlarpHKiMq6lFnexkyRdUjXALA2pZMtp0abpTrcVglE831c2+oh5xJhf16QRs1EV0EYIgqr8rHbVml4d1gf8xvmpQxjK8eDQkGIkqMu7lVM708wpNp6khyKbTDDXNpGglxqO3zGv7HNNuy3t5mxH2kj4RPf27i1xGowfN5Nynhst71EeKnrdpKu8kvWrYhusVUNGRWIv+v0WHdm8qykq1Q5Mf40usldE5NwNDvXaQMs0BmVpMoPAq5kISjdUhyCHbDbP3waDsaMROby0yJ+uAgJMCuBeekziqJEPvUxRLlZG/rvN/UtJOpdbslqgMqLl1Lnldeg7yxB7JhcTlxIgs8nfDPPT/rlFjyg0ZbyzSzIdhZoQH1OuJx+wlm9p5aYdXU58oJKjD6n4FXYr9zhMaIYmwiqcZko3TgMB9KjOXyw21BKGqRtzYLiYvHCJiS4fxuBuZn4DtKZRIymj2ej10E2snJnGsnz89X6jBNiq30ppa+Rf2rR2a7/tx8KCKIDyx1EtdX2oekeAKscBAjSF9LM9Ag89wmdpOjxLQFxWQOQUt+f+ie45uITvgtoSGouprPlCxDg67Dp/iTfrX0wPR9LN94czo+tSFTBXFqrz8h6D8B09cAbYRRcAiww5it+BVEKjJNehLNwrJX2lNGFgCujd635a9YYbpYsUVDcRFG369FkS9NuVVOeLS3dEfaqHBWjVfUcg/4QRsCrfhjkDCPxrIgdG+xSs7djhaYZ14tZHZSTCEsxS03s3Uli4BXBR+hZPDV04dtqDw1poL2uk9rfCtt04ko5Zg5rjOYR++MNHqKn4luZwEh3VlcqicG8R0/xDjyoSv+tE2DQmbUXnhsKOgHa48HMR459GQALKKTOSSzu0/9lIPexctD3dNtum/uYhHEKxVhTW8hU4pr3dUF6ng03bpLBhBH2pRQBC94NW386CZ5kFwx632PDImGveeN1b+z26Ub/MplWTo/YUOwC35/GPI1J0a/x1Y8HxFGkGwPmzu/TLjIVLEAaM5XeVxEvTC8f2CXmQhYF7gmGikwGdvXvfTeBsE=","layer_level":2},{"id":"db4ce39d-51ca-4627-a387-349fadfdbd57","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频处理算法","description":"audio-processing","prompt":"为音频处理算法模块创建详细技术文档。深入介绍音频合并算法的实现原理,包括多段音频的无缝拼接、静音处理、音量平衡、采样率转换。详细说明音频格式转换策略、编码参数优化、文件大小控制。解释批量处理优化方案、并发控制机制、内存管理策略。包含音频质量检测算法、噪声过滤、动态范围压缩等信号处理技术。提供性能优化建议、缓存策略和扩展开发指南。","parent_id":"e95b9689-9c54-471c-8889-c927cfca7973","order":1,"progress_status":"completed","dependent_files":"server/src/modules/tts/audio-merger.ts,server/src/modules/tts/tts.service.ts","gmt_create":"2026-05-13T22:54:12.841614+08:00","gmt_modified":"2026-05-14T00:12:37.6196768+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrKFL9rSuw1i0QZAZGNhT+//unGMpspYxoWxWstJS8TWHi+XL0E+iiKUltKSAvcRxp+xk3BN8tgfwu9j1VBZs+f5CcFaP34GbBJfzSj69ZMAoHpS34ROHekpmBPtUUKL0ZhBzScqHB73uz9gdmZglH1BLZzmGl5SW3WY4iS7Q9q0UdG8419UpobSWhAV4JqcUa22It2BMbOg++oGwdgcXt/NXI9XpWtJbacmnCv+8NqOxp3y2r/c8Z56jtCXpECdQzg0XrR56PFHFDDkH830Qq/nF84hz/OwMjASv7nyxZG84S/iLGdq/36qJEAjYVeXZA7IcL/J6+IYGrhEaW+E60FFnajpiO9yWq7hOzgZf7SV0hqK7jAdqViVk82274OaWcbGxE2aLDXr+TSA/MxJiFYUJxJlRWiI6H386yD8OZGSg0790VQ39U4sBi52UarWbiRl19hMLP0pnwR7LXO/bcH0RKTpzfq2ANtXuYkpBDWXEpbZ3XjbwxdpOawpRCAwFZC1XnLEfmCrM8kAD4rdMVhHCy62NH9+FJ8EN2iD6PlPOfBxNdGGaTcZ6yhpKU9ncvvLuelu5oS9gVWEmozOP7SqqODOIKEtGgHEsuNdNFQKOchj0tB9u0A+jqz8y9cXMIRKkwXIVgTaQjTBy4OW/pl1hSBiPUsMAiJ2AUb5YBQjqkDe005upoHhRVqIhNVz3XDbM5f/CW7283lPd3HFLBaazarCn7XRIv4e1qIies098ybGjghrC2T86KoENgRBgTSm5+m9GFl1EgNEv+Qv2xYwimg4n5Odcfv0vBQhTXOCczWkHkihwEQ1c9eL5T0uY6NAK9cINj8iECG1qdLuLxGGmB3MXH44VN3S68MHBE3YoqvRQzPoi58UhihwjTrtL4mbFLptS968eage1YXNcyE//Z+FPSoYLm4dFx4pKQohGCqjkOYaWO+LxNYx7whW2OlDPzUTA1U26Y+owdbztyzcMEHCGr7YhCerYOFzjYqu+PsWQ0ZtB7WT8ZNnHOFHt3LzAoC5jCDt14Mv3xavQVgAsBH3yjBKEru+Ac6ZKiOAeSx50VrtBWlL3oQHaZSJ7Pg==","layer_level":2},{"id":"60a4d55f-2abd-472f-b698-a810d4529780","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"生成策略系统","description":"generation-strategies","prompt":"为生成策略系统创建综合性技术文档。详细介绍各种生成策略的设计理念和适用场景,包括one-step-outline.strategy.ts、per-chapter.strategy.ts、sequential.strategy.ts等不同策略的实现差异。深入解释策略选择逻辑、参数配置方法、执行流程控制。详细说明每种策略的优缺点、性能特点、资源消耗情况。提供策略切换的条件判断、动态调整机制。包含策略性能对比分析、最佳实践建议和自定义策略开发指导。","parent_id":"ed23c946-e41b-4585-8aa8-be7382625e28","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/strategies,server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/book-generator.controller.ts","gmt_create":"2026-05-13T22:54:15.2948035+08:00","gmt_modified":"2026-05-14T00:13:06.9897385+08:00","raw_data":"WikiEncrypted:I4K9JdQR3S3kKu0N/TK2PXFdf9DiigpCNiulM07GkfHnH2UW7RgCFTwPrpHgAUEwig3xiom7QuhRLJBIJB+v51GOkATix+0rTDK08p2fhCbK+ugshs8OXRzyOeWV8EQSbZeZSI6Onop71ABFV88zhxmt5vft4Zkb8UGrwH247XOCbb9mgSDHtcb2qcgSW473GdIzEu5lYlkVq8QN9/5ltLjYmcOoCj5JtdoglebdJHKLuvBaLuhMMR0rI/GOxmC6OZFL4IvVy97T5uq1HWx5y/9GwTn6DHmnelp2I9WN7mYuTaJJmqbLAFmneFfnTqQXRqpZK5+5TvH7ynPFgoJa8BQylNlsfiBet7zwyvn5va0vdqbnaMNmVpPPtxenYu5LebeiKxh5UH9JWvfFbPjZffkYDsS+N57fo48ARIW31aGGi8RAZlRptjX2X16Hxu/OznYhpNdInPoYhc1Y5zRmfMozjmwr08E96LCPyR9sCYEHNLQ/PdcKZpCWLPAZOMkMGScAFm0NEx5wCGViAF/It3PF6rcguRJ5Eb+Vj2vukGCXnQgOiYZuxROGrAO482Kg/wERGGer5CDABFIH6mhGNaM3fTnf0XRPk5wMikEUnNLW7e0tMAvoQTwFCtc07vhrAGq6qpeDqWJvO2BMpN9PxdTfa1lJ5imf2bd00kVfkSFVmI+OwiFYJdgOlCeKaBM7WjYhArJD2qMWicBtWRsU7OHi4Q4pozLTXQ+2F51tDApOv5z0ZbsarDHxesGij3hXoHBPJ8LEO9xBXTNId5voM1c/NiexIiYcUyZJ7BgvFlushFmAxsZXYQJ7XHI/KHchrEkKpOdIj7DzbPP97iY5DiFMKPfqYZHda/nZhNHNlgU59HM+wI+vflaC8PxW8eoGI/JxVhCo+NpsU74bGyBuv8PRrb/qynPRLv7aFvdq+Gp/F4IYlUNrXphIuvowR/vMGLmVEZNvGhgU/sBS+hvjF/Aqpz8rumlErkyd01OZY8+kA02BbYZgWR3KUjJuJaNPeSGKt+N6zWHFIZWFTQELOgQvBAfgtRrw3ZUCXKprWeRGn7gDdWqbI6S6hAt6oAag8IJYWcIjZdL++MWJKJAQpCpe71ILwHwcnJgOc1OY3gJyUBDeSGYh5UmEzBKceFy7jCh/BgWDSoemLI2wDPujFrqGEo8GYaTBNZPzZEBu6ytf/58M3LaZxk2vgXo5OCML4XFUgfXogpsQayZDFpn9s3H9XjGSnhj1iuegtgSzk4U1oWEfWD/KQY+TsfFM9MLqYosOUZJSBh9f0v3VvRuntP7B9X9OFsWiRDwS9hHn6qbQWWNmL+flno4mRNDiZpH2LWGbLKgv6a6/o4Xe9nRdbg==","layer_level":2},{"id":"471e78c0-be45-4764-86a7-44633ddf2085","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"支付集成","description":"payment-integration","prompt":"为支付集成系统创建全面的技术文档。详细介绍支付宝、微信支付等第三方支付网关的接入实现、SDK配置、API调用流程。深入解释支付订单创建、支付参数设置、回调通知处理、支付状态同步机制。包含支付安全策略、签名验证、防重放攻击、数据加密传输。提供完整的支付流程图、错误码说明、异常处理方案。解释支付金额计算、优惠券使用、积分抵扣、退款处理流程。包含支付监控、对账机制、风控策略、合规要求。","parent_id":"abca1a7b-42a3-4a19-ba37-6e30da86e151","order":1,"progress_status":"completed","dependent_files":"server/src/modules/payment/payment.controller.ts,server/src/modules/payment/payment.service.ts,docs/支付集成指南.md","gmt_create":"2026-05-13T22:54:25.8679232+08:00","gmt_modified":"2026-05-14T00:14:03.2612246+08:00","raw_data":"WikiEncrypted:lcOTJMVsDrhWtJI8Bt/2Jr/jfmU2wik3Neuab8saBufvR6eyOoNw5Pt4BEjgp4ihNRzqA8FlFuQ3/FQeY25YidKygvSGVtJDYJn+6KW74EmfJHfVyY0TT/691Fb1WlW2azwcMzyvw3A0591WJRrg6GXwdSQLY3rB5inL9IBWvPEYaLvmGx9wthD/tY2BapnS8GsMsymQv5c6hpXsew91tyHQo/s8G3+hvrXkG/gqa3z8oXwMkjbAi8hhbJkdYvZvUU/Nw/UEtgtW06YbTbx1KVge/l79AgOf71p39C3xS00/ROiVv7mCgspU6CPAfZnOcX/eXY3i3N+PcSx+RYxFu+yN/9Y4kl9WBjRNEPPHlIBtsV8pwjACY3T2O/yfgA5QFIx+7TvHnY8DChhkWKAtlf3zYesnSuz2BjAKLEYOA16nA0v9sGHAT1XLuaiG8Qqb0XYtd64mQbDfwpuYTpOTQnXsXyI6GaGziRvWJrcr6pBQRH6gI/eE7ouzac7suSAHwVxf6ufbc1IcfrsRCbD72l3taXClSqcTEq+3pR6G+D3oOQe3jjKbTtAkTEmr4sqMsivPB6yCcPvd2bWn29hxbkVI+DIhX1fUAFjKt4SHQAwpr8ODux7cOMXsIMuY2OvXnJHG16HA20YkWBMmYmiJy6ENaOBTr+jjv6XEnc3ClXjq1O2pAJFtFe5PtN7G7uXQ4QV3lzsy/uiZb29EAZmP7enWyi0HUiJ0FIcus7HvGi7IhBIJB/czmt0ECl/qigLkobp8IVaoCkl5mESiazCpnOdYGoOTRwtRiDnn/H82y+MJjuVSjqY0ccvjU5woOMLNOAl73YSHz/vUpfPGBTRBmwR8OggO3yh+hLFS1GVExbmoIMbUR28YgmU6tWvKEEfR1y5VnWmM0X+18JEDqN/av9i4zyJxW8gOvKYscBPOT2nDBjsvxx7gNArwgoWG5JW/tlM7GsGUbSAkyySnsZgw8NHTb+JSzgzPasQ8aeHHSId0dcu+PN+onN8/VhWdaSvy7VOX4ebHMhHEqRxyXnsJ59ht2nyMBaylZn4jG0nNYpjApHghWqjNVuEPxSh4MjcAuHedbPgteandcQM5nKj/bHh1OD9IzM3p3FJMbDTrNigue47+qPGlsRT3nuKozOKPRB45CvBVrN4klhG7uOdl/Ja+uiaosQxa3lVIb2DNfafIVBWPY4jNX4fnAa2FAYUZ6IbDAUISUJG7HnLexhlSXXAPwBG/K//1A2CzSJfOxc8BykltNdZ1VGivyO5SbKSfFhQlDl4KYyNRGEUt2gJN0UH+PfgJKWAQJNHy5/ZTkOSaQsfK56TCZaGZMNeoznG5fv09U+UfTyTNOqPe1GJJk03y1yXrCWznXr22qCdTR44=","layer_level":2},{"id":"ae2fa02e-857b-4408-a18c-80eff10aceb8","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"模板管理系统","description":"template-management","prompt":"为模板管理系统创建综合技术文档。详细介绍音频模板的设计架构、存储机制、版本管理策略。深入解释模板参数化配置、动态内容替换、批量应用算法。包含模板分类体系、标签管理、搜索过滤功能实现。提供模板导入导出机制、格式兼容性处理、质量检查流程。解释模板缓存策略、预加载机制、性能优化方案。包含模板审核流程、权限控制、安全验证。提供完整的模板开发指南、最佳实践建议、扩展开发接口。","parent_id":"33e6266d-c33e-4eba-87d0-aec3373141a9","order":1,"progress_status":"completed","dependent_files":"server/src/modules/templates/templates.controller.ts,server/src/modules/templates/templates.service.ts,server/src/modules/book-generator/book-generator.store.ts","gmt_create":"2026-05-13T22:54:27.9726999+08:00","gmt_modified":"2026-05-14T00:14:21.9752572+08:00","raw_data":"WikiEncrypted:Zq4ehmpLlYYP4UiyNfyd8olBxq2iwQfR5Yu4XhTZBYzF5sWI2stBW4jezyfMLCkKJPacy+nSwJ3yUOk6fJggskrQ+FOHFEDffXg2JC8nBOMWvl7JnrEqTaQKwwVnMqgK3ZipkmJijHnwaPHV2W0RGZSCafctT38iu7fi1fsv/SQNPz88h72V7QD9w+btCl1VLaoYaeu/MPbE9ueS2Bsq7zDLl/dWE0icYdLYTHOFzZy5E1dH0RDHVfY71B4YUMhJ4xeqR0CYF2F2pmBb3fV875QkViA/VrJmI4bJDjtNfRpbdfxuoQk5urNSE/BjdMT3eu8LJCf5ZZ1zlGKbwp/oGZai0dZ/f9/rDYf+nRIIqyIemrxCrVZGY0FGsRWL2PzXnm4xla/n3Goq5I4u4VzjUGi//Y0ge/p6lyOV5dG0KzvR3WU7KXopdVjpa+oFkXUzok1RkRlEmA1oVIRifS8mVZFH9wzXlw5w9GetinESUr8Se7V5xYa4NeMfqcJ5giRW6LWbWw06NBc6OOv4dJdkqBSt2tVZGaaO5YtwiC1WhQnEynsoOhzhp2pRKuznC20gbETbOPcH8uO7wTORgq3JSCtaDfVVHfrkOmNcIGkB++0lOWZpQbq43fFUYAhUB+agiXWCNSQID421/DZNKNNaDFahBluixogDiKw1Peul07+Uo+Sk4f2h8JH13PNETiyc5SwntSAoVwgkWeoQytxyF5v181ftrpABkcgdHpx5qNOCMZLuEzd/yHM5zo+J5SD8tU8CQLAsFGHK0NFZMFnPmYlD0T9NSTxHGQI+bHg9L0z6iv2PPByW40gGHbVmZDvcfSb6COB1fF1+0ZakmKlHCmgNhR0V3elAllG+w6YLC+ebziLdeIT1l3B4BwQvPZFG/9rBwPsf6ckOvfzag8vWYKZ11iXXazVdpC2gLF9RQmIZjjnx8ryqmNE7h5eR75TMxL86G9Unwi+KA97X0EGFy2+5U1OoxH+ry0KPg6PAiZrSmuntd/aN4yeAZrGGYyO/8tYRBeRHNCNAWEyU+77kRd/myNoErbhJHMbY/rC6OtlPBKVK5EJiZ7tFVAo1oe5n3UycjpwTf1vLa+LBxmTudq5widFrBp1e14A4W5mYaAFULAy4Gftw/xjXgnkWe1u3isNpwHF0IvNYj0suJCIxdAX081NqYzZAkKOJYZeUvI7ijYLkl91NZerGjFfkDwBHIh/LYZIW7sgahNmt0K5cw/Hl6bpcBjufZIMB1DANjF7vULC336yThUWYOLrRZ44TW5V/8MW6lnTlf1BjFEQsusF1Xj1KkSQdDYifJ8n+yfkgbWBOjw6zd+qrMJa+Ug4wpo1ZnS98AzABYxVYosXHmA==","layer_level":2},{"id":"0a6941ad-e606-4599-a7c4-e81ddf0f9bfa","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"历史记录管理","description":"history-management","prompt":"为历史记录管理功能创建详细技术文档。深入介绍播放历史记录的自动记录机制、历史列表查询、批量历史操作等功能实现。详细说明历史记录数据模型设计、时间戳管理、播放进度跟踪。包含历史记录去重策略、存储优化、过期清理机制。解释批量删除功能实现、历史记录同步、用户隐私保护措施。提供历史记录API接口文档,包括查询参数、排序规则、分页机制。包含历史记录的数据统计、用户行为分析、个性化推荐支持。解释历史记录与播放器系统的集成方式、实时更新机制、数据一致性保证。","parent_id":"96a4f32c-e94c-4d2b-b1a2-05d464dc2392","order":1,"progress_status":"completed","dependent_files":"server/src/modules/history/history.controller.ts,server/src/modules/history/history.service.ts,server/src/modules/history/history-batch.controller.ts","gmt_create":"2026-05-13T22:54:34.5052659+08:00","gmt_modified":"2026-05-14T00:14:55.8481216+08:00","raw_data":"WikiEncrypted:Em4K4xpec86/tQbfCRzBgAjPUiIEzokz+YfYM1d/K9FF4jNNg2FTAzFafuZ3MONf5GBVI5M+UX4RwR9lZPJf7I5WZThbGLenB5oP0NKH4L9GXprYTxCA2GbJ32RlZahx5PNdWbmw4EXWOS6ITmrMw3iLf5gFzIv8FlkOQ7TH78RBtsG1hXCY9QVLtEKr6ojZ1WK+YSbxbkTDBaWZ5oimJEyMAU6dGlhGSP42aMGDGNlZU6+qs6cbfab5jBG7PJdpau0VlLxPpWdWXzfv5lDldqiIIAy5mq1gd1WueI3GnkcPWN5tnLfqbdcjyp3k3bhICIv69ym0I4mRNyEEq6m+ya3ZxMFxY6x2Bp5vS8ugzEaob7ApXNcym7sNMlJcqPKFwwKDS1A7dbPFcjbOXJ3hFONkBQ3kgYA7irlfKPmPCiZB3/MghWw1SQYuClivDVjnolNuF3fW3xl3uxXdwOQKbWxgbI9/0YF7+KxSagq0PpUriOSQkBeWNfKDnAwe0ZW4Y1VAZWfj3UOp7mROk+OT78sEYVv37w4K5KbYTtXV1DFLGM3NuVWIU07yedc6QL1F/XgOlF3uMmdqAy7ltIpaBO+EgWjsv0Z2SAd3y4JQGenG7eJGdYP9ewoqrdPGifUKiHdn4VeOpDIQxM2dj8NAbUfqPrpXeMfAbnZ4JECBdT4JT0H+YxaI/jUiRJmUiOb6xI3V39XmY00zC+1hlfl19Kmy8Gcfz0o7rBgo9SZC5n7Kj8yaJHpYKhqRim18ZjSyFAqOaKOBYUMh+ogv7GPsJ7htJuxVYaNPCJkkGvN+wUzfTIPiIIk8AfDW8LqKDDRUPmMHfZxwANceALe0zXp8oPGB25dgbbiGC0vEzLdCPeZ+4VdwuSiEPOH2sXxi3QbEF7/v7bh9ezCUtCoQc70a0iTAo2dcA9WFqbZgc3w//GFWKqX5zzVbUH3iw936Y3MGgzyh1Shax7h7zdrKkJVcswDXjdG0Z8HsZQ3zJNQWmH6/6dGsYaumBKA56wsNDvFA4gavlzWnI+pd3UVcmuclcVeCE0mnUSR4QUWKnv8fE6CLtcx8rtACk/6lTlt2K1BwYcuRBXMFb5DaEoDMF50DK6/Pm4ykr9R+pz6cShlXgTY5Eb10bbi2ptlrxTU68B8ijRNPrWwEU7PfIk2zh6gkw3+yczxKFYzUf37vg5PootynhQmsVYDaJeHfMpgS1kL7PQyqfTr3dcxN3tyrysinw6Qgj0gL2NkSmi4nhzhrl5ISIhkWVBb41+DAUu1tC/99YHvp9XkYdQm0PvdhjGYPs8kM58zKq/g4umc1AbslRXpTAz3MaM7At22F0od1Rw5I/GLX8rmrPBcp++2YYck94015m54b4gaR0LE8346qH/8s2AVe+JIVd2XdC7yegyObRfgrYnV19uU0A6eX65e79HdzWUnc4srSR/C/s3LlpSnd9NzZ6aio16dpD9US13X4xOI1hq3A9yBZ8wPWxkv9X0+/FLlVNKTWfTJZlnnyu7JerSGdRBkn7sxlGeXTeUlA","layer_level":2},{"id":"5c51d8c5-f076-4ce6-b4ae-e0ce713e133a","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"章节模型(BookChapter)","description":"book-chapter-model","prompt":"为AI有声书生成平台的BookChapter模型创建详细文档。深入解释章节实体的层级结构设计,包括父章节(parentId)、层级(level)、编号(number)构成的树形结构关系。详细说明章节内容字段,包括标题(title)、摘要(summary)、要点(keyPoints)、正文(content)、歌词(lrcLyrics)等文本字段的数据格式和存储策略。解释章节状态管理机制,包括待处理(pending)、生成中(generating)、已完成(complete)、失败(failed)等状态的业务含义。重点说明多媒体字段如音频URL(audioUrl)、音频时长(audioDuration)、视频URL(videoUrl)、视频时长(videoDuration)的生成和管理流程。解释章节与书籍的关联关系(bookId)以及与播放记录、评论、播放列表的关联。提供章节创建、内容更新、音频生成的完整API使用示例。","parent_id":"44b7fefa-24b0-4882-a5cb-b1eb5db75bac","order":1,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/book-generator/book-generator.types.ts","gmt_create":"2026-05-13T22:54:43.4123008+08:00","gmt_modified":"2026-05-14T00:16:41.3918258+08:00","raw_data":"WikiEncrypted:nyydFujZF96kGJ780roJR+LOvbcjSRI3jJMUFeEwHB224IIgmqQclsX4hhVbVjpZ80BQfhQHLx1GEa09mWjE08tYwoFfAX7jjDC82sEgkWw3e+4I3QU2pPtxEy7jECASD8pS5X1IrZBHfivaK03boThzodIw9/M6AxdjWr1o74I+N8Ovl7iyBPI/WdERf5diSvPrKyswhfkjUbElk/dSiuzhF1v5dazxr3H5FDDJMWzdjdVq3Xl/FIs6D8RDlZFJH3Z8Cps+aMkhRbsgqW9zoAcOAPSury76VSXUT+i/6+r1aoGn7bR3a7zpGbh8GX/0U7GuW7EWADqrXSlvH4p3EH6c81B9evyWPkxn9+bM7zfrn9O3DYgA7SG8F9YkQgBAMSRFYfEQjAd8mg3c2Yyl5+fCAo3FEvjL9d4umqmXCB6ARXp0KzhBdv0wNigLPp6/r60M8Tno+/ncEAgmoXZ++70EnnlA62S5n6fn057Na3WEIt+a35dM6qHi5Wfng65np+gxSAWs/IpwKpOZUTLIIbu12cU3ocG1nxaGbiZwkYGPREg573f7uHgE+0jcdyBnZdwBe5j+ql3YjLMHo9hKqSIfoKv9cJy8P41wkCvHgkU3yRZwAKFsCGOdr4B03WRFd8XFk9TJecv2pvTtA9lohmymYosDevF+Rvo6jpIKn659uyLpgLQQWIZjWCBc6VQdVlEnO48U4Qt1lDemZdw44XvHVBEPZMFO4u0cE4YBGIqLOlQBtyFm+x36Pxh/wSH03E83eRoDAu2/ySE9TTdKfVnBR1NvJLJr3jyBqpv9/bqdNwOmACAXUN2eFXTCXiV01qsC8W6WIqxajHZ60VLSuS7rVMwLY6xY6s0uyS+NqXzYxmCZzTdn8HKYdBM2Uf14Y5DofVZj/hcTPsRB1TGSnkhv4IO7UxfCB6zbWV6H0xXJEUIZBnX0cnDBKVmE+82uNA/G8FpoZj4tXTjaeJh/eD3tzHSqA2/TBycEQK4FK8g17MjDtq+D0VKNyffAjxaPokL639KJVxTkQRowI17z6o1j3aHA9cI9OyIlogOxtC8Uc9DSrRFQes6lWE6CwYZTBA1TUPVroJrEDogGXSODPFO5py7Qh5nS5iZ2tKFxK7dqMLejCtmrNAWrkn1Z6A7JKsCU69Q3LUw4s0ab37fSrMyhPnwxBv3m+WAm9hRacw2GkFROxeQDlfaBLM6hTJfyychfXYS3lxxUu2d84rP9GbgBieRwEdqEkn/hIp49qY73bUn7VaGa5xTwmgHlFvb70PCiu1HloCZovOOnrDSk9G9aXFe2aQdGJKlM7QRVIla56nXiSpWEVn24T8ZyoQNkmZNEqPMgOaoihR6NinaM1x9rRjkqlyJx3g8FPSMLzTwBjNo1aBnAcFPr1IVgSQxnOO8JmBekrGMtY2UDc8SyGcStnvvevzdZTxl1gCR4J0OSTrtOPS96MmqwmP+llBGUeAjRLpHKRerKoctIApdiSIuQs2vTcLl7HQgip8cAysgvRLTRSJmIpEOU/nbU4HFMdJiXQlREkn1mORd3DJRpgTsaIRYwoBITQgPhPw+Rb9Vax11Ff1ocYXAu7j9TYCINxagBuQ6kkIaMgmg63xY4k/5My0VNW8GI220zZWUnD4tDSSPMsxdMSS5UjSLNrrQxYJZMA7d73oYpdnPQqvmLlw==","layer_level":2},{"id":"333038ec-0e37-40e5-9565-4bfaf8129115","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户偏好设置","description":"user-preferences","prompt":"为AI有声书生成平台创建用户偏好设置模型详细文档。深入解释UserPreference模型的配置项,包括playSpeed播放速度默认1倍速、quality音质标准模式、theme主题浅色模式、defaultVoiceId默认音色ID、defaultVolume默认音量50等个性化设置字段。详细说明每个配置项的作用机制、取值范围和业务逻辑,解释wifiOnlyDownload仅WiFi下载等网络相关设置对用户体验的影响。提供偏好设置的CRUD操作示例,包括用户首次登录时的默认配置初始化、偏好修改更新、设置同步等实现方法。","parent_id":"56a87613-98ab-47bb-a173-5228193aee92","order":1,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/preferences/preferences.service.ts,my-uniapp-vue3/src/store/user.ts","gmt_create":"2026-05-13T22:54:43.6730869+08:00","gmt_modified":"2026-05-14T00:17:08.2889546+08:00","raw_data":"WikiEncrypted:A2q6dsB1G5KaNgPAwP2ZpOvyjaeUqGPXE0RuZAcIWdBSnWGOZnGgGOer0B0QaLuAnh/bu1w3CEoQrjGK6eQgVrht8DABAGT/ZlMS+iC2umiS8Bi1tbfhs2kQlY9l2oe7dz2FXNIgVwutScjheEDajdRF3Kf0FXyDBiGnc8AEhh0FJnQ3VoPXHQfg7nolkjwsL9OT29eGR+SKc4lOyq6ARD2RuG4xHktYSMSrKodrXti+aB6xGZVTfoIIimhP8magS3qmdYhLQp0E49q7qeLC7c5EE5aCYZCNkZB5FF+wAHNu70TKCFBkksugYmIsN5ipMYP73MMzilxgM0DskM7pErNEokvmoNcyD77ocLTuMw5YNcKOV5DBJgAtHCu+5+QnwZLBb2YKM47WilOvhAK/pPnZE5LF014aqGeSCs/Ff+P0WiML3BAgnoqqIaZ/+36uRyCsTl0qEdvXgEp7WwMbYtyEmtPsIwz+Qsk7srl2jgLYPdd9EoxizVz8us45qTe7p3wEXxmR+UiDhzk8Dl9bkIZkiHqJnC84yslp7a/juBGcJGIDioFKWDmBMXl43g6JtNZiQRGDnNAlLQylzp/ewVS/DbBDe+8jHG6j4577OsKMtF8IBVjMgmgvH9GiuDDmeAoVIr4uoVnOrYVQy7oqi+lTdUg/O6/JqKQfdtOV8YtN+BU6SpG4rZRsDcyzjE97wlYxfGbVB5kusuZ+yjQXy3m5c+7Qktbd4fpn8XIxwMY4i62GjETCPE+iRPdNFBAg4IZnZg8W9olJQJz2kkPt/65/xYkzNkG6E8hRZEP4M7iaL6klR9/gndiA29x3qRBHulKp9ict13uTDiyDtkP0lnMIlqjADzpl+kkcwSsHVVpLdb8bfyj+gMf1oz1RM5zoL28h6vqPOdKzWnlRU07ZHLSWocyaIXnZh2kANreNL+LQvs9AwxIrn5cOT0zGfWWrQEFaXhXcocQxr5LVpXfF9SQPwlwKyZr28jTaWvAlvLRoX4j5/HJvTGiFH1nYDLcIsYUMDzZ3Iahg2kYXndl+dIyI7NHc3xvyXQzqhxW/N+VuWMbEPQkMLQcMOKBWM2MQ3ZBuFQq5dgjFDjyl8iOJTn5uOC8fDfyiTCGgGbK5W7Wi+1rBeOnHaf0kczDNmtIxZ9yG/5m0CKTiz1TE13r52Oa6GQmGJx4LbNt/2DM+rcIXRcu5b2LgjHxVRnMAE705VZZ+7xHgWLGGDj8Y0VR8jx6SjHJyvOdSEe6sdjqLtIX+cpwtwKre0pzZmBdZaZjAnuNdiDYdJD/t4e5kf3C0acEVlCYDaswzmL9hi4uXdJ+D8tmXGXVq6DlEBjmmsCvMkhdzi8A08FVsUOsi+0bNUYG0LcywfNgVi4M3dZhn9QA=","layer_level":2},{"id":"df4c547f-f227-409d-aab6-4d98ecd25fd1","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"订单与积分模型","description":"order-token-models","prompt":"为AI有声书生成平台创建订单与积分模型详细文档。深入解释Order模型、TokenBalance模型、TokenUsage模型之间的关联关系和业务规则。详细说明订单状态流转、支付方式、金额计算等订单管理功能的数据结构。解释积分余额的获取规则、使用限制、重置机制等积分系统的实现。提供购买套餐、语音合成消费、积分充值等业务场景的API使用示例,以及订单统计报表和积分流水分析的实现方法。","parent_id":"aaf4b31c-af75-4cc4-99a5-d5e6f829f80b","order":1,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/payment/payment.service.ts,server/src/modules/tts/tts.service.ts","gmt_create":"2026-05-13T22:54:57.0784286+08:00","gmt_modified":"2026-05-14T00:16:32.1993279+08:00","raw_data":"WikiEncrypted:1TcXmWRnDAgI41cGfWTUk/sNXfcy3tTuGHUOfEFB345sYbuKarjzMPhcSlnKvrUyjo1sVWZYYZfm7tcOu3fuoexRYK0xLSMUgX14q90xYxS7pAfdlvttLcvj4+3tcMzdk+8UqdVUdD9JOX2HbyHqbIdvUtnY0KTLxXFXWXg++7PMY+95QeQZhnRIBLzX8gwc5SInujtygOP264Mtqx2b+lRZq3JVMb7sYIYF9i4DcMdd4OtUYToPNAPpFFjDthf9X7zOH0cHnBSBCqVSv9vPmJbLc4vJ1cy4ChB2nUI6YYZivZRKeDQ0/0rpdpdOKC3iRMG7W+ZQef7Gc28MEIHuQGg5jItYCYEyCEsxwMN2JlH7yheXzTVvtz7vk7mCT0MwVzYm7zKEcBOOlCl/AvjgMpQDy0jNlomblR0ym3SWIEy25pBih/gp4/zv5O+8ygIRAyUvIJhbvIzign/CmTOHrQ3dn7xhNOhE4rrDDKsZn8/oaiahnji7cE7uLIZKydkPr3il/97W2dkpVdEAp6N+6aSPt3/iFg6SjR3Iw9EIpRZhhDmhc6uCoVr7SMOO7voSA86dxYEM9VTtCGUAI5igya47X0FBfqK/YAoeXVqpu1Sy5URnelAlUXSBX5tvo2QG/jXPFv2dD5N5ITGdUcllBrT/8+vYUVsl5NhZjwA+slZmQMyt71O3wq638eJFnaQSbkm4wOq+/QZQ59IXOIPujuq89eUDCC71bHEQK6Tc58bT6MGwC8kCzA6OZkyIp+p7qmrBkz0cI1+rOjUKgwv/4k/FQdCKc8rIn+WNZwKQur3OyY7ll/PTrFXnoHT5PFt3csYD7rVZpmGExFZaZOvbuzy/RMV/D6j40Rvmo5bk6zpHh6duXn8yRzC48mirabYtMWeIRsy0BCSBJQXJW/Dn9Su1nVAPg4eQYx5P+R27Sbj3tnvGwuTvE4CgpCfL9wsnB+uiTyf78T9+cnmvBrTNRnWLlCoXbnW3p4hqzyWWC0vDbatiyBn2rSuSoDkOx2NCrIYwwdqWasbK01MdWAuP29xoVFKWBZhOCaBKr6naqUGR4o3XnZV7pQBAwb9Bc0496CuJhkt627J0HjsNk61Hi/PnTnlQnG1G1C7nIRX3MvDuOevDw0HH/Cya4boMDy/YtcZ488aJFIyPXeLvSIUHLVJowEDIp2BVskFM6KXbn94vdOofuufst4SaPalmev9ko6lIFrzS5hOKQqbYCVD0XZQS9t9PcFEC3oXvqzPbW9l1cr0YE3vYb+JAo/7HIND5AdlUpGhmgXrwNchHnpiDsw==","layer_level":2},{"id":"ef1d3eec-7d6f-4955-bdbe-19fb453c95b8","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"组件开发规范","description":"component-development-guide","prompt":"为AI有声书生成平台创建组件开发规范文档。详细制定组件命名约定、文件组织结构和代码风格标准。解释组件属性定义、事件声明和插槽设计的最佳实践。阐述TypeScript类型定义在组件开发中的应用和约束。提供组件复用策略、状态管理模式和数据流设计指导。包含组件测试方法、调试技巧和性能优化策略。说明跨平台兼容性处理、响应式设计和无障碍访问的实现要点。建立组件版本管理、文档编写和发布流程的标准规范。","parent_id":"2c378c6c-03ea-4edb-b220-6948e511e14d","order":1,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/types/index.ts,my-uniapp-vue3/src/utils/request.ts,my-uniapp-vue3/src/utils/storage.ts","gmt_create":"2026-05-13T22:55:07.5861908+08:00","gmt_modified":"2026-05-14T00:18:15.471054+08:00","raw_data":"WikiEncrypted:4Zqjl5aZEo1Vv5NKBpebTl/ZL2LylIAGSYxVZAnh7JFvX+2VTe1Jm7NpGYsM5wFRizps0lCDhXoyk2cv/uCeAOqYlM5UuAkrmzGmfjjaIfC25wmg26iT0A17uSGBv7bwpOsdLmctRbrD7PCm68668oRgmdBODm+/uDeMjAafoKYRC1HF579WGsINvaI8/+zMPgdU8Qx2VynepnvJQUwI/SngMFd5fOxcKZ9/S1YxnKWjJJTRZmqgtW4vCnxAfrByUkvjmdPFyv5gzbVLkdYQdva7UcZvckDYu3jxH6cnEXQ5MJKsDxqAingiHcTIkVhicQnmtsnuQCNCUCfFKxBnoEWDsD1WPMSKqkhuqE/8hStEfqY6GWRpE2wCChgg4/AGUNHAjAS0VElRoUbandJkec3scmee0vD9BDAP9IYKLjtIHIKmH2omNgPQkU3by75Oog9LFTc8kbNG2XntA5HgtP4hKuPeklpI/LKbfUQHQVk5M1r7mpfLWRvg+9jYe9LtivZo9KomYu7UgiyqEA77DyseKh2ZaSqOY7L6ZCKAFfyhscIuZ5YqgvLzq5JM/mPQdWErGp4KlpMJZS3KboPMM9PsDJZ3JUhq7rvyTScMS2jAUyXQwm/c6DJ4Uo27PtOHyTEY8Lqp/ztmuwmyTw5xtVy+sLYEFfS3grH/Xj85upc4KRRxLIVcdAAGMO3z3qkZVM1O6KcO9XdUX+nat3gnVYxcKgkLQQ029agy84AvMl2fp45DjYa14ozJZNopKW5le7VAVmu6UQTlenox/WzpZMyAxnvdrSDf3DBFLeWN7hIQS2eS9ncuGRIBOwM6yW2CRX4n5HrdIbs5X64y8ptlWTS/x+NC9/dnKqQU6Qm9o9pLBkg/7fpJXEuAuQJaHvWQeR7SS2mfO2dnFVBCxubhb5yCb5nUsxRo8pyYZXy6Djq6Vq7uS0hrxiKJYUrKeI3XtAFzsOjBU4FNZHlEsMaZrS7xqptttXiXA13ZsRifh98OTvQv4z3lTZPQPcqMp4seuqArXHqRd6otBho3V8hX99s5j7JhaPbAfr1ppxjFVopETEHILMWqqc4/+TN9cxW3bfNFl/VnEyxZ0856Eky5cE84lBqsCjiTaBWfPvukaScVoyieNklI3RQZNZ1yT8cWEg5ATIBq96wmcP7XW5lKve/M1PA4sLNyNvraK3FFmpVA0PBsJ/CuP7eHTEXcv4wGFz6FCq5VWfBJ1YOXohkqn92GW9IaO3WtqMqt4ZMHnhhAH8BvIFQhg+jVX4mddoeWdx2IKm/7koDZGRBPoQz3TkR/7ogV6H7s+nrtAicrqr7MGVFnD0lzfAXZ+8XOoO/m/QI3p3Ssmy54DzOqOs7vO9mMWoxRtVUJNsR1adao+ciN7BSaGEB9Q1EUDyhgewRJ","layer_level":2},{"id":"43ed758f-dc3b-40a2-9b60-5213a6f2c91f","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"视频项目模型","description":"video-project-model","prompt":"为AI有声书生成平台创建视频项目模型详细文档。深入解释VideoProject模型的字段设计,包括id主键、userId用户ID、title标题、description描述、coverUrl封面URL、configJson配置JSON、outputUrl输出URL、duration时长、fileSize文件大小、bookId书籍ID、chapterId章节ID、status状态、progress进度、errorMsg错误信息等字段的用途和约束条件。详细说明视频生成项目的完整生命周期,包括draft草稿、processing处理中、completed完成、failed失败等状态转换流程。解释视频项目与书籍、章节的关联关系,以及视频生成过程中的配置管理和参数传递机制。提供视频项目创建、更新、查询等操作的实现示例,以及视频文件的存储、压缩和分发策略。","parent_id":"83d0b783-d35d-4a8a-a303-9cc9b9c2d4ca","order":1,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/video-generator/video-generator.service.ts,server/src/modules/video-generator/video-generator.types.ts","gmt_create":"2026-05-13T22:55:13.5846659+08:00","gmt_modified":"2026-05-14T00:18:57.7674848+08:00","raw_data":"WikiEncrypted:/pvGPLaEVo9VWauq2W2LetdgXd2Z2phgWsdBJK1iNK2/uOZPcSm4pqORp5atF4LeEnegwfcqhsPsspfykrAfVWcr1Z5EgbTf13qINneO4MZjBkGa7EsdgfkdliJjr2dvYmhOcszK7HNacaetojzfbn/H/kmhAaeg0bg+szM4k7YTm9yrKl0mm6ZR4IbbcmHdwlfTNsfZFazEc+qpM94fTgjyN8s2sJmKxLG1cLttYO2ELJUk02YcPl6MlHJcK6wuZwITRIoITO/uwWUlamJHjwdew2sVp1YQtOlfIPKhNl/WOP0CArRunu+haaFUwR+rVeWP3UHK1x3usROXhwwYqa2m+JDBiEBmn9lyc5rbjqPcduYdgFoVoHquRR5ecYUuxL1MmIbcxMv3OCkWK892dcfvYcf5axBOFg7G6+6TOgdK4wwUrbuIPEqQ5CschuYHs57Yar75FTMvCm/9ai45qZCV/etAXR6XUfqBdpev80Opja620ekQ5cSBO5VdL9KDco3f7hPrJ/CjGeTWy5H57xdatGyFd5FdXZqwhq83Z0lWY6OnFcRwBYjmC0gN5ZShCDEOVayeQ/bVWVP96YiVc7wOWqP7C6/+jlb1TOTcANt5De4jWBlJfig6uPyPqtLxwdJC9vsFIQYq1qLkgpX0P9I1xn5sAA/RiTx2BlRdm3i29YMcJh0xyKtZKQB00zWKGyBRCRltu9PWNN/8Qz2llK7UCEjwxL6zoQgFBDgN0PxFvGZ+BZm26Ha7WHjAFD8boKEuUOTknj9/rEUyxuHcMzzFaC+NVHMwyQk/rlIwUHsDcHWmksoZRtF8FVNBz1KNgyFT6fOXpN9vIUANKuOkF5rGKAxGdLOnkzGbeVrfF//wT0PhNv8P2n+gm5YW+8YAhAOc0UjRt+lWkkqdXwK0qkDzi6DhTkNtchmpZTypxFIx4KTNNOpWnxLbGeCpCxS51sf/iGCZ22uyDzv2vgjbvSVWJtYfx8nnMX43p8JzFIjWq1Fexd/RDEqxp5PEMmSIonKdXxRpsvz8rwmAvpdCaOSBeyEQypO62XDilOAhISzZLypTBZMAqyoOf1ighS4VkvTIfNW8LBYKM9vkjb7oi+Dns53IsxXHxX6ZJrjBLkPXnVEAlKMf1R4+wPXGq84uIquT4s3pEfZy/I+6rKzBETCapJ55EWYU1x6IjR1fjyLBWT6mMxWqfNCP5QG0JzKh3nZmNUd+ZCnZSDKV5sY7UuTsQdQOyA/8P9KVZCQG53cRNtLS4FukmSrT+2cMXG8AlILzD/afMkkZUweasqQ5fCf0kMHPBZxIbxkI56mctgkQJnlwSUNYP/ZieWTybVjnfPcKTlwswUgHOrbNGYPhfsdB+2VAOKHJNKeP/unRHMYozWMOfQgq2hZ/CY6+/Vwnr19fJo0g4Y0xMTN6uYjCCxn5s6YoKTGceT2+/vpF/XBnsfbYhrMoVM30DbTt/4SrNokvjpBJJDgMf0nfSmxRPpVLs+CDdmX4jczG0ucWxZDqVil5Xxxyq7KtUW7VD7yE8jhjDoHwvzsBeeNU7q9+9jncYTiK+1jalm2rBUIJ3wk/zdBxUzYI29jzutHdcMaeq5MqPX4W2pka4EmkPV79XVsFGchLgRrdeOpfuXZ2hrbXMywdirB3lKo3azA6wsOL","layer_level":2},{"id":"1e2fc134-e011-4a5e-8a8a-d18e1d796de3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"评论数据模型","description":"comment-model","prompt":"为AI有声书生成平台的评论功能创建详细的评论数据模型文档。深入解释Comment模型的字段定义,包括content文本内容、rating评分字段、chapterId章节关联等设计考虑。详细说明评论与用户(User)、章节(BookChapter)之间的多对一关系,解释评论的层级结构和回复机制。说明评论数据的审核流程、内容过滤、评分统计等功能实现。提供评论功能的API使用示例,包括发表评论、查看章节评论、删除评论等操作的代码实现。解释评论数据在内容发现和质量评估中的作用,以及相关的性能优化和缓存策略。","parent_id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","order":1,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/comments/comments.controller.ts,server/src/modules/comments/comments.service.ts","gmt_create":"2026-05-13T22:55:15.3900159+08:00","gmt_modified":"2026-05-14T00:19:57.7572901+08:00","raw_data":"WikiEncrypted:iltHj2u+u4iz2ZSC14K0cn4DcmXMitvsSWvLF0RznT+UsDpvJH7ZxDeC7iS5oUGHojjl+xcJ9xMHOeZPQEImmISrSRKlYQLRWKgo6x3uIuMdb0uWyPT5QXsNavo2FbBKC+icf3p2sannD7fq69DkR3LLzCtBkhmIVsPQGxk9Dqxe4Up5J8IbPfPPltmUzzO61V2x8WN4qcNk+U7O/RYF170uz775K+DctYt6/0jDQ/JmaQxmH4lXPLNTnGZ8lBBxE+dqyPDIBhRYZrVzjb2JC1mGtDa2rj5TuaIAaSbZGqExq1YkUa0eCNpfygXyzn/P42ZB/XmeWVCqJEWyi2IbJcEgEho4DAXMNW00WvTabR81CaC1UQy1i/dBQA2QsUwMB76EEDeh6Fs68OPQpapqnqOKcVODXoDQnSMEZU0PP9pOq1CesPLEeFig4G4N0CYMPHTquAaohi3+xYW7tzkGQ3EtlhuP7SSNSOmGqus2hUsvIcVGnRgqTh9khuXeakz8UD+Th6NJ4o7u8UyP4fdwrh2fkyjVgqmMM/LyIzWGEUn4etSbIVsDer3wUNYZNOTtuqc99tLBmEqVhX8U/01Rz4BU9qq1nQOtpaPRouTsduqVVCotK/rZJpGSez/M4TtNP8BqqKiEaWIMz/N3UVJvR62ELMiYLsafWKQ5AI8o4qR3JsnXM92tXNpRqXSZyKP/kJAB9JGhv1yNlxpWGzZaaCvdza33S4OxkXuMFU/qtccIU3PbnItg0ayabDrBtlooYBr2AjU1cZg3bjw/oSeMl+hreBbGYxyuRfoX9YIz5euTL+LlZwQXIftYioeg9x+woRWNzK6kZ8dO2uxQ/NVAGYy5wiGFq9CGrY1Yt3D9NutwKnwgWsF/qEm2vhk/xJQAIX5qCAeN25r4K2JNZLGXtbHWUOOl5R4mre7E8bgiGyJmHdP/CSZgkpgzCK0F2GAPvQLp1GeJ5VmD859hYTJzDttcrz58Du+B7u4KBMwDOUsW+NflZLlI/H17SjEKB6n5dEkJI2Epjjr6hKB646kYAzcMrN7pJdZEqTmpahCN+bNAD0cfhVcPAsdCasO4F0RymgnT/ZFWMimhyEvbhty5HjRC5U7ruC6C18XompoyzrjVcUu5uvsyzVSLGOqbL/K1uKbF5+yOzyySV5yEsXv4HtMpLxa/utYCOg3boGCLCg5R+4uTf1iiMxExKOBJehBfS+FHM3yPnyvuiXyMwX02j+sJfohkP/KHlyZw5HBJD3xR7+ojkeIPAREc3TABJN7rSmJQAXMZLEElyXgyECgvTDZw20QTFgacX2HrHpVPWA08u6aQurJqB+AYKqf0EMLd2nXK/N6U8FMXHkp0VBFSWOrm9HAiONTzCfWepUdj2iQ=","layer_level":2},{"id":"cc71bc56-0428-4042-a90d-1770b92aade0","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"支付处理","description":"subscription-payment","prompt":"为支付处理系统创建全面的技术文档。详细介绍支付流程设计,包括订单创建、支付发起、状态跟踪和结果通知。深入解释第三方支付网关集成,包括支付宝、微信支付等平台的SDK接入和回调处理机制。阐述支付安全策略,包括签名验证、防重放攻击和数据加密。说明支付状态管理,包括成功、失败、超时等不同状态的处理逻辑。介绍退款流程和异常处理机制。提供支付系统的API接口文档和集成指南。","parent_id":"a039ba68-0f9d-4f92-a4a4-d02242720fc0","order":1,"progress_status":"completed","dependent_files":"server/src/modules/payment/payment.controller.ts,server/src/modules/payment/payment.service.ts","gmt_create":"2026-05-13T22:55:27.5801682+08:00","gmt_modified":"2026-05-14T00:46:21.4812636+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqClhQVd1juao6KDt3aKdKADmzpAXrlgcmxUH94lNG08ivTIrGNmqxk+Yc5i/1wJgPO4HmWKITeSy0ZtMgHzsI2STpBD3WND87FmJ2FHpASbgVBJI2b4NJbUA5959cvFYXxKQ/YKhaBluTc+yyddE9EJ0Xzxi5rfHVPqEgyHNqGx9GMASj4aQHS0kDgo20/G1y/32klAu5bpfNy4EWIBad+2iF+iDiJIbE40PQYw3CwiA9CTD1CCjmHllGFAk0O+16xvh/2c9cPxzxvAo397Eb8m7urtLAtWcszU2JvYq5UHZ8XhrBzpuX0iFKR6ddYD+ysMZ/vT/oX9SB0nIykPaSCOh4WdbWXT3SuMStZ1mZF1hbMXAGgu2uPvTrY2aS5KSxKEzgE1yQ1b22KTN8KFRwmPQnJw8DIeaeNhi/268dlMZrNydcSNXqNAP+AX4M34PFBn8ZdFeVLLC3vQVAUgrHSR71/f3V1O044xrl+lDMnH7ML3qxfUp2BECWKDtFX3q0+OYloYvmR2CruRlwAuK4XPB5oEgZDDLHQiYrjxZGyoN9FHDWmNBMsKSow4JoP3+diwDdCOk9zZz4sHBigwiSrOV4NotzEPonXngEFOknSHZD6RO5GZ5JJS6MQNFgO6zJ01Cp37IMa86b2dFtuXQIWsn8c0nI2gCaeL7jv5HlZyiGPIH6uB7U2F9MG1iZ4pBNiKAQ7GwDPT/xXCqb0DrG/z2ygG3PiMXAPVvnUdiVyOHs6IdMxbVwLOeDVqnGCN9UQeD6MUSjsoErsW4kQ3q4Vq1mtvQcuerHP5i4HEyz3sQurn0vcxUgj32IIToBV8LhtF2Ma6xa3JrD4/EDolT5CCvXzzWsSp8jbqmIrfaMbHsF9gmWhFSDfYMIO0SUXejD2ltcQEzvfQSLKwknRcLtvzYpKP/4DeotyCh3lka5X/86OFFk1ZmEVIXKXI8Z1pFZ8sKrNFrYal1mBHWraoQ19Ci+02XF6uobrLZN7sEbOX5+Sjg5WUJlBRGq2uCeXxJGPHC1k2vt2EL4HgwoOOQLG5QbFKKMlQmGrGFOZLojAni8sD5Gqv5Brb5xLCe+pxmfIE/XJ0QKUBWh05CPTpKVtLUSheQ/Kj1/o5qXPDYRU2V/U7DHWPqDr1mKTVJXW3/9/6G0cDBNELN8j9dGRMudT5SHCIKN4DMwhfnjUsffZy+4e2CDV3vCkxrRYOcrjjwqw==","layer_level":3},{"id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"AI书籍生成引擎","description":"ai-book-generator","prompt":"为AI书籍生成引擎创建全面的技术文档。详细介绍基于LangGraph的工作流设计、书籍生成的完整流程、内容创作工具链。深入说明大纲生成、章节创作、内容优化的算法实现,包括多步骤策略、并行处理、错误恢复机制。详细解释阶段管理器的作用、存储机制的设计、队列系统的实现。提供具体的代码示例展示如何启动生成任务、如何监控生成进度、如何处理生成失败的情况。包含与AI模型的集成方式、提示词工程、内容质量控制等关键技术细节。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.controller.ts,server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/graph.ts,server/src/modules/book-generator/langgraph-controller.ts,server/src/modules/book-generator/book-generator.store.ts,server/src/modules/book-generator/stage-manager.ts","gmt_create":"2026-05-13T22:55:34.8139309+08:00","gmt_modified":"2026-05-14T00:46:53.2323258+08:00","raw_data":"WikiEncrypted:Naath5Cl1Jx1JIs7iQduRts1z05H35G0Ur241N9093Uho9lxIcKdP1KbKTXnGwSZ1tn/7SFHqOM2aDxsKTy6eWBaH3Kyj1qN+Q7Qil9S8Q9rRVoGw73L9HZnJ5ZB26buDQzHkSjLe6VX1FRlZoZ8HCkkCzBB9aINOFnodjZGm7i36Nz2MTxXU0ERfwUKkLAVV2v5DII0KS1v5Q8lDmjCwmGgwp5Gdc/PU5RYA6M4yBFxc17ucrGdd8rWGEi5IxH8fRpzYCiXxx3vzJScDJtjjGiruP0gbPQrFG9siMsivDjgKiYO2qQoEKLi47mcJNQg2onIdCCpHP5hAwady2QtQJR+72A3jUJIFZhvUR16tolHu8teup9RhBXmCo/a7KkmmDiAz96OPWH5lu/xv62PKV4FNvGjNT/lMs6u4mZsIuIjsJRr674CX1aDbWrVpshd2pnpnZMUI1IaxLmbBe6+qrHAiAGv3piu1HVTYLDNgrtVEbr7Q3/N8e8A0smT0y/cZHBYjuoimBb9iZo3RvGmZCAHt8ygktgmHB/I+CZtRMUDNl2kLOeXxh2obSN6zcoLYQ5UxLjAtzz3537Uf21k0PY97Wx9HwudrXfyEgHRqHP5273QQDt/tzwu5HZav0RaI1mNxsravEmiGI0f6ylb5PyTSkis0g2YxQTPRAXmytKrmqoMmbYWrSEe8WKvhC8IZWYb97bO7y3IaKehjsA8o5I6aN7p4UZ/NaUpxOzZtz3I44BljLli43mjJC5ST4Wr+a/CQena12Hoea//18TcoJPLypr/BgNGvKpLb8Y3tMHh4qggaMXI6Q1gNyZg3m2HGNdEpRYCxoXrgCJnJk6u/5FNB7+u5RYj5u4WtZInsqW1E2oUe17hw+1ZLF2okqehUvUd2YwQqXcVQrLkTbZWJeI8RKH7oOVtGyEfE3KrxqJTe+wX4SBHubKD5VfGpiv1TMyKVJkGkyLI9r4GjA00Rfn64nXrY5Q0XzSKpgucrxNQQP1s3qCxjhMks1+s7FHg/6JwWXZociT5kk48iNpU/Afoy/fyVmmjgZmXDsZERob6XPREnyq2tmFBW13mZTQJKsPtc9/NXxWfbiiVv7IcIwb+sttkcSKHVo+9srA/wCqe7IuR31acHbDl/M29zLXE7YAbby/Yd32ZvyD5UvmAb6YjOyZrQ89Af24w6F7lSkNy/PZJOUkq2GR4pb/jxMwTzOVmQjAAMUdnVmzNuPGdZ5Jcr3K5cHbrfFc1/pOORCdcSkO7k3HlHwgUiR6iOoVAcihijm/DZ9ysy6hMLPk2e/dokv2WMvD1zOdt/RuTnKOgB3WcuYnHn0C4evHXpwFiCtfS7CS1fTiet0QURTprlsNb4qHpMhokeU65/REPy1rOM0aW7DLBexAx8wdHhlA6VI94PoQMcD7NALZQFNocndP9gB7dX37oiECZ+uVKxCA2PJ2XoviyxiWRR6SN32IPxDmg//HtCa+yfU5D2BpztbmPreFvnzmvtRlYWd/oBUdSQ1QkTYQZwi8Vf84vKk8DhiiSiE1NbiSyhg+hzMVexh2JV2JUoHOjJFf/68blL5ZjhGA8RQ288EHhpFYt1XGMGUSV9FEX4yLxIere6o34LwIKDtfcpsqjD9mXTKXVgM79PlTHh0UU+N2pmZuYxnVv/zmWP7CgAX2QnzEOWnlo9vwmuAkqKJUigV8RsjllrLvhN0KPaFRwN3nmFljIJE5v","layer_level":3},{"id":"016af7aa-9feb-491c-b6fd-a2c3646be9bb","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"缓存服务","description":"cache-service","prompt":"为AI有声书生成平台的缓存服务创建综合文档。详细介绍基于Redis的缓存系统设计,包括缓存策略、缓存键命名规范、过期时间设置、内存管理。说明缓存中间件的实现原理,HTTP缓存控制、API响应缓存、页面缓存策略。提供缓存配置参数、性能优化技巧、缓存失效策略。包含实际的代码示例,展示如何在控制器中使用缓存、如何实现缓存穿透防护、缓存雪崩解决方案。解释缓存在用户认证、内容查询、统计数据等场景中的应用价值。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":1,"progress_status":"completed","dependent_files":"server/src/middleware/cache.ts,server/src/services/redis.service.ts","gmt_create":"2026-05-13T22:55:35.441315+08:00","gmt_modified":"2026-05-14T00:48:01.6642495+08:00","raw_data":"WikiEncrypted:dAMSC70bWva9SabC1uic9sTlemMqkuI13N2S8w7yguG6z+4jfJEXQMoYLWZi8WMfSZX9dvEclq9YKrnV3YcL3Q9GiAKmxTT3ajvhUCPUeLBqeG7fC5QHtUdP7w1B487EySoZyTldHsPf6+jg2sgoSBk1glGMeiGoWnluWsAZ3vvBsd6so5uI8+oxchD2WzljrjvE21BSRNo8fLPK0rFuqmJAQCukJ1aGrYHVozQEz2aIxTONzucya/9XlTsr6fqacR8yjxjvMP+86l4uLGNFWWLxCpYW/ljy3X/TkmkIlvjHpwICTir7L5nxFiMxcq4TM2rb8jmZ2SfJGWOakveGxMCl0EEuSUY93yZdXhd6MTxsgLKsW5VPfJeOALKBX1DyK4LB4Z+EEAJEpn5WEpnBPwcld9b+j1I1FL3Fjvqi9WU7rsrcNUXwF8O3iaN/P79Sdo+YHD3/FQvGOs6mL/r7lHZN1AtT9c4gyutGVSN/R/tEuE4mlWXddAgsgVGFFtme4KFCp00f1sUgrZWYjDTItUw/zXIQ1SlHRyalHn3ZN3r5sTKsPxr91Z7XsEP5g5a4GJXm/xn+zP6qCPVIZDKhhAiRS6mPewXPT0Cfm3NWzLmtAb/MOw+kNIm/1vQJa3oS3VgoCtm2YQ3Dy76fOD36E+/WYdASVonD/dRzxAxsV6n3Oxxy1cWKPRHS7YPeMHXE+cqoPOCA33BKorjRmLwQTK+flrGveB1sQuDq+B7zsKK3vg+x7N9K3wvifwwdYFnYyS6EKEwM6vnmZjYBHKQ3nIJ/E7UqtprHC9aFt/njmHer6s9VuK3EKxjXeGkPdSPf6yMoyRO8RdPTR7fg7rD5N/oTOmtNAezI1T8LKUWa4foiS68o0vGy1JxJx+0K/nTzfpfwNW9exO7CabNEzA1x8SyfYEALWsqoPbUuwAuq0A6mMWx/mksk9RWtd6+TmQ+VgPgyA/n8KT6uiBwrzUBqqAVhF9Ol4GBSU1cDKiJszTFev02zPGfT2yryrxGbxh6Ci0m1MJ3wEqHw9neWLZbvFr9RGBo/XIdnHPVXh3FIMGldwPI4SV/LiiGzYKQ9Ept7MX+kxIWF7qsuBhq1xIGw1kwSTn2738F1D9TLRuQhozqvFoT+Bwiu+tfp1qvhJzGunm99gh6tpl1eLPtnUK64gUfnAoD1WuJmC7TtswtJnf+VyC3N1WBF0KUtCsU3nDkAmMPOKyD1sV2gRrazHGHoUA==","layer_level":3},{"id":"43b8521b-ff81-44f8-9661-df40a092f83b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"历史记录","description":"history-tracking","prompt":"为历史记录功能创建全面的技术文档。详细介绍历史记录系统的架构设计,包括播放历史追踪、搜索历史保存和批量历史操作等功能。深入解释历史记录的数据模型和存储策略,包括时间戳管理、去重机制和数据清理规则。阐述历史记录的查询优化和索引设计。提供历史记录API的完整接口文档,包括单条记录操作和批量操作接口。说明历史记录在用户体验中的作用,包括个性化推荐和内容发现。包含历史数据的隐私保护措施和合规性考虑。","parent_id":"f7b6e663-d6cc-474c-979d-d16f5d382722","order":1,"progress_status":"completed","dependent_files":"server/src/modules/history/history.controller.ts,server/src/modules/history/history-batch.controller.ts","gmt_create":"2026-05-13T22:55:36.6453573+08:00","gmt_modified":"2026-05-14T00:48:43.8851256+08:00","raw_data":"WikiEncrypted:Em4K4xpec86/tQbfCRzBgCJP++vwRB4WMGeka43BZBxq3DOZvnicMdzvAwB3BHsCcIS6Nw/9b70Ct4owuHY2/vjyOZO1AGdAgB+PzHdgDQhXZw4DpfhxiQg+CdX6E7O97L2MMnKiMPp1RxqlJO6ukd5l8QxN1QTEByYCKjaQCAu6JP/XLawnLymysz3IINhYOyufo0/CIVj1kSKWBpdIGrKRsFsLaNPVttg9a6rWqY0KPm1QsKO/LbQJCaw07ZkCt/SXZNVqbxi+E3NSHTjt4Q8C+sflCFYTYNaZmDWWbthEuTgQrrrwCgto3jE57WytO8ifTPAhHnBmsoGm6gFwAJQ8UEJ0NtDrnnX6qVUogeX1+aeWQKew7Nh+SVMBhm2qMyWny/4HqcYERn6d1Tq5fF9drFLuwYl5VntRFHwDlaiO3l6DFAMOnK5GCUbkTjbVWBc8izZr5zw1yCSsckZdFEiLMtSZ82Gy/ipoDDinBM/uT4mnC8HrIa4m9QJPuI6S7WDP0QoctpSMOio0pJyom4Zxh72zgWwrHNo7181mDQ34pLjRf0FuDt+4QP0k7b7TiBY+SLptHtla9pgy/mHqpKZTW5Fvf9zXrEj1A60ef3/Sipz5X6B+N26e0SlTdIb130bFbE436bRUdxWHXWOFrZ9HvhxOEX3meH1xQme/rIYlIin65jP17xSOH12UUCBkjv1bK6B3QbFjGW6frEgI+WbSHVrw2QIpXfXGTzZpPayEyl2KNXDke26Cbq5lxLK9jzhIVHf1D9ZBnFYPppVD8H9edHLrgWg+3hwMmdtQ7yNeHgEqFBzBSMkOS8PKUbTGBXSdoJ8FrvXR7shNgQUO8dlp4R/y7wGh8uUT8O4cAqQRUa5Iqjf4azQFEDMWagobv9+M3MBJLII1SC54iKFonbg/JHWniQ+1QXUVp7NnkG20r+s0E9IA76EfEkJIdri2COWVid8epAZYBlinxThNJbcHDzOyPySW1xu8HXTzaSjeXhCe5+QULr6NGSBzwERLXWnLLb6OS68G71jwYUW5iOYafgz9k15UL2na5f0Zxbx3w7jb3YP3BaWbnLqYlNms1A9yRqIQrNwOUMbjoUrn6b5j9bdVhbiFbA90cbtDg1XVh5k1rCJ9Z0AYAMi3HDgbJepDW/O6wfBB98/4Zul89yJihTtbPb9l8f0uUF1GsU6anpIbGdTymxFl79WQA8EoW3hZQv0ucy6pc/fewoPNbp4ETru6OTAIxADQTSpaax2hStQHXNYVF8nzUCHHFyom","layer_level":3},{"id":"e31f6e9a-4f42-480a-98bd-ea31de1ebd96","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容生成步骤","description":"content-generation-steps","prompt":"为内容生成步骤创建全面的技术文档。详细介绍书籍生成的各个步骤,包括大纲生成、章节内容创作和全文整合。深入解释每个生成节点的功能和实现,包括提示词工程、内容模板和质量控制。阐述生成步骤的依赖关系和执行顺序,包括前置条件检查和错误处理机制。说明批量生成的协调机制,包括任务调度、进度同步和状态管理。提供生成质量评估方法,包括内容审核、重复检测和合规性检查。包含具体的API调用示例和参数说明。","parent_id":"701079e2-4e5e-446e-ab66-c5148c3b706e","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/nodes/content.node.ts,server/src/modules/book-generator/nodes/outline.node.ts,server/src/modules/book-generator/nodes/full-outline.node.ts","gmt_create":"2026-05-13T22:55:46.6550837+08:00","gmt_modified":"2026-05-14T00:48:30.0128375+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CF10cxTVCIdYCa990gZw8v4MTxvzVhg3WnJY10pjLL3U3Y3q5iaFr2aTMtlv5Yaj95IqSvebi8sw7ifI9DvWRv8uLmIdBwg4XDn4BgctBmNCbqqu/tGk3ne8uIQX/yK1c7ZqcOK4IfggsXNxHuakxz2xIVhWhCTvdyyudT/i5b2ohnXqwmd/eX93bYH4AdetplS+cbGMkB+/UIwc/JEGMQVvbfmZWbH1sgol+vDmsxGkmm8PpxnI2bM9M19yZHLihN5Tmbh2EKzZyDZv2peZxEB98Y2F/LJflUha7P5OmsPF0MOgB2mcdv4kWroGL35+gwYGRYq7ocSs+nTzS6/WAlVp0bCRNZpgIVoICECbhcq93/2j7SVUP0oVx4W7MjIpHgMeUkMJxyBbSXXraNAwvyyVoeyL5A1ZW9LAjRBFGGKcW7tgqbW4oz8zCPYoSibp1gGOVCSXsIIrp2OcwGZPEcfxebbyo4EIDijukCTefgtUGMgvZZg0T/wkj7K9sFS9hhPgtcTS+IeSGpjWcXpeILCDJ0umWZWVXSdZf/fAd31WZWCYqVQ1zD4bkCUqlKxtGnl4GyIn9AJt44yIONsbLcTZPni6NgLbQqZtTrIso2NG7UJEcu0hAswwBXhHfMFieZolVc45HLekxa5feHfjnrxOTRTHXh58Dwrf+kGnXPlBVuU1U+PzGwYtMP63OvVD+iwWVKcEYBb/S1+0bpEbf3tYyXX71g6Koic52opUTKmnaTSXGUCGVa/IS0VW3Jeotj/t/wAjfkbmiCso6d/DjvHQ9az2ddf9fDIeYBEwpn9KO1k9WtCTk1XFx3ij3Yov+oO/1up4u5eClinWv0FH+8w9ecjzwJncAOx9PFjzr1kuI8YgSDltktyCDOVKYMLeKS2P9xXyyzN0nFJgbnJ3CKLL8XQYu4lhCC5XfNLWZPioCxqUIfFdOQKAe8htxUlEWWxJenk+AtpUf26pPyXtrY/xGYp128CHHvs4/ZA+MBvOs6T66vv1x5Cu3mJNzbUr0PfiKl1mVQw9yz+i+rNNxRDs91Q1GOXrOFWtl5QGo/AvqGVRzXUKAyKp5sW9xYCe+QzuHjzffvmTkA9IjNSAA66NGLzp+SQoHlPsBGiV/12g2hYPxVgn07/7tAIOVb00kvqFWymeTgKsxzF5zNNCbhx2Ivz/M638QXDFk8o/V3TmzNuoR7oTud4gKFImfuXrvbQjTG2F4sPTsKqq4aUdl7ibigxak+NB2iSygs4jXIpdMOWhclt3kACsT2Ccvk/KORtRWO6EWS7tjP3VT6+RWpv6dlKiYADEl5rFKmmaY5VVt7iwk7uK6Kz/y67q9YLi1ErHWxAYtym3XIVeRCaaarOtEyFNF05nG4pJ/thZPWJrUapPvlQUPN50Bokis0qTgub1FylnpbisK7R5JvRg1XSKiiTR6A6+Ks91HuTy/PLUEIyw10HDr22qt2k4jcoQC7Y2i1ZaXkqtTrxfLyGMZxTqZa3PSe02jV5IEHfIUpF3J","layer_level":3},{"id":"bdf89224-2818-4105-87db-fd82e5e2d364","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"大纲节点实现","description":"outline-nodes","prompt":"为大纲节点实现创建详细的技术文档。深入介绍full-outline.node.ts、outline.node.ts、sections.node.ts的设计原理和实现细节,包括大纲生成算法、章节划分逻辑、内容组织结构。详细解释大纲节点的数据结构、层级关系、继承机制。说明大纲节点与内容节点的协作方式、数据流转过程、状态同步策略。提供大纲节点的配置参数、优化技巧和故障排除方法。包含大纲生成的实际案例和自定义扩展指导。","parent_id":"4195e43f-be71-4897-a6aa-4df85a7db7cb","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/nodes/full-outline.node.ts,server/src/modules/book-generator/nodes/outline.node.ts,server/src/modules/book-generator/nodes/sections.node.ts","gmt_create":"2026-05-13T22:55:47.8612597+08:00","gmt_modified":"2026-05-14T00:50:05.465212+08:00","raw_data":"WikiEncrypted:xtndhRyllCVh1zdEGY7TwowLK6vY2h4z3uPYlyHjX7SEcdDAjcD1HKCnYyV9BAF54KyLHHNI3yJDzoXlnpfoipgJVqrzpYZroWq7tD9Vf3e46hrKjE8bVrJx9OjtlsWahHeq6Q6fr5CIusMXR+Omm3sj3PkdMqgpU2WyZ1/BZtVo+sc+krXUQJMtVrhxWlNsl88ZWPxkmCMaU9FNmJ6QrX1whWQ1cOLADDSj9RAfKIu9J4NuxG+YFcHIOohZXb7ANgbjN+Cv574zG8Gnim25F16zXoJ0H2VnGbn9mrydSxmB9eRgtpOmOkOyroLYyQEs8iURiEtyZC1N9rw/wFZoklNiaRire8xsC1P2RgkMdnKI0tUkdOOrn+LA8CvDmwEX7WYJgyStIQ9xGy2vmN+U1yzNmg/Muc0zSNP+2TDSDM9GnM5p9ZO3IdQ0J2uyyUtUp+f61M979SH2L56XZJaa152fJ2mWOk+FwVmjE6V4e1fOx8sYR3Z40ReMa1EortC7FMpbIO+Su9GwGypnk/JHxtlkIgrcadjfsTOHi84tSTc1fegpj3C18IwHAvibc3vE+Xso+B6kuuF4NznZdapmoVUdiMjm43sPRwdWe8EUy11mkzWmLQUekPVRXdmIevWaiiGCLJuyO9hnAJhefnMRoUiXydJ5llNxVtm2EF8u+hcwo+DGWxMahnh6bepRyyutVqXM3wIjSBBuXiPNA5QVH4KXd5BgTUOKeM1NTYrQTx7zQ7zqIR+3KuA7FZsm6wRV906xpL1iOzrh2Gscx0md5zCITpcEpT4t1vCMGdkq+hnD9N4gmNA01YUGpPnH9RcX8D0Zq9u605TlF2CHeWqCxk6ZpbaeL7ADitiTQm/RACLfBn5p4Hb41LBJWs/TtO4Y1kLVUr3k50V9axgT06DZyw/xvuS6zOG36l5mzDQ9QVgFsRjSZie+x7dTjXvAiw4tGZvqfgZ+DxgKwi5dCDA+NMx8WJ7ThN6a2MtSECZkGiOjbUqjM5xUmWLwhmjQuzUNI5E1llk8pxYpk0gX8ZcwhmaykZlCKFJy5mQc5tCcZFcMJLn28D9gECXFzeJjRiAvPSh++OXE8KfTr+Pn0PPok2AU2L7G9NMJMpgyCemDDgQL+ZzGT1xQeSRscj+ppS3jTd5LQ4Dhyd3x+8VaQZbm77/LhChi2C6MPNHov5Css+tFyrcbWkTV5AOC8nBKc1ib4R5VjqztBQ5SacbvkBYfeIQLSvX9XJU/YjbNjAIYfbHYrPta6kw2DO72yg6C7gScMnaYuy6Qbbi8+T4S0cxemA==","layer_level":3},{"id":"0b5c20fa-a182-4413-90f7-55b91dddb75b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"大纲生成策略","description":"outline-strategies","prompt":"为大纲生成策略创建详细技术文档。深入分析OneStepOutlineStrategy单步大纲生成策略的实现原理,包括输入参数处理、输出格式规范、质量控制机制。详细说明PerChapterStrategy逐章生成策略的设计思路,包括章节分解算法、并行处理机制、进度跟踪方法。比较两种策略的适用场景、性能差异、资源消耗情况。提供策略参数调优指南、错误恢复机制和质量评估标准。包含实际使用案例和最佳实践建议。","parent_id":"60a4d55f-2abd-472f-b698-a810d4529780","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/strategies/one-step-outline.strategy.ts,server/src/modules/book-generator/strategies/per-chapter.strategy.ts","gmt_create":"2026-05-13T22:55:48.1357544+08:00","gmt_modified":"2026-05-14T00:50:41.1840872+08:00","raw_data":"WikiEncrypted:xtndhRyllCVh1zdEGY7TwnffOOg2IpOooVoCf1MV/Uh2FSkhttWkoMlXLNKplaAvve0qCG4mFZG/EFGtv6Yq3ykKb8RSIFw7SKzrdloJg7rrEhPeG8eF4G+lta3HDrxfrx+OlYbXw4A54kEz0BkUh1zRNVs7XWIqcH+leRRpZ73mXP+X1sbn/eOCSBgDjcnaexnv5NchR+G/I6/DwjIqAjZdpBaf9JKCV6Kk46FIaR/o148iwPAOzD2OkGlig081STjSyhxxvxYwAOPqKN2bOwhqzfPCR2i+L8dTe8YIknchLdxsMib+otz+LfTokvkfeUuR37cZ7dHgWXgGMgZm335FyYOCXColbFwPr5GspicWkLnEhvPeG27cn3EYo4qBH/W8RxlsZIIY0INb+gUUovu+VILKAykmT34S8zWrBQBBxT+VN+ys/1CHg6RXdFXtkhiceQMH3bYKDsMIFzd4MiKbjGnj5dhheoQlGT9p0bPM9OFkoEH/TYzmtol0RI6lWvjHDkvxejusZJNRIzHARwuotO/DqcOrRx14SF05bqEehwphDBcjOYXJiyemfxqGmlN8AKD4+koiY3LZs2QjjH5ehntgQqDMPBsR+MmeAKm2LdITXCkokhbyDjMZMskjlxgW/A7zLIVn1ptDUbeNA5A8/4kaeW9pvtTrxeV0rfz1ixSAcv5U3khcJneXo7QowTse3JYV6bHgJJIMOMNNxuPuZaF30CEGXJvKJVkqQ7vBBRJwExY8s+SGX3ZGrw25nZScm7vNbywQP+G32URuovW5lufHqVvHI5nTTZEN8detc0pq4iBQP2cRnuO1DEHBpO12wSibDDFPZNM7pn5kHFptuk99hUSzOfMcPdOahMl/bAwicVaq5zotdRWXyfjQtm7hnWLfI0MgTmYMwavIu8JyOsl3Oz0ijbsyS2KUUVg5XT8JMznOtXFMAAVAWbCFE+Zr99CoGtLV5Etx4Fozpaay7vAtoHbTZaQL9Lu1HspxnDZa+3UdVnOUzlsoUz1T7P+wGbHckQ3FDVOsriqKeE1e7mNMpxi0DyssIX5gXuATkWd/XI7KTKeo8kserQl43i2uD1iNcKfmpzrx9UOGOhLOUmDV8M1pXbEuIBcVmFzBL6CYP6K+dVXctjBmV7w5vGBRPVJjRJkcbGFVvWtDz9D7fCRnG0PPBfQYWm5c7NusBvXZC7K+7O3NlKTyqZrKwPSeFUKkbqR7007L+yh69xvd/J5PqOQENZDntKfgpP5qQSGbwsN3lPhQeqFJb6F2","layer_level":3},{"id":"e0e3bd0e-5366-4990-9058-6bbab6c13e69","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"生成节点系统","description":"generation-nodes","prompt":"为生成节点系统创建全面的技术文档。详细介绍各个节点的功能和实现,包括content.node(内容生成节点)、foreword.node(序言节点)、full-outline.node(完整大纲节点)、outline.node(大纲节点)、per-chapter.node(按章节生成节点)、plan.node(规划节点)、sections.node(章节节点)。解释每个节点的输入输出格式、处理逻辑、与其他节点的协作关系。详细说明节点间的依赖关系、执行顺序、数据传递机制。提供具体的代码示例展示如何扩展新的节点类型、如何配置节点参数、如何调试节点执行过程。","parent_id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","order":1,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/nodes/content.node.ts,server/src/modules/book-generator/nodes/foreword.node.ts,server/src/modules/book-generator/nodes/full-outline.node.ts,server/src/modules/book-generator/nodes/outline.node.ts,server/src/modules/book-generator/nodes/per-chapter.node.ts,server/src/modules/book-generator/nodes/plan.node.ts,server/src/modules/book-generator/nodes/sections.node.ts","gmt_create":"2026-05-13T22:56:05.8905116+08:00","gmt_modified":"2026-05-14T01:05:57.316081+08:00","raw_data":"WikiEncrypted:I4K9JdQR3S3kKu0N/TK2PY1dVlmOAkE27Mn+HT2fnLHLypHHvcWOgF9YsV20pdCCXaYHEP1V695Emd0rDhyDjBDPmLD8uqCZwYDd4dBWCXyXZG1kqewRIFuusB3idbzj+KR7shRsQofoCrVUBwu8BzJWv8aXt8v8UNa4FaoYwxHQvg2SEsEZJiLF+eVNO0eLsO6jpZFqkljkKh9UGGEhXlrTqdJ2WoIlMBBqWqnRz6LojfCCgLLGbjpEyqNrPHT0/48ssHEiOipjn9C/7x/Ami5bqGmCZLkJmqLGYiA8pRxJt4f49MB36I3s1jkZ9TXgyOOoWD04TdlbDUg8GdevFJ+LloErQK3f1KtgCD1UBhRH3CtM/QMzvE8HB36lF2wOY49HR7tHpcg9ztrC6/7j80X7MDG6WknB2mcko13uc0auOxC/eGmOPWfEsO64xUaTXKq5Bt7c9bvaW7Pv4+m926KmNKVO8ube5aI86SFhDEOEEDdpLlRVhRqBATe9tfBpEPInm/TkwspOLw3a1avyoq5Xft1tut3tO2uVDEU9z3h6671kvUeX8RBYiCJF2g44qnemHPbKDx2ZxxypAEmM6/fT8NqgLgQV0vI9xo825jlPXwD/PHi1Jk19v1V+8AYU/f9XwH0ZxPOjKi9xFgKHRWBV37MJ2K3kT699RGu20VHiO3kQYdXpWugw81N3Cc9bex3gORI8ANkrSWwXsIrdElMGR4qoGYLvPpGZAy6ab15atSss1LqXkF0zvIHQm7SdbDfOdTnIHxx3UpvhGcQyEFuKjo+iVn3l7txdMu7gNgItHaZT0sOYNZngJn+PzgHv6MJYMQLYIj3V/QH20ESTaunAIgSmF+tcZ5lsH0TuEL/XiwztarZq2r/j8DtWSHz4LC3oh0uuRrTKDLEXTRwXdX1dFjL68E1FW7Cy6hsHmgb06WLzCOxlZL8KZWlpsHVSVN1g0ZKYEFpqkqf7zt11QSBJV0buoAbkx7QHQiGodKOK0EzeC59EPnZlGhD3ee1ItLreA/K68pCN5WxMqhAQtFg/99U1ZqTnchS1dJjcoF+S5ipq2PDBrkuRtFmQHMfUKl91iUh5wd3jphf5zYcnpBwxrgrHWQVUtg8tAtY4WjjCodeuLDIrxr8RVhWNudXSuZGu9IZMuH54nT3IjFLO3KhdY0FjHus6an0vkmlAMr+T7zvw1v/MWfLe5akybee5L7aW/KRo/zl1YV3HBkpWgDAD8jSxXQntozV6k9TsjLEgvDlL4RVlt0k6SKxDxWK9fwVDAEWX60+oPLT4btNzBuwRjLVM2a/M1hR+zcmuFaw3WayzBdk0Z/Bh6yY3kFce/uQcTiwLQzMUCrjMLixXP5b1P0i567PGrfuPr/wlMxmNeW7h+yxhIzO75GmvMYw6jWicGcs5NNRk91BzySmPU+ShnzsdVjaYXmrYVG0UygRiYWYuGzWSoLxeoko39AJDQrS4kij09tN7hgd55Xcq3s4QMN7xxg2qobQ08KHTVMw+A8WZMQ67po76Z4B+kntKf/PYYv/1WvqcLe/6uQ6lm5FSbq0Ic+LQsYYMOOfgqAljDpiCixsdCce0TSOyPHhnBKO6fhjtPnqezgohD2NTvf5GoVq2HQc5I3G8FExuHLZLTcrmuIQGeThp7v8VleZGLSXWfTAcZketjO5kNYiXDkO160Hw81kWScEdKKxVrrw016TlOlPDuXoZsLnayhN5Q8DY4fBtfopvJ7BHuOj0v1apyy81Eaio5xKFkAw+OYi8A8Z26gFFDYU2sJlTT7eWnntTJuVZYRMOWl45U+GeSs9yN/IVp2r61bRRx+B5msy1Wl7GAFnBs1/AnonFzDgzG5JB9t5GE3aNrdChw3Ss5A==","layer_level":4},{"id":"9365ddbc-0c00-4783-ad65-56cdb5d88da8","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"错误处理中间件","description":"error-handler-middleware","prompt":"为AI有声书生成平台的错误处理中间件创建综合文档。详细介绍全局错误捕获机制的实现原理,包括错误分类、错误包装、错误响应格式化等功能。深入说明自定义错误类的设计思路,如UnauthorizedError、AppError等错误类型的使用场景和参数配置。提供错误处理的最佳实践,包括错误日志记录、错误响应标准化、敏感信息过滤等。包含实际的错误处理示例,展示如何抛出自定义错误、如何在中间件中捕获和处理异常、如何向客户端返回友好的错误信息。解释错误处理中间件在整个请求生命周期中的拦截机制和恢复策略。","parent_id":"b8a9084b-781b-4146-acc9-565f7e350662","order":1,"progress_status":"completed","dependent_files":"server/src/middleware/errorHandler.ts,server/src/middleware/errorHandler.js","gmt_create":"2026-05-13T22:56:17.5598475+08:00","gmt_modified":"2026-05-14T01:06:31.7946374+08:00","raw_data":"WikiEncrypted:Jt2SeH9cQITjBGdB/YEfX4SmQVe8syk1E09a6GIbDwmC9FleUm3LyVH3Rjfqxad8Ad9WG26UWVnCb/T6hahjQi7gRzdwl7P6hkZdxMa2xO8YWTfo1wYyiLGMYs8uGJ1FpaGtliQCQxYcsb48zyuWTJ9+C/jjjPfeR6n1lr+nmM105mx2WBwEbS66Dto5cHbeedHeWkCDpxG2zJDcmySOnHvkuiNDQNtJun6WbdgxHLTaVDl4oIX541sazpssZR0Xv7WDKojXSAFFD6BeVdkElHLGypPDBPdxUPPxkkyV6sZiBWYgR005JloKza7MLWE0lXgLOFkgQOhioYeTWTXt5gMtI6TN7OPPjY6zBAlTEWhkYLX7YsRMIMXvmWjH+C+lvy6V2aQjjJsFPY7G/V8Mo2hky0VkiI9VNGCxJ1DSz0h6pb84dd74eXADn1O4r+EAP89KTcfDeJiKGBfs5/6L3AizOV7X9iLLf9O6PHBeZjyeW12OCsIj80SNDpMggO2JcVmEqsZykCLJqKHqnVXCgsWytXhn4GVvL30UyDgkchBldsgd+NY+fjifzkORc2vMXF8XPyntPwGYSfw9qICStVB2KaGO39b96ikGU57iwzsemvkCABcOg4LyGmorCQe8kOLyckPIYMIaMD8QuE03/w8174WIdvRQZtkuYeqQ1RBKB9i9/I6J5zW9MYrqghtJEpkpcoaPu1NmYq5Gl0xqwgaj+Iu4zARERsjUkxKypfhVhwTetESAlv8rDOtLIZ6CMR7puC/zmA5v0qzhNj3EzSJ0RG4l9N8JpIXZpNLbSY7JzGhxMBOwP5GRBuQvfZzB6V4533lmYYXecMAFRtA0rOhud1DKD8QaHTzH7Q/SEFVVh+qjwkruZFlqkIg3Fskv5nszq5KmJNgECEupGQDXpLrf90HBUUlJMWVJhfZT31hQPwXr0iluZ9AQXox9oSOHKKjT1Wlk7BV5z7NaFD3BRJZqIbXsoW9pBm1PG0E3ApZxElrNpBbwa16rGY8U6M0C3lnXn0iGZ8trFOKhq3BEwQrbcDN8aiHZ0Laq4CLT4EHHQeHBJ9k9W1YLe/NMWQ0zNMdNVBhk2va/cK8wdwzW0HRJKQuJD0LHeSAckV95YBOP+euqpGjSBD3p7Joktf6I9SrwnngGmbcNFUYLUtqWUs/+yHIYEyIHyagDtGWV97/+zgCsw2exwKuxCKOJp22FK0QnQ8EcVrJtQVN7KoLhFdl8uBT6M4p4Fs4eCVUnbvVPFTSDKWbRyDkHo3U0iUikv5FVDH9pq7lCMjSOtjeIDyRooxsUfEih//kCvD2tcI5FsPbhsjZkSSmq+qUx/yOmU9JO1dfLWY4zSU/KfkbBvUhbutlpwf/38DSUJFBCSUw=","layer_level":4},{"id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"系统架构","description":"system-architecture","prompt":"为AI有声书生成平台创建系统架构文档。描述整体的前后端分离架构设计,包括uniapp前端应用、Koa.js后端服务、MongoDB数据库和第三方服务集成的系统边界。详细说明技术选型的架构考量,包括为什么选择uniapp实现跨平台兼容、Koa.js的轻量级特性、MongoDB的文档存储优势,以及FFmpeg在音频处理中的作用。绘制系统架构图,展示用户请求的流转路径、组件间的交互关系和数据流向。解释微服务化的模块划分策略,包括认证、TTS、音频处理、会员管理等核心模块的职责分离。阐述部署架构,包括Docker容器化部署、Nginx反向代理和负载均衡策略。","order":2,"progress_status":"completed","dependent_files":"server/src/app.ts,server/src/config/index.ts,my-uniapp-vue3/src/main.ts,docker-nginx/docker-compose.yml","gmt_create":"2026-05-13T22:52:24.7102614+08:00","gmt_modified":"2026-05-13T22:58:20.2192419+08:00","raw_data":"WikiEncrypted:gWB8HBj+8+/15rQhXgtMjCy7qJxJBEw3w9EAqc5Otte14+SfcEK3DSbmZRhW2TgD6BlsxDXHpLcSijck/Nymh6kCToGzTpFqq0LUAtCtHt42qYO9XPu0NYQ5Ff0WPEmZTHESi9lvPNFdwVui19hSK32sV+tzcltdHgDrGPhlHxlaQ4EL5hDMunKfIa9qUfIt/ncTeXMrvVoXG92wF6jgF02Fhl7JoeKZU1v48UT8qegXvEeqS3Ap5/nOuVxr7AKH7faE85AwC/ogASUz5I5gQV0UP7KKk7mdOTgHYRVeKTqUQ/q3C8RbZS1VqrvwGDbO724zNWc66pofi/qvoxI9wuHTyl2hzLSyiV77H0PJpYiBwHV4A3UlEEiA78d3yleZhQEtLKHzbnXJvjd0LlaqXen1eZl2lynTfcT787miX+aYAqUYCKWHSYippD/E4ANnlIqyqAe0bDoI2yk1O8GwvcL/frljHO058zulwlXyDth/f7W5hW1jOzP5/EqaJ6wavE8D+W1t2FEir6rZJzYaha2qnc3dfLqAEcUOmfAc+0GQE3hkTYH2MShr6+qGM7kj2PTU89n5BnOjrbCXC39cTWyi7dw43XNXXvbzU8M+jFmZnvqyDt8nfn+UbMXKcJPG+Plp0M7Es7eCUOfHN3ixbcYUWq6gsdegc7p2LPWkvpl4CCmstdjtYa106rrIVD1uVpWYUj5x/o7b0KSqV3clDok2sc0ibA3ZlvbrELcwXXEHICxoxDRFtXAt+qJ452U1pMW/qH6f3RpbCLS7iuGXBr3YHDGIV4qdNM7uRML7l5/7te7zqaX8GNFO9OXKqK7WGj/WClOINee2cHgnkTNz93vhiKE80GYXAaFZC1z7epxtimaL544ehEQ7y8EP3Ohk0FgXeOo8KOJndOFssIJCeDx2a4YSFkM5QWeOYNASpS2DgyYfNwHzNwtVHNFFXTIXq8DKLnIR0VH529sOWeiQs3S4mkeBnaIVw1HF3Yp0p1NR6mEEX94M3YQXuR+FQN+QyVXSmtnuU3M+QzMFAUGXfBlj3H0VQ6CMvMG1jcGsR87yLThW3hh6jjM0SCFjBrdYaifFOyPfY0b0vu8iDQgEpEnSpn+jz6tuoll+jJUHN+K3POnTBjEl6bej/Ya2u5z3eQObmHvIOaOLVeUE5O+D8HO1OX3fcaV/EVKks9CegQVCHDEBKqnI2VTUlIW/OwUj8FClapWjgjAUzSDoKm4XNDAGaFIWsyEQV+YvlUA2PDe3yE14LWb8k/6Okoij2IWC0nBfxiBjfYmBaOpKU77y7xqhJC/Tzz8MvXemu1z0OiPUAxkTq4KG9QiXqpSvQSUzpwaO75MM2GCRT/sWC8qRlfuv2waPFMDTKz5m7zEeL/MNJi0chhsWdpdXmAOcr0Hd7R5gLBZaWnuD+O7EMDIC+bsx4TKEf/3g9EGXsgAVJWOCmlHRUG49ib8y6yYNSlrARyd5Z2of2qzhCnxWijirh8HCAhIH6x1QjKE2lyLiCJo="},{"id":"8b117a6f-5bc3-4058-a480-8adfec2a4bbf","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"技术栈介绍","description":"technology-stack","prompt":"为AI有声书生成平台创建详细的技术栈介绍内容。全面阐述前端技术栈的选择和优势,包括uniapp+Vue3+TypeScript的技术组合如何实现跨平台开发,支持H5和微信小程序的统一开发体验。详细介绍后端技术栈,包括Node.js 18 + Koa 2.x的现代化服务端架构,以及MongoDB + Mongoose的数据库解决方案。深入分析FFmpeg音频处理技术的应用场景和集成方式。解释阿里云TTS语音合成服务的技术实现和音质保障。说明整体技术架构的设计原则和选型考量,包括性能、可扩展性和维护性的平衡。","parent_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","order":2,"progress_status":"completed","dependent_files":"README.md,server/package.json,my-uniapp-vue3/package.json,server/src/config/index.ts","gmt_create":"2026-05-13T22:52:48.2183117+08:00","gmt_modified":"2026-05-13T23:23:13.5698284+08:00","raw_data":"WikiEncrypted:w0CkdCdnXCcvlN5xOpiEhEX3U68GI0Ngj6azFMJo9xTx8yzRPJ2tIOR+fJNSHdXJLaKuwsKzWDhGnJLkfcorw8JbZeIUXiGArnrqDDR2YO/KETAG4K433tY3a+duneM5IDjZ3Ko3JngFgSVCzfkaNKjsts4NtN8BjKhXuJ+hsHMuwCOoa8JkHvoSDtVI+JkIAGxvf7Npo5tHDxjaVd7dt+Mn0EQEouQlysrfeYIl2uICB5Rk+k7gXojAzAzKnmltwR4qy1I+xNFBi0aGpSv9OvsnJip7C1CBNMaVu70YbOTqrWEEBexWzEpjBx5gs1F7k3Z2FMeHEninGEYHXJeBxKsDgmM96CstSGfzh4bwGoQ2iMgV3DQPFc6J4UWEKeNy78FrVIoNvZKgy7AhsWsVzCxE15W98id3/vSxA3mmP1+wGDDncOePp96jT9Y4xTeE11cxlDOvJ5kgPKSG3KgTGNymLn76n2eEtYVDsFC6EjunBIbfinU/uK5ue/+E7eMlk/XtEl7blygsh5BczlaOpR6dMc1Q0oH2Z2ya9fyuA0uYoHxjIF7Nhs4w4zVkIxe6zdGTknLC40BFZYv9FVw3G7VkKku3stCkDWT/FEtwt20Q0p6nlyrD9CXFEtUhw1ey2W6emHZ/Tp+fwlG/6FBo6nWa5aR+j+RhrIAi1Wnef6EileuRNGgGb0fwAtbVgsHECzBCQH4bnagad+B81tfWlFImVwOgIFHRBXnAOsVcqjvDlJDW2P04TNN2l3CQKn+f5c1Fe+JTMIHvr6DMFCUTLSTXkRtkg78Q8pXoL0i3FmDCnzdauONPmXtCe5THZ1e7U5Jt7xoLRn7dDIrNTzzWB7fi37ewxsCKxov7DBKHzaUGo4GS7h/I4ihSC0T4ex7ScP34QpWemYhnmrt+K2HbBFbTLWjjvNS1OCFSLBrSVtROrv3j/rQj2bI3wRvG0sCgP7udusYInRT/M0qnrq2ca+oxZSkjvW2Pwej8WfSMD0Jm3UHpQggtARRVrOk8NlvULfH4Dv2yIobHTPblTSGs6Flh6/liBYqWL1Vfr0gXZi0SIDAII2IleArIPbwpJV/ctLf5d0EJTN/RwXjI5h5Ly7Nt+pj/nGqF/yI80WJzkVQW5U3L5NWe6l8fIl6awBPT9RlvoAQC1cM8bjeI7i6y57+GKkUe3TpasAlGg3Ex3SA0nilfCyg32jyR7waT3K6lwKaE9nQIVomGxpZZJzjUYh4m3TCKy28IfHx2HoYPllpVi/iV7juzHaF8dbwR2Mv2AFuv6Kq8dTSy1sQgljHmdFHyO57P9CCB9LqWtznmaOmbsUPqhpNOgH9hNyiEwYmyF8yd+kcpwCJaeRjoaIzeqVHqwzaWJRUBs54FAaPgB74=","layer_level":1},{"id":"b3ceaffa-9f80-4cdb-a205-b0d69baceb09","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"模块架构","description":"module-architecture","prompt":"为AI有声书生成平台创建模块架构文档。详细描述系统的模块化设计原则,包括按功能域划分的模块组织方式、模块间的依赖关系和接口设计。解释核心业务模块的职责划分,包括用户认证模块、AI内容生成模块、TTS语音合成模块、音频处理模块、视频生成模块、播放器模块、订阅付费模块等。阐述模块间的通信机制,包括RESTful API调用、消息队列通信、事件驱动架构。说明模块的生命周期管理,包括模块初始化顺序、依赖注入机制、错误处理策略。提供模块架构图,展示各模块的层次关系和数据流向。","parent_id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","order":2,"progress_status":"completed","dependent_files":"server/src/modules,server/src/app.ts,server/src/services","gmt_create":"2026-05-13T22:52:48.883231+08:00","gmt_modified":"2026-05-13T23:23:58.1912699+08:00","raw_data":"WikiEncrypted:MaEDad3+dpW6rLlXdYaTGY+uz0vuQbTX4fobmJ8dk1cVwAIAqwVUQvQ4w+Z9pbagzsU1XuJJM+TeSo/L1AK/qnEHO2kYYgsHL7j8pjXCeFrWobsXEaIK9CiqvdoQ1EcWXA0HDfhJdSTgwIwcx1n6tfXl8599JmbwAm8wO//9Fy5ZRQfkQ76Fq4caPwhiiPROhUN6iJ7zBwlZ4uAoeLvWlpy5bgG20IhkpB1QnOztppPxMqq5mX1C220dHg9n9AEjo4e01laNiAE6GrJVWJ6GWlixtmr6qTwE7823sjycql8klXp2XessHZLBamOedwcCixxor7IjfY7mdd/yf6OOErIOsG1TzfcxXYpt4pPDEWCRzR7Ob7j0OUv1feOKozwtVRAnSOsCfvKKmxbd8vu8t5e9ty2HVY08dA6e6xH6C7xUz3Yqj5QIG/FFpvWB9lTegtvZAefW2mTD2rU4lZqo30lGcv+qJt6GaepZ3qsPsEiESww6t0fOlvxFsMM2rmVU9W/FciGpeLw+5OoK5aUYMpAlYMUchVyn3S0Hn8ysCdatbqqCmJoSg5sok0yJUt/35bEYIY/mt+0DbldRBN/hbeRqL2MOU9U2nO0/Z28nLvlnS0xQVoK7Zq8AszBesd77Wz9bGqkwraDzfhIOStUZRWGpW2UrMK6719ErXTE5peQjAJjpEwryAqQgapCMGZf/NCUCGVoakzfjCbIrn04zxAx6C0NZwzONsHTJauXkktHVgU1/cmMhq6PZrJFnMv/c8GWJbRJRUL6RhBsEQdQvFJee3BWzE3lUywK8K3evKGviKGgGExr4cSz85jdlbtHPnyGIDxKeYc27Q/KHefE0HIdJ1QT8XPKprz+NB9nXeD1WqpUXtxJdekgB7bD8prFnuwiakCr1YCWLfFP2oh6b2nQMQMOnxL8xaZGe8c2kd3esxWx9gIw32qefkT4Jywnhn92Ljdh1cesdmW47uGZhzaXsfOOnhnBN0mVeee0tw/nqShocuMjXfSOowi47DsVCCPVfeAr1UsG/aITlMBdXA3mVU+MlQ5fqi7oy8+f77aV/3NgmLU56vpxMua3oCMrAiztcolnaKcIVjK0m/X0oytOmSQXS8vKjs0EstciHOjTufYsB/oAEGxzwsEDNv73BaRtLsNBnIOlCpvVlrQX/6OUKYDd8CvZOXv8BLqjfWX9WWUeHXnZkBU84UYYwEnaJqUlEzuTA4Aarax8mtmS9Gjd34yPfKz0vrZSuCW+4GLhtYDpD2iZtWfD0BTw9wJj86noMGPo5KH6+PHhpk9zsat7G+UAy8LhxBvghFu/+yZ/e/73iEiI1ymnlqmus97KbZcZNeaAZBRbRq7leDgSzhg==","layer_level":1},{"id":"e95b9689-9c54-471c-8889-c927cfca7973","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"TTS语音合成服务","description":"tts-synthesis","prompt":"为TTS语音合成服务创建详细技术文档。深入介绍多音色提供商集成方案、音色选择与切换机制、音频参数调节功能。详细说明阿里云、Minimax等第三方服务的接入实现、API调用策略、错误处理机制。包含音频合并算法、批量处理优化、质量控制流程。提供完整的配置选项说明、性能基准测试结果、成本分析报告。解释实时合成与离线合成的区别、缓存策略、并发控制机制。包含故障排除指南、监控告警配置和扩展开发建议。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":2,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.controller.ts,server/src/modules/tts/tts.service.ts,server/src/modules/tts/aliyun.provider.ts,server/src/modules/tts/minimax.provider.ts,server/src/modules/tts/mock.provider.ts,server/src/modules/tts/audio-merger.ts","gmt_create":"2026-05-13T22:52:57.3011821+08:00","gmt_modified":"2026-05-13T23:25:02.0799987+08:00","raw_data":"WikiEncrypted:Pz+fPy4VqShHupXT4jRIT4dblIPoPUlZ998FUZPC/1kUhyNu8oIFhq07bpPO0EQTmLqb2ALGzuOT5XROZnvj08rTYMyx27p9gmp5YsSZgjevb0nCpz7VyFS0UubxIzJC2abGbrEplTqxbs0qUmYrMJZBd6XN0NqxwnuC6JkslyCjzCkCowRWJir9weYpEoiACePHtgoAIv+kDYtu8lB0pxjba6x1VhzwK3noq0FXVLmvjcV5dCYHsnezJgjBNaSBhRrVNPw6sASIqYpYQzgoTOqTdLHBkf4VksS8T9jgv2dTPRT5AnyCySW8Ma9Jy4vfCgBLpNW8u7wT95/xAapclJy4Wu9gEqZ5iOpeEW/FHxxjczxHrPz/nuHanCc+BHrfXs98TFUmt3CNIs6otQcfI0h8TM4gvjteo2U82RApjqh0i9BO0ZtLh/jRgmOLx0vIgIDuqLYmUGMI8j/VnFCpX7h4khNL+OFamBDkGXuu0vIoKz+21A4HFa4TOXZ7lcidqGlelKB+jIJjXQSmZi6x8duwK62dRgUE7LeHGj36P6jtasEnNeqQIPSAOA8ZNVuTc40dgUhEUNy4+1GflON1fr5G4JXjqDNq1MQIxUVDRTl+Fceb3Efs1sTvRet5en8IqAlzaH4PAtdas3Xw/KST+zMJQQF3vRJeeQ4N+A/4DZrDOtfK1pGaHzv/hNRqjTYvFKYwttytbINErOayJFGchgq/IDg9DD+gLjzwz6k2qqx0S9wRTtMOSyccTg1Km2hAKhbHTHc+gbjlIy17G5poDfxj+azosoYWM+cJL3fR8zwUhd47vsH/NFI2mITuazIIQN3amWbjpL9vNN/uqxh+AF4xyzgUH01qFYxKX7r8U60h7kQDfpbBqI+2S2XHrrOH8iMG8sK8Q2F6zUwWCYLBZIv1cJTxECsTvxAfYCARHuoQuVR58FtaWjKzsasBIcsefbYdm77U8yYzQib4y1S1oCc9Lm/rueoOdgGFp455WZVkwZa8Qubchzhx+Q8fsdNlOyxFe0Inb0M5vgNCQ3blijlqfu6W9QKy4Zhq7cjtftnveZkTLKfFFEoEIlCOHt1EKcl+t68BXPhwy8PhC+Wgr+1WoZvbKf9uXBMgy14NF52618AOW/uzFgtii/0dtyAGuudvk0RBgYsJjCrkUmODDYXYBOIkcnLyHCBJmIxdeMhB65AeKXyp2qJUFU45gzXy4VQFRqYkXyXbVC3aP4bkspHMMMaAUOQW+KyA/THnp3mIaofRhIaL47psfo7dHQNgBe7QlioeJGdRG14p8kkGetz1KfwESNGBvRWTakQjywBhXh+H5c1aqu1VJzrDJhuDxrt7daWO4iDSRobTzb8lQwyA0IEHGh2qTT9CqEpV3xksq6V8vEWST8IJlgxFB1OOBX4Z23TdCsaZB5cQCe+W7LCIdfaKOHp/7qlaS2RO+okHRigjRa5EbZhjWMPlGhUR5r2YGkbns0ZNiFM/VsLvaOoR6P1JQn50OCYpKsarVlMeqTF1dUitOewog0qO28OE","layer_level":1},{"id":"7d509b19-221b-4dd9-90ba-3c61fc246084","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频管理API","description":"audio-management-api","prompt":"为音频管理模块创建详细的API文档。包括获取音频列表接口(GET /api/audio/list)、获取音频详情接口(GET /api/audio/:id)、删除音频接口(DELETE /api/audio/:id)和切换收藏接口(PUT /api/audio/:id/favorite)。详细说明分页参数、排序选项和过滤条件。提供音频元数据字段说明、文件格式支持和存储策略。包含批量操作接口和权限控制机制。说明音频播放状态同步和缓存策略。","parent_id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","order":2,"progress_status":"completed","dependent_files":"server/src/modules/audio/audio.controller.ts,server/src/modules/audio/audio.service.ts,docs/API.md","gmt_create":"2026-05-13T22:53:05.703254+08:00","gmt_modified":"2026-05-13T23:24:57.4164235+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrHSC5VZmozt8IdTHktK1z3A/1ks92q8NESaSYB22WDDu6ZcdMgAZZIZJJg0eVE5MH3mLIcqbfTI9dlZ3G4oUwqQ9rw/dZWo6Kdkl9sll4XKuJ10+fPpDNxwsny1W5ixVQOBc09JcJl9kx8tICXHyF0+WfMnpg0WIMeFv7v44n2fKbtn/ulsdDCLGBvHJ9llVDPbWeDX9HbH/cpn0qUnKAIiBkWDdtkgfL0z1woDkp000fc0IJHbggj6y5S5UXSiGlbWV0tBRcFkZZsxASt62oEHJFunhsh4x6dAvcJFaK011xPSoH8YVQTOAMyrEa35BSAC7VuiRXUz97Ps8ToXdasNhR+JX2ZWsXeQiOn0TjUSatQt86XzEq5khDKrI+t5wtTpDbDKDsNGTvqrJa4dY4uNGlOjyXPpeNmAlNNnDVcci/ndbVLcaMZ8tgxsKNil2gb1M+d/fyhhsteUTjCANz6RSJOtyzgE3r3L49Ev6T7TvcWbLV3O6q0Pi+xxbvpcrKLwafX4A3thkMWKscUhNd+oOKzr0ttwlJNUkU7w8R19R1F08NrGcVkF0YVbUxODQunbh1fCcS0y+OCqFBOoEYr1yEWst61ZB/cmG8Q8sIPFIzRXdxeJIr/FFcunxFdeOcchYL/OSRXEiL+7XaoBrpLMkkViD7vvLxFgUYSI5QEU/6C4F1prVTiix/bPV3ee4ghVVo/L9YOC8qSnaTd79HhoWSfDgIVC4YObtElu55vrgCX8JXy25g/HKJl7C8WgPDBqNZmmPiHcHjdDy7HrlVsM3nXURvzGSGDiGzuqkS/kQK4OfEr+vVEXf0P9tRVQuKoFJD5VeNlwXD/siYv6s25t1uvqbAX96P6v9XeYrFE42T2letDarAI72SvYJdnF2jTuRLxhTpAiGweWGBIBaXDAiupDXGBsut8dvMk0U9e662Cf9sasZWhMHaQLcBh7rJXSFr0SxC8638whnjbz7L37zoabTugKfR5yV30v1lWnAs1RTo3MTO2hm19hZPppS6nhpBy3RdOkVj17rRhDu84iPAJdPd7soaCbhtt7tnqq3dqrc6aoPqKuxn9Ql2fMV8S6SSMM1Nw42EaavJxLLSUykWvlCUYkcpnv5xeY93ZJ3MC6yC4EHebdTEEpHdhwfFVkc1+2guB8/wjVR2pSGygIteH2Fgbhsj3aUi6e8snfq2pOKWaEGXSy7sj7XGDyhCg==","layer_level":1},{"id":"44b7fefa-24b0-4882-a5cb-b1eb5db75bac","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容数据模型","description":"content-data-model","prompt":"为AI有声书生成平台创建内容数据模型详细文档。深入解释Book模型和BookChapter模型的结构设计,包括书籍元数据、章节内容、生成状态等字段的业务含义。详细说明书籍大纲、前言、后记、章节内容等文本字段的数据格式和存储策略。解释内容状态管理机制,包括草稿、生成中、已完成等不同阶段的状态流转。提供内容创建、编辑、发布等操作的API使用示例,以及内容搜索和推荐功能的实现方法。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","order":2,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:53:10.2729447+08:00","gmt_modified":"2026-05-13T23:26:27.8438005+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CFwpe8DQ6uRpd7PtJMxKIMA0977R6irQLKm6cpRSA0lmINvsdKUPldXWGYgI8FvdutMu3Gdps8UjbfvTh5kt1B2uarBqqGv5tcH5otYJK60RhRPUcFpecR1XAjEbZd74ImmRS5480mh+FWdbcoOIfaA9G79EFqgFF7EDkGB/SvUtdOGUziwSKGAqbEWTVmHxOIbOuy3LNdBm0gstLWxpWit5m44kDCwVyis13Y4kDWQabD1NZwNGcRVqvaXYT5kbF/b52hQ6dPchRlyOFSFk3qxIEYeDmeRFM1H/9a4E7hnsDYzH0lbLYhsWV4LXf9YRfB1+YHWpCN7tC8AD3D+GcEkWYjfPfb0OtcqOkguqyd/osA1GQguIDgzZf3jr/tE6OEMcETJvuB4/TMA0yewvWQhfltSDj8IlQCI6T87edQmmP5nKAHNT8xyMj1C2l5pNGFL4RUnZIwK1mMM3QUjRquexotlJEOCDyAfN4YHQXYTceOfRP1R1XBMbs3MS9pmVyfQDPurXJaiJuNUegg1MfWxxP5D1zbXhu0dme0CRVgXgIoo/ZHDETARHoWjPWHgRoeThPdwP/2qqlW1gYI5OMcajJ//fJ1ZEmGLc925GgZPDTC11ZGPb3CdOfVbMv55YicOs0+/tg428F5VnvBAQU0QcuK5sNV1idlQk+uZMjpk0GEqV2yF4XMHeB2RyVpXM0oM11oot3fumLZz2LflQl1MIuCAeyTPSo5Leu3Jk7uvr1GRNZ+TEede5uhOy1857F5C8ccGLcFynBRzU3vt1wmfrn6dXgBljmpmUhT2akV8wTSvEXocdJKaLZXAoYPwOPL/Lk5d7KE4mg4nksFGb8iWltknWmi/84G9eF1xc7ogCAX5yh/76xbOV6D/3KIlHz5m3MyPP8ftTaiu7lMPPygJatOOVEhnmwdTazpf0IKPq2HzrnNyvfbssd4g+zMZoafkoH58GooOoTz/o/P88ZpxTYBXd1NQ4Sg/Rgpw+6BpSyEmGIxl9rGZb+RZn4JxVcIe/a89CP6XV+CMa4qeA3pYg05aFNDypYsc+kjt7ZGEiDz7JR7NffDntHXBGYKFr9tlWJkfnECKoLovKF5hqJTwZdReWxoohiLDHSyNneLX7JSrCnmC/J2Klt27RUrvjncQ==","layer_level":1},{"id":"2c378c6c-03ea-4edb-b220-6948e511e14d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"组件开发","description":"component-development","prompt":"为AI有声书生成平台的组件开发创建综合文档。详细介绍自定义组件的设计原则和开发规范,包括通用组件(MiniPlayer、LazyImage、Skeleton等)的实现。解释组件属性传递、事件处理和插槽使用的最佳实践。提供组件复用策略、性能优化技巧和跨平台兼容性处理。包含UI组件库的集成方案、样式管理策略和主题定制方法。阐述组件测试方法、文档编写规范和版本管理策略。","parent_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","order":2,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/components,my-uniapp-vue3/src/types/index.ts","gmt_create":"2026-05-13T22:53:14.6216634+08:00","gmt_modified":"2026-05-13T23:26:52.5145862+08:00","raw_data":"WikiEncrypted:4Zqjl5aZEo1Vv5NKBpebTnviX9z5VWZEbNRm3JIyjEiQCJmLSCI+vHwiDqehGgASx0cbwfj5cWdw585DuTygqDAFSPNIHXxOldP4TkB6vKW/v+XqmE5Obwm7E+9swlvoeyyccChKORubidSfQVLMwZVZk3LUxVN5qnOjuxx48W/RxpS9LI/jguq0tftNMMmvBqJ+5SiedjT02UurDpvuLF7YmfSo70ZSzyHMuW/FuFL/VzXkzo+MCzzRUyHtT2uH8HJnvoKAiV5t8LI9FwEtEOHZHAUiocoK/VoM+gqfF/fBLJmUO52OY1IG1RRMwIxi4wlohnyQxdo4oZZyhvE/XPVoqTh6CusI9WfVS6/4Wf2KH4GHU7eO9qYAE9ua9nYQBsuJD/DwkNgw2IRJIrbQNDfhiJmcu1IE8NJz8V0TMAFAUNe35Vzyd4bIecAFqIrs3WY8bc/SwF2Wk1l3O+41V8yepWdqsS0a6u1z8sPNoBaqwO45mnRkzaXVzJrReVNTa11S11u7x2VcxXIDWlQvlgowuqDhXNr/DoAyOuO0L12qJGu7vUNUoqJbUlXKwH202380zQ2KNVh/CbW7LYb5CLJwg2patYq0Ld5SwKy2p3E9wkXOP2oMwfQSCL/+RqUQpX9YprIjM22fj3pGONSQF8zDmdWA97efbYJi+UU4ASTqI37Q6+leUpf8HNiQGrsYEoanAMBVkADT+ctwXosdJxBIYBTM4Ie88q0F4Botn3EMq1rPVcBH9qeb3huPKdbptAW5BePLBXIX6urmv5qCq+qGbvldQjNXoMvT3VwYlChEWHy7B0VJM0YxNRhNZEMBrrfzaKh2m/N9kcY9sF2L35HgdbIWbGHAhWH61X1tWjkfb/VXRrAN9bQ5/zQDhrbdH/IMGliwPPcj1V3Fkpmp43/z6CfzzQIa+JKcoL+jXhdnDVzfiyaqC17Umj6BfcVHx1N54rjni1kz3JhaO/5uDiKLzusosV/wZbcuGbrN0oT65G3/JslpCkToMa+rGoN7iqOBLlavJXoMB6qCkpOhbf3Pb+VVFyeXsL+CUg8gmCl2FQ8FVRDcDtWms8QC5RqDYZ6OA+lh0vV0eSnaX6yPL1C/F+H+FBuHDqnzOkSS/pM=","layer_level":1},{"id":"eda52619-624a-498e-86bc-1303d27ced14","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"生产部署","description":"production-deployment","prompt":"为AI有声书生成平台创建生产部署文档。详细说明生产环境部署流程、服务器配置和域名解析设置。包括CI/CD流水线设计、自动化部署脚本和回滚策略。解释负载均衡配置、SSL证书管理和安全加固措施。提供部署前检查清单、部署后验证步骤和监控配置。包含A/B测试部署、蓝绿部署和金丝雀发布策略。提供生产环境故障应急响应流程和灾难恢复方案。","parent_id":"a7644116-2431-48f0-8cb7-2bac60b02c86","order":2,"progress_status":"completed","dependent_files":"deploy-prod.sh,docs/DEPLOY.md,AUTO_DEPLOY.md,webhook-deploy.py","gmt_create":"2026-05-13T22:53:21.6330328+08:00","gmt_modified":"2026-05-13T23:27:04.2281471+08:00","raw_data":"WikiEncrypted:1PcQ+NupkgQiLQ506NXlaizhNZeqS8C1INCZPnjb6ozT7kuNApLApVhEbNWJf2/d9YNE1ZJdZmzX00EiJyVan76LOfAq9bN07712FqEh8XxLPwB4jwf9OAm6MYIkTjOwy7YF0AOzzUfA4/TBokZE8G8R4+rCmIy2dxGqGS6f8JLapTOul/NMxlrL+2xVDY5sP39oQCwE8vwAKfQwixm1C/UNNTQcmY8zE3U7OkXIu1AxS9J7ksoL5duyWrBs4I9Uri/M0zmcTXl5VjnVTqeHRSpTX9FcYyEiGtvnKgrBi0HDdtILijxbWv6+6ojCcQd25gfsuU640me2wIF4wORBeMt35VDmTVNRyEqA45baD5SD/01LJp2ItvWzhJhkv04mWMrmTnGNpVoTIjlFkWU6jhp1AmwUZgsxbdJ8IZGy8l56XwOa/6vqEXJoB2ZEPrvkCapjHivvd/IiJGBiZLlxcQ0R/y4zwzH7K8Etz8Ff84291IM+AzfxfExoZdjlX78RlJ8DabRPj7d6C2FJnj47be8I5YZjaz08qVUCX4bvPZ6HX2d2YInweMBdTLgnXwCnUK2cfW33Y+gNOL8zqBmz/bIsERbg1AQnDWhq9sgifK+3PtUGYKu/+7rM3xi+qXi+JFlaWCX4tJhmjVsb9M/C+Nad3kAonh77Z53iKeRtEKWH+awQfPn3NZzXTTmcoOnZvlJU2JLGJBmUfvNelHVwMPXnVqk70QQ9TWq9mBcQ4b51zen3azCuKaPCsARecFpp0GJHsbNley8KKP5EfeFs1ralimTJtA1R1XaPphfanNWhX86DysNbMQHM4Co8NXMF5XqkSaKNQIX3wBdFrpQvK4af61+CJdmM2I2g/Yjnadv2cxXfodwv6GdhnNS/2b6rMBvWmWUrYFT1yi5lAo/xSlen+yhEuqG32hmwaEGXD2lp1LcmcCP5as/U/lwltO+jxwgcV/0gVprV2H8ami/0MyH3H+oI1lLjvpbMUV1JLTyiT0zg5/86/8I3ywsfu93J5CuCdIehlwfiHv8PUOZ530ijRLxsUPk6H0qHhBqqD44=","layer_level":1},{"id":"fca111e4-4eef-4abb-a276-faf0948ae0b1","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"中间件体系","description":"middleware-system","prompt":"为AI有声书生成平台的中间件体系创建详细文档。深入解释中间件的设计理念和执行顺序,包括Koa.js中间件的链式调用机制和错误处理策略。详细说明各类中间件的功能和实现,如认证中间件、安全中间件、速率限制中间件、缓存中间件、性能监控中间件等。阐述中间件的配置选项、参数传递和状态管理机制。提供中间件的开发指南,包括自定义中间件的创建、调试技巧和性能优化方法。解释中间件在请求生命周期中的作用和与其他组件的协作关系。包含具体的配置示例和常见使用场景。","parent_id":"0644fa6d-da66-411e-b766-c810e7e56553","order":2,"progress_status":"completed","dependent_files":"server/src/middleware/auth.ts,server/src/middleware/errorHandler.ts,server/src/middleware/security.ts,server/src/middleware/rate-limiter.ts,server/src/middleware/cache.ts,server/src/middleware/performance.ts","gmt_create":"2026-05-13T22:53:25.8614416+08:00","gmt_modified":"2026-05-13T23:29:15.4697141+08:00","raw_data":"WikiEncrypted:KoBWq/Q7Adld3nvKT6YAXjKdZAYQrA7SwAk3imSAn5cEHMx7w4s1YbBzPNGkGI8lFTdlEoVNXHdOpD6juPbCxcCN/C03rMNiK2ifZnNbI9HQYp4Y0z4VJsMsdXpQmjXnnZBsJlRkTvv55X6TBvhB9I3BGKOYB4cNWqDfu/VbgbTXNpESNQG1CRjFOJ2Xq2w0Dl6XsFAD/AuiEzTsuq3WW/7ttJTEd7aJ0dqhu6Ptj+kKcE6a0YDywgy5RdUetTs5mut4Bmm9oKqm/3xJWGsRai7B4xAVSsebRQHqcstAlEX7E6YaMHqt3DgFufnXN8Hs3auwJG4GwzfsiD4bfuT+tiM8oeKmyuJO0Wh8sNjLrB7CRmY/jKBsiiMFxDixIA3WqyYnOWLkZqJAmWxEF6wxg0fHumDl7QLX6vnGYO0iSmACb9V0wzaQdSQRQs5wljmz3R8QVaEi9Y/wHB1haJYWqaJC6QTsovvys5lZk7cG+L600P7ZFdAfG/jJ/Y+Yd1l+Easg7rCiD78e5kvoKhPdxzXKY7p7QD9DX2PlH1S7aic/A4ybkaZb7t6KErWlr1RQbTh8Xd6Ki50BgZPumrQEdcWP4zJs15GMagmW6uPEG0N2MXOZ6f5IQJnd0R58HTAE1B+aav5sGW9QpsGdTsz0HwvieYw/765kmLJNA32+dI6X+5DCHjPeN532+R1I2B8gAEFFih+8Tf6MnS8YXH8m67w7GYcg9pHszMSD1hUZVwsQMukFoEu/NFeM1aR53ZtsJSM7VO15U7YwDBdcOr0kKuF4wjyU//4jJU8K4wwtk5h3OabBn7NbcbklsnPGugjDMx0gxp9zBt1I64RD/NNVF3dNOZUSt5RhFrOZOnDIupZzfG5+TmKnxSSe6Di9N4u3E9zhpJhZm5kZgLGw+icp+Zuipcq/YAUn6hXRqrAdrACfz8NRivMXGdzC7cxbGToO5PDmts4pZKePGs5c9MlaS28FslFNi06w+1rdsXHwvHVp9c6fjgwC3qlG1IHlIZxtDxsrLvHt7HKljaTIj/dORhE0EcNLMoCJnLUUrUK4Idgw5dFTT+S6gJOIwBm/Kg1qN31652HHCnuYn90+s5Krlqd3Yj4zzfscooBLq+9769GLFs7EITnRZIHyXG+e4JmY0UusxTXlycftE5W6UVod/VNxuBAKALNtbDxbBg+89clS8fe8yuV3AEkVRAFIh/kUZdLWjVI18K9mXWshKNb/alGVcUl6LtBz8H9Zh3+otopplVGf1gJ6BV1Ny8Qht0PdA1tS97fedMCej4rrWIllKllMoy1lXpUiSceTVYRHlybb4UC1uAPWCUEXI33Hc1XC2qD3fqbuEyMojacDvczZF0EDajhq0x37+fS30FvWZ67E0zVFWf9zlNhSJO32d3ky2kmsKgRS1DBQtWbR6hr2+U6edxkD8KV+m5B1qM91P2eD3mIJkX4cA/0a1UvcU4KIQ2Wudj49V6t5mxnsJdHQPTaQ/5dLGEebZKf4OiZ+m+0NhhCjzXbAO7xJ8zuMlpwHpJXp4nglC8KWypFOahz2pSyC5Q/eh3iSSLhA3yr1xG2TX7Z217cRYGXCLrJc17NUP+Qazu+1NWv8QJ7XM2qlNA2GXLMYzon0I8OdpYzMdV0=","layer_level":1},{"id":"fdae3d8d-2f86-4dba-9fcd-ee05fb741875","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"测试策略","description":"testing-strategy","prompt":"为AI有声书生成平台创建测试策略文档。详细说明单元测试策略(覆盖率要求、测试用例设计、Mock配置)、集成测试策略(API测试、数据库测试、第三方服务测试)和端到端测试策略(用户场景测试、跨平台兼容性测试)。包括性能测试(负载测试、压力测试、内存泄漏检测)、安全测试(输入验证、权限控制、数据加密)和回归测试(自动化测试、持续集成测试)。提供测试环境搭建、测试数据准备、测试报告生成和缺陷跟踪流程。","parent_id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","order":2,"progress_status":"completed","dependent_files":"开发计划-第二期.md,FEATURE_CHECKLIST.md,test_apis.sh","gmt_create":"2026-05-13T22:53:29.7648714+08:00","gmt_modified":"2026-05-13T23:28:50.3261946+08:00","raw_data":"WikiEncrypted:a51tw9+B5Xez88YuZqi4cPV0J1CJauHTZselAZQ9sG7l4kxIBXkREciZA7/pohakdE3sC1hkisnzN73PhaoUxQ5htAsek1VrOEWSYh30iofDX1TK3K3TBMJ4s18pQuCKIt+zf6mtmLVlKI599qx4jp9Z4yCcVpIKZgRmqYc7KhHKfCFHmvhZuZPiVRww7QTklQ5s0EQB3NXBT6XSIppam++uylsMKg9wg9F7/Itpr4NSf4XCeKbatxPIbeoiQUMCu7AlpUNWytFv2faUAnpcoyRQJnmi49khq3s8C0tlCNf5Nq/D2u8v/KSvdQvG+2RfSqkwWpbHqcT3Vt6bJxP6p+0TkrKHToKOGEYEIF/ig/iquVPGz0JJd5UEm0oTHCcOa8BdOVnexZPp1D0Ypc2jqx6BOmVsc8iAci6WpGqovzKkEdS5WDYWFplrwl/Sy7RKDyUWdbfT2GH56hsMnnLvM0t6IO+5id5n/3gvJTJuK9qUL0cBPMzFahnOSsv0SyvQvB04p3HfFdm2HqLIoTyuCeCkhkSF8AnflZfAzNgnpUG8nDPWZT/RYk3HYORCJ00OFwrdP0V7hnisRjuoxxfdXQBXmlGCtE1TXwv+60MblyOpV4brxOgRFfA16Qyv74Q8uV5vjkZwuCU3fiHka3v9JIIcTRDgF9+7V37wR7R1IekbH68k2tXvomZtJjSNpU5j7LbTdTBGjkmW/xaq9FZQ0Sxw82IPPE6uddY25rWlBW+uVBA0gB7nLo5V2tLd2Y4V2oX452iZLI5/PkqKtJBCh3ziMMJaM87/KSG989+PeZUOQN2V/IjQd4s/WsvX4PWlV7WKwtvMGjWdGMAaSjVU6YTvmVy+CHPigLYw4Log2jZI42ae6SsNR1ww0tAX8rWIznMnehyt6Cv9j2d9V5R9xhj14aEkUV3VyBCRycGNujMp8FsAFhysT6UyCfqr8EVUpcxh4ajVOd0dg3FrFhUrMlDmuRIQFqSjA2LNEnxE7SXLoj+M/9Dp5RnzjnY2DPPRFe7ziKHQjhFVWiO+nQ4xcWuhSqdMO28qT5nHK1P/67aOxJCcZoknx3pMmhlaQ69/ptjkG6tKBRmdGYZdBwIwf7vkmvWVSMeP9Oc+XCGGFDR4znNFxUKAha+g598/JiIzJ18b/UwjCgFZ6CtSX0A4iHprURQnYQt6xVCeVSlSSt78JSQudTjcdHA5W02anDoL","layer_level":1},{"id":"eff0f686-8555-4e83-8234-80e1a152aa83","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"AI与TTS故障排查","description":"ai-tts-troubleshooting","prompt":"为AI有声书生成平台创建AI与TTS故障排查文档。专门针对AI内容生成和TTS语音合成的常见问题,包括LangGraph工作流异常、LLM模型调用失败、TTS服务提供商连接问题、音色合成质量异常、生成进度卡死等。提供AI生成流程的断点分析、TTS服务的多供应商切换方案、模型参数调优建议和性能优化策略。包含AI服务限流处理、错误重试机制和降级方案。","parent_id":"09950a00-d436-4c56-8d5b-5f418928f264","order":2,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.service.ts,server/src/modules/book-generator/book-generator.service.ts,server/src/services/llm/index.ts","gmt_create":"2026-05-13T22:53:34.3240693+08:00","gmt_modified":"2026-05-13T23:29:26.3790555+08:00","raw_data":"WikiEncrypted:QHPyE1rlAKdUTnEi1ip0AW/QNE83xkHK9bsSceh/s+q0egqvlp3YYxxKrNapf+rH+5YrIi1pRE8SEVHPuskPrfyV9ihYlcwrsjVs3hsdBPqVTlBWUnhNiiHbMn+FRqu96Bu67kCqwmnm7dvbt8tGigmJOiNjc/zY1srGbDzDzb2l51FW/VF3jtKCnsBHhcyrrA/wO9rCTDTYnHBjabOHnbbC5EAHVah26xcBkaFwB4K4UZi8rKUm+vtufjoV5D5xhFdj7wWRuQnu4RcySDmtN2NMFywoOeo8Anfr5IKNgQ6PwdyhS/IvwkkBxU5B3nRTfxuPXN8XWrZ8AYdcfUlOmzDC6+Eu8QcTTFUT/RhKekjESZx11hja2k2HcDMvd8wEDDjhcPwInT0CRqVob8jhYRMspEmFD3Av7n4Jf0dQyMS1LJEunvpzttKzGeSSOYbo2a8XcTxjp3AFcWUixYz4WQdcSvqkqBLkU1Ckuwg+Wu72jqGm+OT5KAc01lB/W0hPvoLdNmd8gysDSeZ9np9Zt6qIkKFs/c9Y8pBScYj+ZlAyY8CvpILowH6M3ARw041ECKYR8FQGIX9th/UL2ZRNHouJjNJSPdIMX/ym9rF5FQ55LH2BgM12moxxkI2Wq7i4Zrf1kLmG3hj+qg9cxjMyE6H3WrsEyYWQDoTCW66gp1kvc8ExjLM4FX/bdurauc5f+ow6sHDWtr2honyrrvimGl5uI7Oj4fX5pPscGPpwk0fm/bX+3NXT1NCB/xtMXBEVu2qF20e2UF82IBxFx/mWTLjGFhs/yhR5kVMqhL5yg4DJ9IIrCDtMHYh5jhOHrrtq76aL63zV9pQ+ZRZoS+TlNeNNwA57oZQko5iUjRAB/28sT+VNLfDHtXVRStqo4EgCMCUm8QAgZyPYL2kueAo5IYGkG9owy5k5vA7mpMZ4jzMiY/aTfwubz5aCpdo67RmFuSvaj99rg0gVSnBEBE9MnZAulBaU6KutQS9LJZYkFnBXavPo0gPihhSSGoigu1Tevczi+OOhoDEAmAXtSBTcgIcJuGai09LCnVmpwZgahM7zuvQJhSGNh23yVqN/ZM1S5bvK4+pBMw3/6t2TSwLIB9WW8OSq4XGHnCrs2fCq9vE5wXf8QcFng5bKXlH9pwhSPe8C7osxeB0JHCKYQp4zZnS+ZFQ180rcWSusUjt728ex/T/Y3dbzMBfXYfu4JcLyQmM9KiTUpMvnwjgvCB7QabqgEaIChEjltP/FlSut7HgQQ5gSiKphSSFNhR1GI8m8vzyYMpkXaEL05tOSsS02yA==","layer_level":1},{"id":"99f0d2f9-6002-45fb-bbc7-ab1c5a85e43b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据访问层","description":"data-access-layer","prompt":"为AI有声书生成平台的数据访问层创建详细文档。深入介绍基于Prisma ORM的数据模型设计,包括用户表、书籍表、章节表、音频表、订阅表等核心实体的关系映射。详细说明数据访问对象(DAO)模式的实现,包括CRUD操作封装、事务管理、连接池配置。阐述数据库迁移策略、版本管理、数据同步机制。说明查询优化技术、索引设计原则、缓存策略。提供数据模型ER图,展示实体间的一对一、一对多、多对多关系。包含数据访问最佳实践和性能优化建议。","parent_id":"b3ceaffa-9f80-4cdb-a205-b0d69baceb09","order":2,"progress_status":"completed","dependent_files":"server/src/models,server/prisma/schema.prisma,server/prisma/migrations,server/src/modules/*/service.ts","gmt_create":"2026-05-13T22:53:53.0827308+08:00","gmt_modified":"2026-05-14T00:20:24.9476256+08:00","raw_data":"WikiEncrypted:M8uljGDGJ//mcfRJly0hh2/mWMVZAXEARazEIIgMSV+7zh4rlxI5/PWj1ISX6NLHyPgijvBuT/wC8NCYThAUwJrnmGp4KLCcmHN9oA9WCL3RPXp3DiXXW6w4RPGeURsPTM7rEmgy7m6CJzh9NIPjPxeXiVpKAFJPjMOytaYfzw1zRzp+2769vHRE1rZYEhcf111gathGyhKtGXS6YfcUC3SkEZ3x74DGHeBeFSXYbAIKcpeI03AMcxXVTo9L5RFMW6v/VNlAsZU7QTOrhubYg7kBKkIaox3JC2Nn0PgAYQSueLsKGNdKQNE8PrYn1/5PQ7wCwijwSXevilEKIWeGuNSwm0a12YA7tzKVjo92XabGgwiVABSK/cZG2wcZ2oCk9lvF6yhR2PkC+rnlJqAy2xgt8rU+hSY8IHY8cM4tDCxE73MuTyef2N+QkSC1RPFEO/+09/IBSAQEy27+NqlcGT6UoGkY8RPVVLd7dwazSiXke9Jwt81x8pD26ay0UtxK4NrEMe+wSvhUjXBsMxwplZr8RKSbx3dsJinA6Az2xRBzW1aTeN8vHEA+xdYzHQnDwODQL/+fkwAaTfqPtEzIw8vpJv/5+kYazQedqAh2P6TygUnXz5xlFwx6xElGUxDuHodtKn3deJOkYstCFt4Tbzj1j7jq9yB+YL0RfF5dgBRHgbBaz1cGmT1ALA9vCBeyvugjNDVLpwsFH1wZRvhCiv2DBDCTAEQA8crORWj5wuaaNrArL5ZgGi+SQZserPvHzezxySH/AohBAVDwfOyYe8cHpK15L9wjg32A2XHzg80PPLt/ubA+CldX/U2/Bta5yK6a/k1sHIw7Sc5snRaOrHBBsALmvw8ZVySiocg8J/8M9jw1MsnCtjWYrbQL/5P0BQZOf7FOZfu9E05fB61xmlOEaIxN3u6d1BLNhLLctgpQbmha1n3blkvI5sfd6tv1mYbfcDTS6igvnO3Tqq72Lh95dTy3yt9h5jXvMOftFpXYG8Se6gCFkHNK8rxPFDNsaChNCHTigyMdnzfBuNoRAZEBPLg1k3AppelxjFh/l65boXgEXWlNZuC2F5XYZ2GEsemSMwJ4IMePRgN5532jGi+ZYxQJmgZI43U7idHWXlojsnCIA4mkzqeGQL+whQEN41abJbmCsPTUd2Otb2Ha3txQSOkuEU6eBpWUyB6ft5lzL4mDlmgGJsqinjg4Aak3MrOblu8vkftToM9LELWtLZKJXEJiWw72T3LAk3MUOs6y2KcT174Og/LKyzNhaWAapMrIjhG/up0UR5l0rZicbLhwqsIs4DomefaKDjfqHPwTyzlpy64nCsNg3Cp/c7DrOJFVZWib3r8iQKDAo3oGuPdONQb6xRIlccDCl1bYCq64LCTJLL3mlAA8AiqUkYU9","layer_level":2},{"id":"07f95fb8-8379-420e-a0e2-c98e7bb0553b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"功能定制","description":"feature-customization","prompt":"为AI有声书生成平台创建功能定制文档。详细说明如何定制现有功能模块,包括业务逻辑扩展、UI组件定制和API接口扩展的方法。解释类型定义、配置选项和扩展点的设计原则。提供自定义工作流、业务规则和数据模型的实现示例。包含功能开关、A/B测试和渐进式发布策略。阐述向后兼容性保证和版本管理最佳实践。","parent_id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","order":2,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/langgraph-types.ts,server/src/modules/book-generator/book-generator.types.ts,my-uniapp-vue3/src/types/index.ts,server/src/types/index.ts","gmt_create":"2026-05-13T22:53:58.1384174+08:00","gmt_modified":"2026-05-13T23:30:30.0617331+08:00","raw_data":"WikiEncrypted:5RlNBsIi2/3o8ATlHuzaYDrwqMuJOrAoXdX66fnkgwwisO1+XZ1WYvOrY+xf69tz2DqypTE3CCagJhv2QnJAvtbY7dVAQ64HZ8xmTL3Dm+gj4g12dk9L1/LGyyxarQurITK44I5Z4NtQfpgzAmSF8CdL26ZwHyVxSzaJDkVPXrCmfiWA9Ey5DO9CbvP3hTlcLqPqqsMjLRNfMXPESULYYCRwmLFAZC1JoQrblONcr6kBZMoA73KcuikXihIx9P30DA0sBLc8l5phLAKrRrKy3lqIcDVEpmYmkDNEWoX/4BpH8Crfg1Xy2N7U4ooxsN8YJn5RwvrfwA0G+J5AD9Ei/1dGwTafMn+N/RDOk4MjM9AGfrq0irulk+Wyeb3Lyf/ywPchvsHEBwdiwRoKGvA5ygs5tIhIn/fZynynnddgtjae8mINuRUPdSC8vWyWyxi2PFxqf0oezcUW0xjFVclRnatSuV3aZ7x7qJ8tD3TX/c9P9H6RMHza3s7bktGb68LRhzEqIPHzHNFILd8v88eGNSBXjRTBZNVo0q1yhbV1ig2Jsf/rbsaN+ZoMl24r02Gj6AveCydUpPIAtQMxwwwOW/AdsFlgINd/ToleySQU1YtTOspvZHvwFZSOLD5i513Mrc8sH8clJmb3FoEGzBdYcZrQDTyUQ4x6YChnuOBy6o8dYE+uzeFrQ4COdSeD3pqwxG/MIe25u49utcl6l7MP3iWLjZme1BrboBxyUibuEB9Ipbos0K1h/t2vkHtI9dtvwuULS6rjVrM3l5PT4d6ui3cVF56PdOB5UAmaPt5PHRTbb9nnbs3qXcJbjlB0oVGA4Zpqv00kk6JKQcv3SRxfIP7F4TvZmszR4rlEfr3NnrjDjiMcCSVyl2Y5+6UjLbNmvqV09K4yRS0Dmz/wAJUqC/Q0TfJ5b9MFTmLoXKiSASFHqhv4XGuxu4LkHgl9U97+sJeyK+wq5wU2p+oIL7wskj35vxcCQ9CNpFxUj11ZvQZWnNT0HI3KXl+wPwpNzXh9vjU+E9xd8PaMarWm2evYfJ04dJVVjTYJkg3JfW2SgclNQk4SqrkvRwYDQHUpgrcqxSF+RA6/1v7m/zl0HZ5bMKWY+feUW3LJqwBUoQRl3Yzehl5qlSwynLWiJoa8XY3MxN/MzXIqAiLQ4+HHQJfKiR4SWsTUooY3VGUp7qinEkdFZLQmMJMOGxwvmPIHtPLT","layer_level":1},{"id":"799fc461-f668-4e92-b2b6-6261e1edd374","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频播放器","description":"audio-player","prompt":"为音频播放器功能创建详细的实现文档。深入解释播放器的技术架构,包括前端播放器组件设计、状态管理和与后端服务的交互机制。详细说明播放控制功能,包括播放/暂停、进度拖拽、倍速播放和循环播放的实现细节。阐述播放列表管理机制,包括章节导航、历史记录保存和播放顺序控制。介绍播放器状态同步机制,包括多设备状态同步、断点续播和播放进度持久化。说明播放器的性能优化策略,包括音频缓冲、内存管理和网络优化。提供播放器集成的API接口和使用示例。","parent_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","order":2,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/pages/player/index.vue,my-uniapp-vue3/src/store/audio.ts,server/src/modules/player/player.controller.ts","gmt_create":"2026-05-13T22:53:58.6156024+08:00","gmt_modified":"2026-05-14T00:21:01.5817094+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrLSxb+k/sNj0EKM1Hk3vqE8fcWLCZsdcdI5yl6hy9kkAfpx1sh1rgK/jm4dngo+A4oNM/j2X4K52k+bp2m2lyzDHmgqO2oHruMmNF04Ed/2ccQppbwIyM8UgZ3Vkvwbsu63GUqKlZcQv4BceaCLp0O0nUsYCMAhOKPJd9Q9GMLNgpBTZFXAuENm9A0Dsy/01ooiN9zJNtzHd6pxeZBUkUntoKJGWbPsJwXQHCPNu4Gu/gVWDpq4DTMqAejAjqeFi7yCXhrSLASVHQM2wITmhBEm8cPHDAEJcIuTiurgZ8ArpEJ+YQDkzvEzLL2fwqnJKWQWJU+NWsrYX0XkEuXyY3LC469ekhsX8Z9sgS07drNRo0ZYxEsj76mYNAQlHBP+csAVcm03mmREGrb2PeqDOzsTFjCjXMUH/mF5p0z6PTHKzfNZZrYNkyPqG9xUnKcDuH4MiewdYwQX4qnYQElC/H3l23qp3KUatFQsVqijE9W3JLIeDGeLp4rk8FxqqIMAGB2QIeTPjO4BjYZ7NbOHBbSXFobDcbGc+ea2a0Ndf+en/ScKDdLuF+9Pioy1S9uF7q6i5ECQ4UM/0FNpQvmOnpu54IWrcwkyAt7JrCD7Hv961NAymzLpqA2blWONDHxGJ0CqOgpt4rJTkkFIxpZx0U87rgmgr8ClsJ1SiptZfkw7+zLx1CZtYK5yJqfkW/5c9TBMFRGAYAA1mY7pD5fyEsesweCSZ2kRGhRBO4VtFhXsfrkHw4RKsVgeO8jZ35cM0Fa7ESKsnbg/bYJz9uJ/5XYw467ZyaJDhI7YWc+DMDaVe+eKOXHmPHusKu6E/GaQVVMr0ZRkmUZNvdxqaSlCz4ZTZCGtY+0i0c6XiMeqThELn2KKjtEugayJOkcU4e6oNZ6Vouzv0RPZ3bjGx6WzYWCGVjxn/KYxiUs5rHUI+QkIahzR/9jgpc+/Pns+1hL3WFd2G59Nh0TH8227dVaogaR8z7dXwdiNzWPhoaTbDReRXrtATuzf7l/vPOYcfGb0lO7bDWoBZYo2NDzGepY0tnT0IMc2XnsOFGb/1VtZiI7iQPtYvm5dzlu9itQ5HdMKJwofcTqgVMtGJWxgGCAxsEG9OFohtC2O5ZK+rgT94cucSJr20dCaLBY2GHDDGFwfyxgZg6UQJSlUeopdxReuikXGJCbHrSC45RjDNCTpAT96Qzeq/vUss9xW8K4BY6zCsamPiYcXWcF8PEDyTe3t0Qwyd7HHp2ihdug71gB8sktllUZnz2k8UefGdZxpIOxLO62uwycOxwZrS8VoRy6upWhU9A6ZYRUzktsSTDHc+Aco/ygWTpks5ZcqLSgxJWsCg2zjp7hZMx/sMvP0sdRFCoZ69mrSvU9BReCHAqQZoXErX02X3kTIy6VJWNi1hu7fO4aRWk/CDBlCilBLidMa7rIQ=","layer_level":2},{"id":"55a4465b-651b-4e36-8eec-00d26e7dd1b9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"多环境部署","description":"multi-environment-deployment","prompt":"为AI有声书生成平台创建多环境部署文档。详细说明开发环境、测试环境、生产环境的差异化配置策略,包括数据库连接配置、API端点设置、第三方服务密钥管理。解释环境变量的使用模式和配置文件的加载优先级。阐述CI/CD流水线的配置,包括自动化测试、构建打包、部署触发机制。说明环境切换的最佳实践,包括配置热更新、蓝绿部署、灰度发布策略。提供各环境的监控和告警配置,包括性能指标收集、错误日志监控、容量规划建议。","parent_id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","order":2,"progress_status":"completed","dependent_files":"docs/DEPLOY.md,server/src/config/index.ts,server/prisma/schema.prisma","gmt_create":"2026-05-13T22:54:11.8257037+08:00","gmt_modified":"2026-05-14T00:21:33.8613842+08:00","raw_data":"WikiEncrypted:Zt230nV3k3ww0eU+N8tTkqM+qpKbydknWyCp7WUFYuqZ93zgxEH2AVoUoWDTpdkTVrH1XczkMEIva45skveYML8pJH/okpAXOj2oC0A5aLlfzeAivGoGGIjbHdSjiyp0KLg20loYz+Mc6D4gwTlHpu8T7E60iaYWTg2QTtJTuXI+cotGm5CokTulMIqCOELeLlkCEcdaQu2EIfql++TTghZvzDDLnvuAZsWgz6fYLaDLLZZnu5X9RlAmn/2FkdlOwhYQkXWEKPhLTKfVk+h79YD5cVy7DRQcFkRgrJr2RO9aujUvEdE0K75j6l/7/PhquUin1XyFoGj68loevDJGQDKwaPU8F9uLrSQ9lY3BEQIH395p30xE+rSKPpVSVyrRTY3SSf+hoNfOfW5l5R4NpiwcowbCEMa+1z9FBaJTsHNChcgKmP4re2xKspxcA1Yp5h0Hov7VMgXZItwRrzjpAWCR2GET3x3C+uHupXZQhkTmDUUjG8b/7NxO7iDiyW8S1/o5dwa5PnEm8HgzDPNIcGvscv9j6a8VuG6PPODu6NHvLBGLSb8/PQCii27phBAK6/a2/G7i7TjdDBca233l3R2CDw6RjHQRJDWOtRYW6YERNcQ1METZikv+2SKnrxVxROxj4iDaSwH7eWV8rhoVwodAiIYmRvI2V4Dm4nOxIHSE7XDHcOtBzgeClEL2Sc25G0WeFbqacVLiPCTIaY5y/Zd448RZFg/m0RVXJ6Ea2eSCy0OejWpL3/cechqxbnW3g6h+4UGiN+rpDCDqgQ7WLn0vL2g7ikz/wCaKsknM4MCArXzOj+whx1cbDIKNKjcNMrLx2H7DEArG8FD2G7auFf6+ZyVJCsE7rcPUQZ0X2/tj63Rfm8noBbWaCiUWFQbc7VXvnDcIGFl7Q/ObVpNPHnXmidnJjT4+SkyUHdxPYjT8Biqev3rd3BfOTxAIIXBEpR9LtOnCKHJOGvvySYv5C7F8sqoPh1MOMGsza7SIQXucsTUEYTCrOYg6biTe2AsEbRV9qaVQcadLVVIO+G8fJNHVxvpoqPbYmqe0hJgqeKcMloHp4LTqBGZkyfPMp3m01K0ePLjwmjtdiz904UlmpxbGAqHIMVZ3UHz/8H9A1QTyKuC/h9GW5n7W56Pr8NURTH2JY32qM4w3dYU8AVlLp+fXC7HRvTUrb5hqMi64BNaIjQWH4sNtQfBIOfk29z9v","layer_level":2},{"id":"d9ed6db9-4701-4538-92a4-ca45cb1e90c3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"TTS API接口","description":"tts-api-endpoints","prompt":"为TTS API接口创建完整的接口文档。详细说明所有RESTful API端点的HTTP方法、URL模式、请求参数和响应格式。包含音色列表查询(/voices)、服务商列表查询(/providers)、音频生成(/generate)、状态查询(/status/:audioId)、预览生成(/preview)、下载信息获取(/download/:audioId)等接口。提供详细的请求示例、响应示例、错误码说明和使用限制。解释参数验证规则、权限控制机制、速率限制策略。包含客户端集成指南和最佳实践建议。","parent_id":"e95b9689-9c54-471c-8889-c927cfca7973","order":2,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.controller.ts,server/src/modules/tts/tts.service.ts","gmt_create":"2026-05-13T22:54:12.8421515+08:00","gmt_modified":"2026-05-14T00:22:13.3992303+08:00","raw_data":"WikiEncrypted:nYnqHwwsXblI7TGgxAsVAthM3W04XdMqrvWEYvg7rTncsEuxiQ6O/XO/7+MdDzMg4I3UuUdm8Ze4sDkj3vFsxRmMbCzadHOW3GZD5hDjW9165F40PH6caHjloBrFyJzIL7Y0ejxkSPUTUdNzcy12iraMuO8bu9gO4NyvDbxnzrJd8nsFeSE5RIXobaS39WhzrunGmZAkcQ7nE5UwOwiOiQFrUeoQqJ0zv7mm0DK9p7xqA9rzgp0yNlzUisCktWK2gAAlUBICP+eMO7cWcOXf5PT9NW7mrFO3LV+a8dIpWdxa61IAfHeEW1nKI9BvFcqHaMne0P+g9M1ruKIbxpw/DYeyQHBAmz3/URisHuqScCy+UqEeAalLh328vchjtxKTQ9RyOSQpdoNC12Fpg31CB8wpgsSy8rKpRCFbMyS5RlACXY8AIYnUbQ5G/3JDx+vidudg17JyKCETtMK+0pxGtpbzL70LmNetJGBjUYn2azydmPunyNJbHaB/4ObgQFrCh1dggLT649QSWNQOfF8mRwBRfEujUkIJQOaJ/UI2itROJmOKiY1zCtFHIJSfq6U8dD2gLosfbc4/VUBqosuWw11uZMZsyPSSpa/STqcXL4qeI2ZRlaEKwAswnAyp/5qS2zezIh2V51MMxDCTo+/hrvz8E4p2gQgvSMDB5Jzby3VE+lVAWfmjt+BfoSQnhGL6qw9RsNRXLXTXz4ysco4BGwpkxGkgzCbuRt2KapPAP7mzUkp0J1lcrT9tvyA2OykPs46ina5v2nrqTffmBa8eytNnmsuLK2ljpwOi0wK3uWEygILK18ppOEeC3SkfeMpdW4gDwnaOPp6+/cYewlF4xGH3okjW77KAcZyy8lq6W+zJqZgL+qQ5E87UD6D1GCn2HDLwnepTvRi9D2Z8qq1FAmWvJpEbci+i7HrIP42tZDebjhoHBmn5nUPgVi6nRfWjpsYejy6rEX6effXYTFoBALWm8zXjP95M6Uw220xQ4DvOpCAvNmc7LVid2uxW6QYTwBlI9hm0eTwuclemnnoxVNPPSjtVxh7SM1jt+nljDScu7IeuBdnWABD2KRcyYrz85ilHmDDYg+/Iuh8+hjZkAF5oX0sOHCg+IGjFvgig7hvne9kKa8XLRvEegGdlSfZk","layer_level":2},{"id":"4195e43f-be71-4897-a6aa-4df85a7db7cb","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"节点实现架构","description":"node-implementations","prompt":"为节点实现架构创建详细的技术文档。深入介绍各种节点的设计模式和实现原理,包括content.node.ts、foreword.node.ts、full-outline.node.ts、outline.node.ts、per-chapter.node.ts、plan.node.ts、sections.node.ts等核心节点。详细解释节点间的依赖关系、数据传递机制、状态同步方式。说明节点的生命周期管理、错误恢复机制、重试策略。提供节点开发的最佳实践、性能优化技巧和调试方法。包含节点组合使用的案例和扩展开发指导。","parent_id":"ed23c946-e41b-4585-8aa8-be7382625e28","order":2,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/nodes,server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/utils.ts","gmt_create":"2026-05-13T22:54:15.2953297+08:00","gmt_modified":"2026-05-14T00:23:17.1967845+08:00","raw_data":"WikiEncrypted:vUReYMwQwgBZeUa3BvP/hIxTqf3uYH9x7hN1hKqFiwpfC4Q7pXSl0hsizsu0pnH7T9c/qX8UgzuWULFAErnJij3Qt/olvDzkpbMrBcmf2lnERo/Hbi8YjFt2Pkjdmtvh4hfSUETSt0v9ImLGp67jp3pjL+Ml8BTetZ2mOlM4GISMsX9nTE21JHwr1Sjxu8qy50uhIdgB4occVqZ1kOvJab0oDnoaq5Y8qnyjult6DMW1HcJsjvMkJJbhT0QUgJQCHZQSxK0Hy37yFMGzqMTtYwABvAJMWeywyl6z9fSzxbGKBvq0lGLLo+ve0hCH9zPxeU0MIGH/+m+LeZTkLRhQcqM8+LQRBtEHj4HMpz9MHCYmpgnwcFENm6qR2PPygrtXy//xACMFY8feF0tisrHEYUtDcI8Bl5u1542SPnRAHEcPDSkWLkPmOsUfhxZM76tq/twav1lHKC1edU/DHEwjokciJTPY7X5rerjaxiSDWbPl6seDn+N19vIx2gB0og/2b9KF1Ucac7BbkV3Em5FQJqoAKM2lbpx261OsjlDszNCtE9YPHj+SRXqHvaKyMJqt2Pn9GmJEuVpqJex1wHUT2Is2tXujyJi56Iy7NzPeEGFH9XGNnqhMigk1ng9HZHl9iYJc3iYsvhtyQnmp2VuyRuPPd4YcVa6WTJ84cvQPrgdN7oflRQxF/VTTxAtvPuKE00w9VJpVnXvUWMYD/0Se1k9z/AclxsgwlO81kGAnCbIUf6WJ1RrBY5T7zVUL3c5irNiSdx1eOaM5h9RNBNyQSvxZjOazDBnFuWAErCZB5RqO51ihG2Cj1zUYIsx1KGw+9NDCRwhb83WKkX/ABOmxbzcqs9K6XHp6ThOUPPQJwH+w2U1vYCjZO5dBIWDdvO1R944XDzPbpGoae9bQ4txm0CSmnctcJvBhNbu9C5VZ0SbX2IKeIs6DYP26dKBCtlzuzp1s8pAFeluOrOtWtRYlr8sSi7RTqDUPMe4icdkw4dzghIMHp6aNa0KML9UUs/TzncepODEwMXipeAkmi2sFhgAGCDMZSx/vTa67JN3iAob9EUKtmQAJAP2kmywypbdRiQRK5UxTThTuHP/qApkebiHisQndV/8QhoPpBno/x0lPyiRtOE9lGqXQ9LENxtUB/33QxcwruyrIsEXrscydXWWWQRVXYHel2EtYs6UTU56rIkiFS9ZnsObLp83i0Z0ZJ3g6Msq8+gnCb26oqIxixKRehbEOIkhHXKaouPpY7sSlUQ5dQsbzAMb2X/wXZbgmSIi5EQSI3V1oG2UGyu2a3fwRyf0ssyWpgs+Ib5C/oKUZn3oKoufKUVFRWz43llGG","layer_level":2},{"id":"c0aa6d73-da3b-482e-a348-402ab92462fb","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"计费与配额","description":"token-billing","prompt":"为计费与配额系统创建专业的技术文档。详细介绍Token计费模型设计、配额计算算法、使用量统计机制。深入解释音频生成计费规则、字数转换为Token的算法、时长计费方式。包含配额检查机制、实时扣费逻辑、余额不足处理、预估费用计算。提供完整的计费API接口文档,包括配额查询、使用记录、余额变更等功能。解释计费数据模型、统计报表、审计日志、财务对账。包含计费异常处理、数据一致性保证、性能优化策略。","parent_id":"abca1a7b-42a3-4a19-ba37-6e30da86e151","order":2,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts,server/src/modules/tts/tts.service.ts","gmt_create":"2026-05-13T22:54:25.8684336+08:00","gmt_modified":"2026-05-14T00:25:28.8109834+08:00","raw_data":"WikiEncrypted:BNQwBTrLoJXpxFN0JfaqoIUTHJLSOSpTi97PKmBgljP0k/QX4qv4jnSSCx/5pDPCRd/I+1YWtNKgkYahqDu2QPEURDp7GRAZQvjVJ7XMXboj2aseoAMPOJqTE8B6JLwlKVauPLATYLX5ZdrymbceaTKGaxhTqPrWJ8h2vr6G/PBfpbaWLtbdTDYimQ/DoCYnAvZ58IIxKEyM53M3xVFOBe2kv/U2zZj4PGfLwt5DL2LpBubGOVUO2Ad883krgGOG/BSSSpB+lsJNZLvVhm5Dfg8OruKekELYdQ00OConBnOB8T9mM2grz6hOvYjMy+Lo96JDb0OiwdgQJV7x+PPX3oFNAjWwEBSyns+64vV/M1SmM3TKOokS8VtOkQt0+3kb7WZhqnRnEUI8bp/OMeVsoVxyaid+hQcJtkOdvkDBF0X0o2xZBRHMTcL2bnPeSGeCDv6ijw4Zez16pspN/2cykh+fO5c/qYxUMxshUQXs1OCtaOpf2xNsb5NZEZujwwroc2fJNvrZN1+wtVXSVPuyirepcIFxyfnhnAk62kmLeHx0vHrbaDbzW/I3luirk0fsIbJq+2LR+dVNJ2tLQgeFNrMCx99+KE7DqTHa03BRrHu/vjUgKmkBJzZcuLOfP7D2fbTfS2ZHmPS/H3ZwvJsuaeDc6UpMaPrqkeqwZB9zRj05Tp0SlDPb6taKg6osQjWRz0+BEw2Tx1qqHwodMfMvTnWcY82XLiRP59bX39KP1UiwxIjbUEe2lZHJUUg5LRSCGyFjaOzqkm+qqioiiLcq/GA5/tr36m/b0pz7SSi9nSZmQwqsppQuu+EzQrP942Rka9Wh1rQ8Tjm1YMOz5Mj49zOHVtLgD/iorjPfmxTfZcuD3Efo1UWkaPPPLgleEDIlwaPqUprYHcuLcCq7U65cQ7oKTfuo0W9JslBHEcmCNSKDK7s7Eg+Hz7vvNmU9ZeQwAE3QGzcDWJZt6MayP7owELcBtvs/YS03gnPNU2fk4IkppwWNczoJdC78Xt1ZR0WR2iBT7uqp+CIxMmod3Vv/4mAZgZfmWuas0FWwLwDbLE6A32mN2D2Hejt3SSpGue7it7zcRSbxdGqlhF2aKOpnyEFkCyxYgj3EIBfTzUZRvs5MP7eIvoNOTra3gc6r2o3slNPXX0hXGF0I0Ga7LOuzFGOoaD9IV1wKavc1tH5IjWuuYlbA6tHrvJaDjmCfqVtQ2Xy50nwpzu89NwDXy/AiiAHzGDkwVlKLsr5nNLDBr+9bM7mifWK/mwsqOQNOMUE1//nlrYBSZMOxaYVHEzTRI+WA6MNp9NXAmEhdNPOUJHyW+xVAa8nsLJZEKG3eSMaAU8U6zBd03vYR6vG/ZgkTQaL2wlWM175HrmW2e8piM1KwJKwsewul7DZtjQ0f91uF","layer_level":2},{"id":"6d8775c0-7039-4764-9bf8-bd7283726b15","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"批量处理机制","description":"batch-processing","prompt":"为批量处理机制创建详细技术文档。深入介绍队列系统的架构设计、任务调度算法、优先级管理策略。详细解释并发控制机制、资源限制、负载均衡方案。包含任务状态跟踪、进度监控、异常处理流程。提供批量任务的生命周期管理、超时控制、重试机制实现。解释内存队列与持久化队列的协调机制、数据一致性保证。包含性能监控指标、吞吐量优化、资源利用率分析。提供完整的配置参数说明、扩展接口设计、故障恢复策略。","parent_id":"33e6266d-c33e-4eba-87d0-aec3373141a9","order":2,"progress_status":"completed","dependent_files":"server/src/services/queue.service.ts,server/src/modules/book-generator/book-queue.processor.ts,server/src/services/memory-queue.ts","gmt_create":"2026-05-13T22:54:27.9726999+08:00","gmt_modified":"2026-05-14T00:24:20.4086+08:00","raw_data":"WikiEncrypted:TIdOXnVG0Izs0oQg17x4Vl7LanGhUu3aLJaiEcFYsoV5YeuOq6y7rYVXbXB+4hGzxqHEMZtYLhjSri9OIIR7DbrGURu9uO4u31zTpQ52j2C6kKz2wLfUuw5/bSRqv5UBgRvtP0BilZXyU9HqNiEC/tJIqOSO1MqFXwRDNjciqlkUyaujt8u+6ycJaN9sdnQhcYgeyBqDovgd3t/T8RigQ3TBcScJo3FEA478zDsgYsduMdFW5Vv65dRdWNQVcDu308OaE7I3EQjSZ8zrRVmuhHoIYojKvoNnIuH5Ot95Hnx5oKMxWSoVLsCk3WFxLqStlihEy0DKAZUifiogTGGF5UaIgGJEWtglcGQIb4FsY5uMhaHSZt8cAj8LRYuMYKDsjIAgDg4w36zxDpG8VkvjPSI/cXivcePrtro4QV9zbfcK4dwzLj2WfISbdV59+98vCtVZQmVZ+5JAUu79bwwNtJkugX0qC8XLWY/Bel+xmUQfSQfS4/1j5BLNg23HK76550iw4xX0CN57FiT8C4xrY4BcgINVBb5ECfIT6rosIMuPJp+rCsf0/+oVodbPHQFKnIa4pNe5VxAM9T3zoA/PUL8P0lNGfrlYiVNoBFx+BbRBP+vQI/E4KtZsGuwJPMOwYLNgAoQ94RMEzwiHex0nmGdZERxMlM8XDqGFUpEJb/dT4ZYNfX2oWloPR/OeWV/5L84HTdPb6aZSH1E1xSaJAWp77YbtsDz0NYa0HrbpLR/xc1Eo/fAMbwiy06ldtVPLBAOIE3F8IBOIrDvKPzM3xlO/V9XOgSVnjDzs05mwXktBawVtFFr6Ys4KV0fo8iJ+dv2/KRdpxYJtKZJj6Lk4aL4S4L7sRQnFLbKOdifdwRSPs0Y6wDrCtwBjVu+jHzoxAN+2PsL7noG0VU+SEx48lvCRLKdvITnM2kNJP+LSevr8PIfm6jd71dQSfLEry5/rncVC8Zda2xl1rsOUb0gmgvwPhr0OYz3khl1NoJAvMiKXFMOKWuaF4gHBKivJQB+QnH3+moDPPxr4uMqRp+yy8xjbiOJ6Ujb+0iP2hIxI6Pd+A0MdWI5mXRv0e+jZw2xHqnoHrCKjN5r3LgnpsKefZTiUguK2CUcDBt0JOk+H6XJJX+uEzWwlrnSVKRmzD3E/Q01pUVIK+jc24JRz48jcapA/gciAnw/Pjpwg32PYH9gGL1EQtrQPA2yOOf/MC35QjJGPeaf1XLRAaMqm+otBhQaTpivzVgK3ru6usRZzgbzJTI8rH/e95t8N2BCaZODGHMARtQmZeRVK6OnemDQXXDrvBogFhB1fTHn3gVxt2qq1807aIz55xZAD7pUQfwI5","layer_level":2},{"id":"1870afb7-5863-4dc8-b445-ff91f0d2dee3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"评论系统","description":"comments-system","prompt":"为评论系统创建详细技术文档。深入介绍评论发布、回复、点赞、删除等核心功能实现。详细说明评论数据模型设计、嵌套回复结构、评论审核机制。包含评论内容过滤、敏感词检测、违规处理流程。解释评论排序算法、热度计算、推荐展示机制。提供完整的评论API接口文档,包括评论树结构、分页查询、实时更新。包含评论统计功能、用户互动分析、社区治理机制。解释评论与内容系统的关联方式、通知推送、数据缓存策略。包含评论安全防护、防刷机制、内容版权保护措施。","parent_id":"96a4f32c-e94c-4d2b-b1a2-05d464dc2392","order":2,"progress_status":"completed","dependent_files":"server/src/modules/comments/comments.controller.ts,server/src/modules/comments/comments.service.ts","gmt_create":"2026-05-13T22:54:34.5052659+08:00","gmt_modified":"2026-05-14T00:25:07.3198158+08:00","raw_data":"WikiEncrypted:iltHj2u+u4iz2ZSC14K0cucv4rnxx8sU3dCCq/CXKoj0a/KnbqTpLupgZfsRpnVIvS2yjRBW+oZpaDGk4INF4WWKPANlCaF4tGeiNi3tzl7xdqdzDS8hHHMlZBaUmwpgZxGKyC20ZnJ1moj7U4hbrYVnj/vZbktH7b/C8LVqeDDaNPGo6BfldPLamUVYFjQ+9444FKJYbOPYId0ip5sYjJ49twzY+DPPogyrgmrNo3j81XKpA3eB/uSlvSbR7UWVQHApBz/w9d2mnjtyAmu1jnvLOi86my3yGes9X3g7scXhqDhZ9ArGAgdnt5p7ISRv6PWjU1ATQ6B32TcvaQWVpEo92xO7PuPW5i5brzGm44Gyt3hndCXNKG9imKDTOadZrWubTUmOk2shtUHzqT2eZ47EEhc1sZR3+DeCvBUASVJHZkAcF2PPQuxu2V24Ba1QGc4Ddw8dNpAVwm+eiLJLf5IEYQSdnwHOv4DnAkEOOFWu58bS9RG5V2bkxtA/5cHYBbbaxCPKjXaC8a7i4pMVGBoXQZcz0ypTMN1ck9UozDeUr+JATJxlEt57d3iL5fhPSPj5FlXieb5lanLTBkoXpZ3PY9AwCJCcZZCEKA4Apz6bGKXXjO8zas4pdrnztxAiO2Qx82JRa6SIQkLTYFnv4Io0zxhvQK2zmiKUQic9otUGew6DGbaXF64N6xLw7yntofQ9kGbXmGiuUvJ0MLF9Z0Sm31VsEAJ8P33M5D3PEyk2zqB98Y5pOU4CE0DzQit8y/OkXldzEN97yXXgc213vbt5JN7tfgYhrHKSw9F85TlBld6WEvPa0eHyJC8DEOduA5MAOMVH8Wpvs5ZbhtUMVPWmSjaoyg0fYVwQLRJGVqdhdLz4wz8jbvX6ldv1i0vJhGXsGVzojnJmui874x0jelzVgGQ/HwOVIpa6x3NboQQfcbyWq7/bHWBKh+OXwmn2OOfZzyrDxxia2y1PhVWwLH0WNICAc9vDGcwcfLjXegRkUM5UPExsCBDojDT9/TgZmBHFcTnuwc2IjcGzM+kUXvejnRfvccSKWueJK9Wri3Llsyo2c20PLcXaIKmahYYXqGyRYlQzF0MQtJbrhw/V0c1ZL2VKo8Ve7j1nrlSG003z2RPRTApPsdo726nr5koccG90mFYwDem1wZl8FMukq0gkCam01WfxCtRYUB9SjfTpNPYoIs1EGJKVKb0AJkG4E8tRZj0HXjulGXJXyVGZj4jbdhniy3HRlaAeK2PcIPLmLT/2OfeOqa391S5fwaw+jXm0R6Z3mBmKpmrQ26G8ZACgLxr04GYJKhv5u5WELHQbvCNVVQVsaC2ZyQ1WfBnav9mEfG9GRZU8qNJ4V3DmGxsfybB/lXd+4Ss1spwldzTCvi2/pq1nqmAd3DbE6xDcO/rXEnCIFo8Qo+VlweTN3953om8LW2223bGPJzMa2bkTKyKZhweZeBeNwHg17Hfu","layer_level":2},{"id":"2b861a3c-6e7a-4d27-9e27-9a93fc2ea17f","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容关系模型","description":"content-relations","prompt":"为AI有声书生成平台的内容关系模型创建综合文档。详细解释书籍与章节之间的父子关系设计,包括级联删除(cascade delete)的实现机制和数据一致性保证。说明章节之间的层级关系(parentId、level、number)如何构建书籍的树形结构,以及这种设计对内容导航和播放列表生成的影响。解释章节与播放记录(PlayRecord)、评论(Comment)、收藏(Favorite)、播放列表项(PlaylistItem)等关联表的关系映射。详细说明外键约束的设计原则,包括onDelete、onUpdate行为对数据完整性的影响。解释索引策略对查询性能的优化作用,包括复合索引(unique constraints)的设计考虑。提供复杂查询场景的示例,如获取书籍完整大纲、查询章节播放历史、统计章节使用情况等。说明关系模型在AI生成流程中的作用,如何支持书籍大纲生成、章节内容创作、音频合成等业务流程。","parent_id":"44b7fefa-24b0-4882-a5cb-b1eb5db75bac","order":2,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:54:43.4123008+08:00","gmt_modified":"2026-05-14T00:26:11.003438+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CF7L/NuF3dWwXXCEeYXnGwF1TfGUJZfaj79XDSbiz0Of0b8i3WlBiM5NkMeCGV/fc9SoHxHec1eqWjRosvB0CxpCCrQvOZ33ozqmneFZ6yqbUpsP4LTzv3P7L+CgPPSRlOFzPzMjDFQCewGjetc42glNhiuWZlKQo+HVIsf4mKalIt62lcD6Xp7l4bObndwcKPEZGwZZNX6ZcInmRQIG/AYu9nVAi+xl8d7imWpI/n5TzGp5a+ERiXLOFvdercPNmgTT4jj6vHmlc0rddD/R7wNFY92+tUVHNvuQax+6nngTb1xUDZ4bO9u+1zM88z7ynFE2JtkEni5kYjH3+tCP/NueQPqBlJ8giWj/elyPrXJVb0BOHD/Izozv4UuQI6P48E0RI2HMf8y1WYJYoOtIQMDc9aLAUy6gxCaW17nGmcmesklqf0QVlrRNtn7fYs792sAIOM8ULiIvlAr9Gxjq+7GPYUqyXy3U6dxvzuP+j3/k4t+SDsUMvFNIPNFlxr7Uqjl3SiXiSGkiB53TDXuMEQzLPXCSXObbqJL34lWfpTovyPyqBA4KGKNbwl4IeoG6ZORFvJMSMnnJskLASKqt23+mmsW8NweKsEheTrJlElxZRQuqPexfAQglGjj1zZG7eQNNc95WcVW7qPyr33JkkAdJ0PcmAg4jHdZLhxEzEkM5Nh5KEN5o0+s700mbEvky3M+Ti0DHQe4j05ZPrvGLqWL8T0Buul997qbRp1vp/sUrx5lBbjgK+Ovzu8ehZypo/QiriZr8ba+puz4s+A0ddpKb8caLIKRROtSS504/2e3zELV6pa039XzuCgFk1Pooe30QLPFUNS67iEhT8EW4Ns+BeYOIXnV1WyzDglRk+DRSDkGKY+y667T9g1LWClFv3jhNCghy/IqXnUIGNySM+8yFz2rm5iMIyq3a2XXu53GevCmUOKNqAGqHcpxhgVH/AslU1sdLciK2F97Il6h/s3llAcYwhjTtOw2xkivQGmKg16qeVs+Bqyk5L5TvK5d+Xzr+bE5X3yyHxozd+w4cKygv8I7+uqE3LuiOyBe7rLTbUoPjHKhUpgzOAZlOi0sOFRxQ9xT/qausKIm7s9KQ2UOw600w222wdtkcd47k28FNDnvihdy2zSBVS0GzV2lVMpRatBzeGmI1mm9XayMBcZQqBAo6SAgHr8y6wAeoh97I0Xz9zkHkvlZ8v8otrskzBOrN6QURo2jdfAMRUz1APxqjVJ7yDPKbn3EdQ4BcGoCnKHjIuAuto3wqv26+5RofvAgFhqiVh+SwnMUF1KMNE52UmEbHxmVpjCpEq5botruiToIt8jk1GUjh3t0wzA2tixpQ/S2l6cqtA11gtY4fX0qIw73SA6kuQiko4u0bF2oGAqGst8t8SV0im0MS7iJtDH/0n+eYjdkI+ZWPAeQvXnoiSRZ1RK0Oxx9ZzOle31xQElnQ+W8KnegXJnhfK7sJB2fh//eipuOOmrAtkYZqg8/nzz3tlcTpRRk8q331wPUxL/GUPifxgSVH7gPjNkXZxa7LnrkFW2Jw+gItZUp3ECCpqffmtEfrxf+i7PdOJC81/FQSF8jD1gmZk5fxNW+vvBqyLrp/5r+FvkGa0RIe/8X+ogYbqGh8CywQQvunlmKxavvTR/ylgNN4/x+a0uwU5v5qFYKctimbPdDqBm/mgG4DtV6mieQ+azxY1iJp0l8EhM2pGf0IaLQv/gzRWjUfK0lkC/C9LIYignS+W8Ku4+bE=","layer_level":2},{"id":"6166a690-c496-45cc-89f0-c86d7c1749bd","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户会员信息","description":"user-membership","prompt":"为AI有声书生成平台创建用户会员信息模型详细文档。深入解释会员相关的字段定义,包括memberLevel会员等级数值、memberExpireAt会员过期时间、dailyUsage每日使用量、usedAudioMinutes累计音频使用分钟数、subscriptionResetDate订阅重置日期等关键指标。详细说明会员等级制度、使用量统计机制、订阅周期计算等业务逻辑,解释这些字段如何协同工作来实现会员权益管理和使用限制。提供会员状态查询、等级升级、使用量统计等核心功能的实现示例,包括会员到期检测、使用量重置、等级计算等算法的具体实现。","parent_id":"56a87613-98ab-47bb-a173-5228193aee92","order":2,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/subscription/subscription.service.ts,server/src/modules/member/member.service.ts","gmt_create":"2026-05-13T22:54:43.6736142+08:00","gmt_modified":"2026-05-14T00:26:47.9504888+08:00","raw_data":"WikiEncrypted:piKNT601qxwAxFbFc+bbNxJ3Kl23yK7vlzKXFF5irog4ggGPLYSgKspAqXJXJ+f9yM2ZZBTUmNdKps2ImTjXPmk9frhbzM4zDx0amT1UTlAcmCCCPjKFEQJsJv5qSzRbFWjFdxqpBM7Xq8n1ftISRWkpSOaNfzmZfzVNIJdksEPSBOUiQHjAN1Zb5Z6E1lXDBrnVpkaNosF4x2xBgBZJ9gsdkCnYvEImeoOxLrh1MjO7DkcRiRRp6Iodxb3dYtDn3qIDhsRtV+wFBSa6X9xyVfJSc4EQwJkWRSO19gOOZ40JEIrm7kl/g1jFyXWf6Cm3dnZ7MiC8m+eFV3DBCBu6qXLqVOWUSjLRKNMmrOFht7WE+fbhHNWVtUj6TriC8ZCEl3/4OcPVe9VzP545CnzJze2icl2J5V4hkz5vcx6icPMM88ws0jBtFtlSYIMOeh6QByK1rTk1x4PEj61vYq8tcG8IgO7HOEErBFQlyC9PMbFAR+3nGxN/tdTaG9LUY0FrA1KOXAq64EbS1oXTQmY0+UmrWMGW0z8IY4QZkIs9nEqVhpcT0iXrGeKeuUtEMDlz0LINq0cVIu0q9xKWs5eclSSDk0wjmGnb3KaMKPRuhLR3Ub2jDXJcXouxzq15nG1A9GCrIZfDaDG/6XwEU1PGSwROGXisMeLoWOiSPmA4dFonwDj4Lr7IoVoV2HmYUVDN6UWZMZ1By5GS3eBWOQk6SWq1h+J6wN8QEzXaZSbzt0TDKG+0OQwqcGzK7lyjBCoj0rTa4l92av54N2455Qll9GKURkaCvq3mUHOof9S6Zd+G6Fm/nbMsgEE25tbKmg1i7SsUeowR+uFGJSzl3Jw80lNumsD4mBgoeA1yv6LHj8mgPU7BHbdW6buCQn90nnsQID0zfZ5sRjfE0Bwz2iLyZ+aNq8bQ3qTwdlH4TEMV4cz75Ssl1KHR2UE5QLnzsRqt73IvOKhTleTZcfftxahnLN6M0IecGSbFvPTU2yFfnUMjYvLZqttzVzIK+5a5b4I2PoyX3DiripIvaeREOuC0P0ng+hRea7Jm6GyfkPMGHGetQaLVAqViyJt10W0J6f7JiDjvHRVaEJj4xwpxMjYI2uG4ysOlz+Nrp02oLiFYV5i4bv3cs9R76IsN5sgE+5Y4OAzPduRwxcv4Z5DuHuWO5nLt1Tb/aRQpWH6b+N01zXIc2AngRupw4XnnWG7pxk/vxRcQf3XtkyD0xQI19PxS0vZE6MKBU89mG0WRauTa9cjzQPOUwRQphJaFASHoGN+ZHOcYhB6zT/2QGCiJI5Haof6+bCNdy7f/UtGSZ33Nib01qDJKbTziXB2fix9wV4y0RXxkhVNWg5hk4vTrCEodYgq1+wLf5Ep8EhYwLatHFP6Mm7ilYlQJAo+GAeL28XOgQHJIsEnj71Vtq+iZvIlNT4bSDeAQSRCwHs75W6RlFpwYMRBiWuehTpHnxEey5rrqfQJ+s2O8H3Fab99dQMk56+Mm63xHbqAOEC9ECAN64Ir/SGDa669GMWNd6e5UwuN4sHcdKZKeKrqrH3zFjyj4JA==","layer_level":2},{"id":"802b0130-0209-492b-b03d-82d9c8fc11da","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"使用统计模型","description":"usage-statistics-models","prompt":"为AI有声书生成平台创建使用统计模型详细文档。深入解释PlayRecord模型、SearchHistory模型、HotSearch模型等使用行为数据的设计。详细说明播放进度记录、播放时长统计、收听偏好分析等播放统计功能的数据结构。解释搜索关键词热度、热门搜索排行、用户搜索行为等搜索统计的实现。提供播放统计分析、用户行为画像、内容推荐算法等业务场景的API使用示例,以及使用数据的可视化展示和趋势分析功能。","parent_id":"aaf4b31c-af75-4cc4-99a5-d5e6f829f80b","order":2,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/history/history.controller.ts,server/src/modules/player/player.service.ts","gmt_create":"2026-05-13T22:54:57.0784286+08:00","gmt_modified":"2026-05-14T00:27:02.5900872+08:00","raw_data":"WikiEncrypted:AC3XqhqRPl1uFgKdX3GWmV/WEtcoQK+Ys6UdWH20ytA/DK/+YUxri6X4gueSq8DdAg0sjEEY+EGaD04cu18POs+We6SjneeMCXHW3uhdqvQ7sCdl5NIUVnVcgLPruLpIWWbPpca4nXfY6XlGrrvIWB/t9L5u0xU/afH9nAjVFxMCTSAKZFl3sL8c1t4Tx05SdaPnJrCnUnR3VPlTYoiYabNS/94vtBwcy5E7Ci6EBTgHxN1l4H3GXTF3dN0uoi1vB7B4j8YNXyl0ZXjTVTGnxRIRoPDo03GB8NIGF6pFqP+zyhdCcshGmoRngv/FBY2JParLDZ5cGz9L7WayrGplX5j9oLThFhG0deDs4244ndLXPZWuOzNZbKAYmk0vWj9hUmh7IqJgWKeHBf4e7ekip3X7vDJTdBo30jyY+ep+F1ZdC+aJ001WNwxPWKoKfHuEnoQnqHoHOA/4vha6LjwOY9fdGKgqeASHNuPqY4GudMsQhuqjSqvtDViCyRJhc7u4Tma2qzkGBhnlmHnKmU66FRqV0nTW2HgIHyBZGM2beC/g4ZxCcpwykzoOdI4iKAwO/EsYCF32svLPOrPigUoflZ+5SijF+PMWiq1vip7kZYwMxvpw0lVCc0bDxqPeAscg2SVhbWMQSg9KBwjuHXXWk2eoWMSKD2x4EhqM8yp4PgcFHhYr7qqi8onROj+v3ErYykr25mYPqUtppE+hbrJhbxIyIcy43Lq7zvx2q4v7JjX5nR2JK3tE6LMGgCrOZr27LuSy9M76xDa+4jogoNE0BRhiMcOB+t6fX2x4rGxWOpHS0InRF2cWbqz0TB9mPkoyz/9oSSRR9frCokooyRkiLZF3gJt3fu30qYq8L+yiJEwaDR4hRuuP5pCbjwpJjz6lJCnN5HPOEkF94MDZF8+JAIzNm+iVPLsJ0ZFiWgjMFPNLUdVq1SRoJRb9nCM0XS3evZGkCPKMgvNr1lULoG+0BmzlQJ5sdBl7PhrsmX7vNiZQgypKRrqWm948mF6EWxnQdx721u9wAiA87MQeJwTV1WNdRwHcPz+22o2xK3SHUe8UEYV0MorMZs5INucuV7N2zOOp94bUhZW8iWfVjdciM9Q6ailMa0idZlkD3ryGDJrcEf0LQmB5AOgRWepkH2UlhDG6XWEivR2eBL5Si0MuJ6ZBhY5pBIf2QSEwRVlH/s220VDfahLkeeAaoLBf0QLePPaERHGNP2hMJCJglBO6QKGhY3A/e/T2E4IvNZ2rDskznNrRH/OanhhFrqtfs9yFzVzF/FhiNvi8MeUvREJmAgaKAcbR6/mZCe00G/hYuKFQsskOe1y2LKASG8AjC2BGNjnlAZ3JjLP+tiMrHwlWlFRHC+uXhAr28Drnsqa4N2w=","layer_level":2},{"id":"9cfd09d8-87d7-404e-aa45-064fec4449fa","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"UI样式管理","description":"ui-styling-management","prompt":"为AI有声书生成平台的UI样式管理创建综合文档。详细介绍UniApp跨平台样式适配策略和CSS处理机制。解释全局样式、局部样式和动态样式的应用场景和实现方法。阐述主题系统设计、颜色变量管理和字体规范的制定原则。提供响应式布局、弹性盒子和网格系统的使用指南。说明移动端适配、屏幕尺寸兼容和横竖屏切换的处理方案。包含样式性能优化、打包压缩和缓存策略的技术细节。介绍第三方UI库集成、自定义主题定制和样式覆盖的最佳实践。","parent_id":"2c378c6c-03ea-4edb-b220-6948e511e14d","order":2,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/pages.json,my-uniapp-vue3/src/static/tabbar,my-uniapp-vue3/vite.config.ts","gmt_create":"2026-05-13T22:55:07.5867449+08:00","gmt_modified":"2026-05-14T00:27:59.5629683+08:00","raw_data":"WikiEncrypted:VKRi2EKq/G4NLxYw2c5w/+0cZ3cjSuXyVcXcKnszevpyjg6nAX05PWez8usnY74+Rpd8hZXYq9zCcBbXAaABGsYCX5lumqv+OWZtYYr0bA9wsbFCySi5f+S8mIaTSkMQm/CcMD0Pf0srJQIe3HPAWDTtULa9tYicZL5kgocdstATtKJV6sXgR7rmYgaX1envd2dyOUyLZBhm3zi8RwFo9QARdgUvU4hFVQz9eLlpNInw6WLzpYMB0tpxTt0o4EUp3WGRI1kKxFx7PPsaR9FvvjIpBo/SUEKcx41AL9HuYnNk1b80Ut1caZgoQB5KkwRqJNZx5QuyLKr3f1YZEbloIRULfF+MOObB3piXNOjpU+sWMdnCs7wHpaSeiwqyjXGzTFwJsFkzDKdc9rFsHV+TW9nxucp8N5y+1uChPZnrQWBRm3zdP2I+TEnY8zGzX3y5RIc8ZSESrO6j99d7dTXu5gYZOF0LmNoG9MTsfcLjDIKfYpYXu1Cv2RMkeHUCWRLa4MatKVKcf8XPc9MJF18TMtHp7Y60D1ZRuTCe2GE+oNoVyzRdJAENIKczQT4rZ340D4mo6q2Glgr5R8I8GGg4O21dSErRMv59LiMhgQKlSQWOZaUNhmnV8NngWuRJdyqL02PvdZZ9MENwxbr9seyohO53/eQ4kZb0m7FmTQIz+1fLq4BMrFqs64OgBJSM3Z5dlThx0/OaYKQH7pwEkRyWYHj/nPPEkled9QjwmkTx4e6oAhOu/qtjQKVMtYnllg9ujLXerD3zhJjGmCsN2trqv3kF7nBts0ZBKWeOq2o96YYH2lKb6P6Ertt4/yYJYY7yYRo9bJ1ISq4tEO5jaGiZMkVATCmjpDhcbjaWlQOpypY2vIEzfFjmpA/miVc6HYl2zgmjXMWa6tTOc1X8J16VKijArPPUsBVY0Nxq8mPaKsBgfej+9NWlda6aUHgAeJWiIWJeI99YAYVM1yrAL0wRdsRi7qRiE0403J2LiUBLIjWJIp4v+lGYgF8AMWBpZNR9umf0jByw09eO12AlekespIn09zxQIcUl98VFGuNt5qvZ/AiBTg9o/3bux5b7UgFSNs2LWHHkMg0oatPt1kiMW+dvs60Llpz6znUT3hQdac+BfZNsa2utPhMEQnWf4z+e7bVIDm/UyMLsRL6/QJdBZvV16afC476WDGCJCkFl6S+Vi6SggO4DdzS6C0muCmEavuo7mGE8CEGsKiBbxUSWUovrQk1nWbSyvSNilu40S4LQxuOwMZE9gyDixx7+HMXfHa8ItT6Imu6rSz0su2oib45n6tb6mP9BNm4/n5nNZSAmqYkU5BefyNPrNKmDwVRPVGyhRPB5NC/jwjyBFCdVQv04G+ToEXSVojJWjbyWsuofYKFoOtP1k1IulEapnM10","layer_level":2},{"id":"51bb35e7-8df0-4211-b5d4-10a7cb097df4","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"视频素材模型","description":"video-material-model","prompt":"为AI有声书生成平台创建视频素材模型详细文档。深入解释VideoMaterial模型的字段设计,包括id主键、userId用户ID、type类型、name名称、url地址、thumbnail缩略图、tags标签、category分类、duration时长、size大小、width宽度、height高度等字段的用途和约束条件。详细说明视频素材的分类管理,包括图片、视频、音频等不同类型素材的存储和处理方式。解释素材的元数据管理,包括标签系统、分类体系、尺寸规格等信息的存储和检索机制。提供素材上传、分类、搜索、删除等操作的实现示例,以及素材的缓存策略和CDN分发优化方案。","parent_id":"83d0b783-d35d-4a8a-a303-9cc9b9c2d4ca","order":2,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/video-generator/video-generator.service.ts","gmt_create":"2026-05-13T22:55:13.5851955+08:00","gmt_modified":"2026-05-14T00:28:46.383212+08:00","raw_data":"WikiEncrypted:/pvGPLaEVo9VWauq2W2LehImF0w+65tACI3jhbNTfrEQLd675bD2wVZYw5xhmrbAUazYp4zmq9eokE5rDfZBxhKum8xvUP0NtLMbip+qOVqKFvIPjigCdGfQjznubMaC7zBy+e5VTSSuUSrvEqObUxZkmyBN8K5Inrkps/9XhI6AhI4B4ONCitHGL4rfgXwJdsbXMwu5Ox6pO6HHfB4UEqn5NtCSCiffMQFpftPdZoeCDORJQ6zl7wKfp9oiwgoTH8gHc8NRjVR5MP4QG6YBvg2r6VR2Dq88U6YRw8HfC7epfCK2+G1KngawO/w0PRfDb1tvq/qfbzwy4orbuptwisvcl4X1UU4DTj/SGKU6nZ/SMCDJlEPXVoj7Yi+mt92NjZcT0fY7XkFXZ3qElvckbHhuqcyy+fOjGtAsKRlG9Odnqpe7rER4Y8xQkV/RcHJmoKQXX2b8Ex78R6gDoHpGg5anyMW44TXQcEr5xyl079cyM6DjczpaQ7HKb2c6vth6Tzuq/hfjGJb28hpiGA2zywmz9cbmeVwFI5iPeFHx0Y3GczxAAu//748cLWLNyXStRb6lEwHVHbmZQzFf18WTTeyEERAh+BNT7jteFfCVltwKu8S1q4GAbOdnVpWnW+LR86SG14ePc8RhhYb9V4YZRVjhnhOChF71JARju7sOpA0GTxqvMf+FGwiNVFdbGrvKocM6GS396scQN9/BQIC2/r+BWlffUPQRXmE0kFR0LCpUMNLD77LwG1ONxCb47G8tUWhkEs/jwxT+xBYQ33lvimTWkR7J52g97ahqwldY9m2fmlv7TENJM+LQL3xe+f2FMR1DMfWclWNFKQd6JzkyhS+mXLTN6wH4YUV4iASNmDO3ZuiAeufhc+OvE0n9EAS8K63lX57fdjIRY+dwqsIhkKWN93uJOqkJZjiv7zHRs9yjGEA/t2GTe4AUrKzR1F3EcbnL7DHzpbR3yGd9YoRipHAnEhEQM9bItpReIXTM966soW1tvKYpChsFPMgiRsshaL4KgXwinOoxRe4H93v60G5sH7awpBWdOoh0jhT5o7Iy74h04Wgby6rmpVJU9AEdsz5BRuqRa2PagejqZ43G3qoV64+BIxwaQsMJmC67DEbFs68F8T+W94mKjxSt0TnsLIdCdJpLBulyKl1X/Js8E9qgncE33pQBmlyeoIsLiapUKKNlFOM6+fUI5UtJ5RJCuUqr/kuoTi/1uG9HF6opNFW3TeYOvlGLu5NVx6layU+rdz2yJHwL5JgiW4iXfImERWYnSOc4CI1H4w/kse3GaHHZWTUwtsMie9efud1yC65z5QTspy6Fh0d450EbkfWwVnMSnvN/PLzNIpfQisVbK75z7fC+KSLLSZmgRO3x2DsxgOve1Rjpd1Ea5Lraa/5N","layer_level":2},{"id":"b300e644-ff87-4d87-8eb6-e0f949a50512","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"播放记录数据模型","description":"playrecord-model","prompt":"为AI有声书生成平台的播放记录功能创建详细的播放记录数据模型文档。深入解释PlayRecord模型的设计,包括progress播放进度、duration音频时长、chapterId章节关联等关键字段。详细说明播放记录与用户(User)、章节(BookChapter)之间的多对一关系,解释播放进度的精确记录和同步机制。说明播放记录的数据更新策略,包括播放进度的实时更新、离线播放的进度恢复、跨设备同步等功能实现。提供播放记录功能的API使用示例,包括更新播放进度、获取播放历史、重置播放状态等操作的代码实现。解释播放记录数据在用户体验优化和内容推荐中的应用价值。","parent_id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","order":2,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/player/player.controller.ts,server/src/modules/player/player.service.ts","gmt_create":"2026-05-13T22:55:15.3905403+08:00","gmt_modified":"2026-05-14T00:28:50.7497367+08:00","raw_data":"WikiEncrypted:uGpc0EBmzM5knyLIXCjcp81aZsjwDHbBo0AvlScYzEB/iqyPzpkarlvmzChYLLB0nGdf+vqp29C/GCWzlar8Wcn6fNKlbhw5TCnQND+gxSo/DxdhVBVf2pmcSi5wp7489a0e/KW4LnkyMrJf5l3GhyKO4ds6MDYF7D2eEnZdeeoCAuXgo8Il9b6Kup7n9lAp1zFj1hjndtK5ySfFlecOdONsjkc7gW/aq3CAzYjJEeattR4ZuBGg2WCLeQG97sa8Sc8ed+WRZqf9FQMBoRuPO0D9rqfOPfPA4YxJlwXMEHnxOr5x+v/orpNBmz3uuQlwj7C3kw2bxKSscre4YLzO3XPRBWPPyM136NjxoBUBtRaASE1IPowgThk4mg55zhquav1g/hLBntgQv+hqTa4iJ4cGXSXLGphylzLAOAXDGkcuOkgnONjNFWdx1GA1LRUhrGhfnrcnzR8ltDuGnJ2E02pIvVA5DN+wRXZs5G4ELp7OIxJwl3dlGJIp6nBf7DWY0M6xe/pJ6+3tMCk4c7F5D2WcUE2J1WLwJ5th0y+Ju2qh17UO4BsLx38DUeAYpDrg4yHdk2/xPdSouDl+/uxkOO/GKgRMkfZHysrQWM2ZzyIQluMadJzhTCwrIIRyaOFbYhVnVISUvrAZuuY2sJWaHC1IhO1BpVJpsSQ0VUz/eMv039UmOKcV6Xqs63fQZKHi4MiwuL5OF/bs+oZuCA5e2wwJZYErYhrRa++IW1kTTY3r826nRiAR+jTeu57qXE3ItA3TIJmfQdcJdVW3qIlhToSjZ2klSiFDtMD2sLaQz1ITj9jWVMHaRX63g8IVj178E3XMt8I+3HIEOG5yxMNRFqEVUHSob7nQMtvF1onV7QYj8qK7++9Tqzk1NNJlbbnsvygQVCyuosB0k2YBcxwVCSAckkmVIHVNl98yI4oBPJL5cn35SDcI6uevWv/PrRInJux5JAnSdQNZWBo0gYYimGEenPzUEkbaQPDovx0Hwe+A/v2eEWiFC0P0y6XZy4O7ip0c5a5tH9y5EKvF/GR4IShkY9fYKvnvDDpLs/EV5T0GW8oP/ZVJDIF8MwthPPr/RXhOkCq40ZywZWUXZz4RyVQP6K8lDA0vS6BOh3e9HaJ2uBK76zmr05qY9Jk6yVQbz4/FR9G3Chge2y8HgZ6oEnQOGKV/RBqpH0ysRS7nMacfEEmKfz/I0TtN7lD6xzpVkPGADkPDJAi2JPqjJVy7XlfLOq8stFpeR3+Be883bpbhbYTuR++Wz8vywwpVDSTyhENvdanWgwuxwHXm2WERhDvk+svExI1n1AG+b/s1qEHjr2WViaYzSXpbB7EgvZp7uEvTIGzuQtqg5XvwegykfNX1SsD2X3zmYbHGbojyWuGHiP3xV9s8ghxzEci7c+Z6nUVPLvwC0lsZYAnhC0QHt3C0HaQPLIgOkqTgD34HsyBk3ggrJnZ8F4tGnTwFPNcY2rFfkN1E14mP61FXhc0GxdEV7HTWiqgO7V3DlfmPi1Q=","layer_level":2},{"id":"28477d51-8e1e-47eb-b089-7c4c06d20878","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"配额管理","description":"subscription-quota","prompt":"为配额管理系统创建详细的业务文档。深入解释配额体系设计,包括Token余额、音频生成时长、并发处理能力等不同类型的配额规则。详细描述配额计算算法,包括使用量统计、剩余量计算和预警机制。阐述配额扣减流程,包括生成前检查、实时扣减和回滚处理。说明配额恢复机制,包括过期释放、购买补充和手动调整。介绍配额监控和报表功能,包括使用趋势分析和异常告警。提供配额管理的API接口和实际应用场景。","parent_id":"a039ba68-0f9d-4f92-a4a4-d02242720fc0","order":2,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts","gmt_create":"2026-05-13T22:55:27.5806899+08:00","gmt_modified":"2026-05-14T00:50:28.6344057+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqMyLwbBgpFeItv3UgFdt098Y22kuRGAFrVjZSDfRTu7kkTSRthdmvJTh7elMRGFh7BvRSHCslyXjBFaZvJadfg/dGxI2VGGPGCnU8TPVEOiPLaFobcaJTNrKMDS/8KgBh5CEhkfKGKTuII7ln7+fZS2cXJ6EJmnen9jEY96O6kc9t8EIW/hUN4sTq1ZRgpRUIvBV25N1S8qb1VX7Vq3Q+yvXCVKVvYtRvEer77eJ2GiMADPMpE2IqGjw1bs8ZWq11xww9O9L/nGvDr7ZKzX34uANTrQjhuJ0dhSrtB/IPPRqrgtOqR4hWGO714t/InCZQ9RE+dyBPSkZL1KIiTTlaw+ioh13yt6DSXY6D6hH6H0+faurweA4gOFgX6Fm7DsgyXA2Mo+kaXh2yDtzMlNdb/B2+Iq9LnsoqAbAY+3B8C+m7DdxerCA5PdVX+OuxjC6SlOuKzHIjWBqiYDUcwa0WAgYeN9RUOmwfwtU1yxq0fZRboA1rlp0fA2WDamy8iMEr394h5jhMbMFmfLEFrZitgVBBgb5g6xW/OseyhJ9Yb/4zT15G19SdqFfCsJ3LgZ4S9w7Ck+iFtHlTv8ghrRqZk8IoL+74Y4W5yzHxdHepcBlkWZNZ16YBe3Oc8sjhkX7gY767QBljASIp1B6VDetA3boMPyU7mBE80dQ7t3tsbWM/Hp6gtWJJbgLRzsme3q66k6wjZx2NSYWRb8wGur6CqdLcE1fMgBX+rjU/oUEzUCC/rn+y6q6SPwipXkf1NAKaMux5pZYdEfXPIlp1d1hUT7bfe/HNXrWait9nV+kSLejFjAiRjEiN9uv9XIyJflPFSBmWLMw2HpN68Dwf4krx46TCJagZxZ6EF5Dfiwj+8MX19+N14gn5s+StRa4OAvskpYCaGyHZUB+hORBZWiBGw7tUPoW5R74g81wI34AtEC7yoNpfgql/1ostOGkIPE45X6lQ4yBgGHaYZw7clJ1WoRxXnwboMG8RSg+5tBjFngL5Qp6s2D4Bfvy1h+qLfg6iX2JmASn4ZpPpSN3Qm2SZboIkNdTU6otskxs1xUBqYh2cKKekqn0rexJNOm0v2Ftk076Q0+dle1N0nnUu8A4RM0R3Ovq+C1HnRMkGRGGFhqQ4MdNXOCZqYxROXKQEIlpY0M2V4Eam/7bQSlgcj7ER/2cMvsyYbfuRc94o6BQtD7Q6rXpvkiHvlHKTP3pJxFfnuP5jdMRgPycmfaMcavHZoH5ADHLPWRRmNsTvJSe2s6GDUth7L9Oc9N1+kBehQDgdixYUeLIDN1t+WGNwnzleOU=","layer_level":3},{"id":"6bd9af22-3a35-48ab-9194-e8aa8237ba0b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"TTS语音合成服务","description":"tts-synthesis-service","prompt":"为TTS语音合成服务创建详细的技术文档。深入介绍多供应商音色服务集成、音色选择与管理、参数调节机制。详细说明阿里云、Minimax等不同TTS提供商的API集成方式、音质参数配置、成本控制策略。包含音频合并器的实现原理、批量音频处理、音频格式转换。提供具体的代码示例展示如何调用不同供应商的TTS服务、如何处理音频拼接、如何优化音频质量。文档应涵盖AI摘要生成功能、音频质量评估、缓存策略等实际应用场景。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","order":2,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.controller.ts,server/src/modules/tts/tts.service.ts,server/src/modules/tts/aliyun.provider.ts,server/src/modules/tts/minimax.provider.ts,server/src/modules/tts/audio-merger.ts,server/src/modules/tts/ai-summary.service.ts","gmt_create":"2026-05-13T22:55:34.8139309+08:00","gmt_modified":"2026-05-14T00:51:59.4103682+08:00","raw_data":"WikiEncrypted:Pz+fPy4VqShHupXT4jRITzIQ4o0qTcXhIxxppOL3KPsuEivTbcPCbOL2LcCgmjToK1zpADCa6+D4JKseDm62h/kOhIF4e7gBIaYeazjZR0WjSXfVfxUjB67kJQujPDWKY5+4yb9ylJFw6Wnt+ARfR80LgSmgtafOiFMTVrHOsIwjb8p2hoQZyyRY+aga3UQb5rKNpZabyFEpOeTRbWnNyGsmJDCKektI7+bm8k57GEo1Zo2T60Mh81lql/3ynLlOll1eSX5AMAmoeMD2Fj7dAJ/3bgYgxefvXeXhD22c/wvJ2k6RM89KFnQlrZJO8wLA/dXmvHBoed1mYaWED2zWZGB1cYDOfKOXkecKEQEsn5J7e0Taqs07lweKUvnGUBbeqDR0ikJVai0lf/xpPVcasSa9Dy4IGr63p4MdeYOzRfI1Waam8+H1DRJKHnG/bc/bERW1EKUPd0yiC33idPOZdKFAbfnQxJIcm97u4zyk5hG4+FkycAYcYQ/Ci129P90TXQ84ZSjklBY5wxIWueoYd8eYo8mvBx28J8SBIhJRTHFfV1Yi0fT+kho8ckoIJgCDW5+AIYtMScD7I4E8K6pW7Y+gk5g7lqRZRjNpSUB610tEcX2Hr7MY838ZBUtK25aigjcOFPZeM6XTo6mRihRfaV5r1jN6z23MIr8I9EmJTIIqUbqI0OroclGyZnNDcfKQD2AkOU/58ZtDTr+tbCaZzFNYcuOjIERpfVU3lCSxZNBhqSHU+8UsDKKWHj4S6QNafocxPW94298s7yGiAJo42f1NM2e5YKR/ReYiHoFlYrOOo9pfvIcRI+Hnl13SOk0IhqK5G4BReWh0+k5CnRF+UlUmEDQ/ldzVZipoyfx8dujCWNAMyLT83PoO9xj8kqdx71tBaFhEAhReeixLyBJrAr8wIt97mphegQhttNqb3ON1V2fV9zDhFjkCyVXwLhBhGVGWD6vYc7jzLoE0aG2c3qKQO5r8qkmXJnU7KaDNznWih2P2qwNRPUz1c76A4fqDIN1MDY8U6w+YDu9Q25VbNfVHtwgL2hRFKxXO5qtmwbEvjyb2uZ2+qWWrpcOG0J+qy0ovg1YqwaNHCs3cIMmVxvcAa3w0AG15tbpDakoDmaBv1I+lbaPebO1Lt+8/OPndxpfIsyYfCKlfli2WTzgJSNfTDPX+BDAXdcPn9gLqnp6/HfW2ubJRF08bdmstJTjf+AegaHnYUd8DOnXUSCf+jvVP/Mj7P24eBeI7iPfavLz5rD2onwRalgurKBocUjEk4jO1E5N5niQSZ3XiPdOaIepQLnb6waX59EMEHIrSKNggYIPfI7HbPvHA0vKDyI7+uhqvpuPKpb3jnIBEeVtaBLGGDEOZJ4X3LrJvw2XQogONWvYfCvZ28zPHYt+4PNjRHIL63D2i1R3kBRpnwxUhP1DyeW+NyFDzsfS0gzhrVuE+NBxoedjdwx2GbJfqtHPNhYQZnLosa2hAZ+vit9rZT8qciCldJnO6LAilwv5yYI41haS0dp+tdVBAJ9lw7boYogjqNCxSLD97eiXp7Ud8iw==","layer_level":3},{"id":"4da725ac-9ff6-417c-b08e-8577637db9ce","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"存储服务","description":"storage-service","prompt":"为AI有声书生成平台的存储服务创建详细文档。深入介绍阿里云OSS对象存储的集成实现,包括文件上传、下载、删除、URL生成、权限控制。详细说明本地存储和云端存储的统一抽象层设计,存储策略选择、文件命名规则、目录结构组织。提供存储配置参数、安全策略、性能优化方案。包含实际的代码示例,展示如何上传音频文件、生成临时访问URL、批量文件管理。解释存储服务在音频文件、图片素材、视频内容等多媒体资源管理中的重要作用。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":2,"progress_status":"completed","dependent_files":"server/src/services/storage.service.ts,server/src/services/oss.service.ts,server/public/images,server/public/videos","gmt_create":"2026-05-13T22:55:35.4418378+08:00","gmt_modified":"2026-05-14T00:52:05.2075684+08:00","raw_data":"WikiEncrypted:9FtCQC0DeAGG21+hIR4h+Ayx9bLXPjQZKUx1b+16LbMIWLD5vt6T2btvVUUGMbNDI8iCtIUgMGYxxOeMjvtzcd5U6RgLhSnivjIIhcolUdt4JoGantlYQkxdZEnw4DX+4smlC+Jm6NIEBKfPMxOcCDJRTXd7n20Xy3yf+GQ6oLEce3+KvFEjRDeVLBmVKn6tiI38ALIi0D25aLo9NPGoNITu0AmeZ5mFIJobqxw0LIMeX/7SKxuJvjIWseopI3rqESM2SFF00bn+SZCEzKqlQrSf+PGeXNBou/GMjcIOXiNgfXXsPeiodTGlYc6GXKTVh1j7S1yUkObMDOaOclFf5LnTg4dGsBqPjLBM+hmkumyCAGdgvq09MKUQcpC7fY1DLjMmeM6mxSN/Vi/uybZNGWgsWwDgxYE0tgN9SIp7we2AwxiQv5jZNJD0UntfzhOqdHIWWhpWgA5d6mHun+32TuEn2S9mM5Lr7cQGOFPWqNuuv9rnZgi2ocn3u9GOcuRXwyQCYgWtR4604qPjLYbtsRQmCEcpnRz/hTFRAXRvqgr/8W+2rhVTBIhq+RAYoKaNgGtMj8fvQKaaVLZaO4F8ca6oKj9mPD3DYTK0Sv38FG9SEouEhe6XwyQJeGbhl++tIliG6y+PL60EsO8z5578RRory3Lc9aKKMa364esS8RfQqrI9MokgI26KUN99E5DoGFCFnN80evS9Cm6xPy3G6TK2wOR4vwaKW0HH/gJKEPNzhRF/skKjxik+3yxxtMqdr1G3xFL8ATV/5fgBdzTclsKHC4MYOd6fiqbvUjj5SP5gTWqVITwmsJlKnBVyFG+r1AJQIGcM/s+6Ypw2uWf53HrIT8u3Dh1AtNQoyn6RTJ6LxjUUp0J67Fvn6sEV65mOyHnWKWXH8fDWh91ejZvYTeIMZMSZD4i2gfVX2Em3O7A+g3UEQ9ULdMp39dz3owyYC182NB8O+7s7NVANTSvgCTGGBekWglNSDQC+JHr3XYGI1n0Fsd/Jwa15rlOfS2F8EPHJKG6tf41xE9qKifskao+iRyUr66anx2FVEMoNT2r0IZIwB2w2mP/bnHTYlvU4Vs1Ay0sY0fILf7pKNOf8Ed1evL84XaNQOVnfDyDr4ol4Wjl7WomjmEofSBhthh1faXBlAtdIt0Q1UjR0IPHgXw/NV9GnXKbzlKLnMbThGIpP1jHHREjMv9B1qpeasSwvwIb94kdDD95GdxFrd2aNmgo1Nqa6BQ7AWGCq9rGBY3jS6ZyTaItqnZu80sAxsVaDI1p+OchcYmaKCdLN0n7YJUqMjyd/0S0ZYU0POWor97NLMCjVMtEiB7OUU/IzYiifMHd+WSC7eZklMQYYyxJlPQ==","layer_level":3},{"id":"a2a9d383-1920-41c6-b03e-5788ab0c47ba","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"评论系统","description":"comments-system","prompt":"为评论系统创建详细的开发文档。深入介绍评论系统的完整架构,包括评论发布、回复机制、评论树结构和内容审核流程。详细说明评论服务的业务逻辑,包括评论验证、敏感词过滤和垃圾评论检测。阐述评论数据模型设计,包括父子评论关系、点赞统计和排序算法。提供评论系统的API接口文档,包括评论列表获取、评论发布和回复功能。介绍评论系统的安全机制,包括内容审核、举报处理和用户管理。说明评论系统与内容管理的集成方式和性能优化策略。","parent_id":"f7b6e663-d6cc-474c-979d-d16f5d382722","order":2,"progress_status":"completed","dependent_files":"server/src/modules/comments/comments.controller.ts,server/src/modules/comments/comments.service.ts","gmt_create":"2026-05-13T22:55:36.6453573+08:00","gmt_modified":"2026-05-14T00:51:54.8894258+08:00","raw_data":"WikiEncrypted:iltHj2u+u4iz2ZSC14K0cucv4rnxx8sU3dCCq/CXKoj0a/KnbqTpLupgZfsRpnVIvS2yjRBW+oZpaDGk4INF4WWKPANlCaF4tGeiNi3tzl7xdqdzDS8hHHMlZBaUmwpgZxGKyC20ZnJ1moj7U4hbrYVnj/vZbktH7b/C8LVqeDDaNPGo6BfldPLamUVYFjQ+9444FKJYbOPYId0ip5sYjJ49twzY+DPPogyrgmrNo3j81XKpA3eB/uSlvSbR7UWVQHApBz/w9d2mnjtyAmu1jt3+tacTXwHmnEsuwlkROGknJkgiGGEBhgRcbQj9hL9U3+Ftw+tNOZuw5KoLoNT+Y9+0tki+wUWrEDcRs99zv5gbgSeM/II3qwN6+KrRdnOBqJNWK8fYEJGSeUrEbwikRhMK5CA9XPW9Pnlvl8u8k1yhx9qSk1C+bEa45QJeKa7UZKhZH0+y4md1FJVDqqK4aLoqexhhdNkSB9KVsG0o0UwmgogSYejFvSMN84j+Qd0a6U/+TgoTk+JGgoJ9OwrUzVvY78ArOO9XnH3arbgHQy227wMy1gswSty3AsPM+si+nMtB3mARLRQWJXXyQa5aLwCgZ+iP4EtpDWJ7J/IwuvAj25EpO19qyxwzB8te5zN4TkvFFY8ooxSzCEvdxG+xQ6WhFoJVPemav9Jvs/xnFAv//QN9S++gEe5pqKSdOZJDGk3JaHeL9VRrG4wFhQ4hZQYQT5f0k7KIA8YqD7dyKj/lDxG5c+tg/+GB+GJ4GKxblDZqUjm1n6M5pUml834t0O5787yWSfWc0E998DkrcVv0mj8q8z3vPUWzYiTujHjnLvZYliveB7FaibykDufIkxaaOqY4GO0jDJtCFqa1PsZhr6HAad2HO8h80We/0dL1f/+8ftSNs9yDuAwJ6k2m+haCKi0pTBxv+sxcMrX7AzAH/vi/98xvnz/9LTluDojC3k431GdqrsoO8/HBIVXc6RTKotNCtV/S7/QPnqwGFlHQsH/xG38C2eCGcUc89IgaotBeVA4hFyyJvxWNX7M2rJmwS20tW+mNATSoOXGAv63KLvIhhaSJHjnnWa52LW9c05bjp8EpGK9vAs3ElK39r8RcufashViFJo7za7g1ksnMvGXpI9psflgW5+7pAHANp+m/UyjJDTlq4zLUq17BHJrmh8tb6sKjlqHyY08+xncZfIFd8a2QvBRTfbLlpVyRCEulGKWBW0Q26xSCmZnY2iXTo+W4BDZJfkYfnSo2cWk=","layer_level":3},{"id":"472d0c9b-c341-4d16-acfc-35afaac5f81d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"批量生成系统","description":"batch-generation-system","prompt":"为批量生成系统创建详细的技术文档。深入解释批量生成的任务管理机制,包括任务创建、调度和执行监控。详细说明队列处理器的工作原理,包括任务分发、并发控制和资源管理。阐述生成步骤的组合和执行策略,包括步骤验证、依赖检查和回滚机制。介绍任务状态跟踪系统,包括进度更新、异常处理和完成通知。说明批量生成的性能优化策略,包括内存管理、网络优化和计算效率提升。提供批量生成的API接口文档,包括请求格式、响应结构和错误码说明。包含实际的使用示例和最佳实践指导。","parent_id":"701079e2-4e5e-446e-ab66-c5148c3b706e","order":2,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/book-queue.processor.ts,server/src/services/queue.service.ts","gmt_create":"2026-05-13T22:55:46.655603+08:00","gmt_modified":"2026-05-14T00:54:15.8603354+08:00","raw_data":"WikiEncrypted:TIdOXnVG0Izs0oQg17x4VsXNtlRLqV8Njjao/A/dn9Ws8X3+o97QGrfQggcVL3ozm992WNNjONEgLEEkdRV8rNUYxzWKcNqkzfQkmZ7QiqboVLmKa05W6r//alhfDvnirhIlgHf9ECglUr+c76fB5BfL4ePlvSXEr88QUWdtORpAVM2d2f692ekAQLXixACWpXSlG5RKCdwXJ/0k77WBMd0yeTc36p03fv4y2PFatynrN3EiMScN9T+pc4NYAnDSm35qJeam6wsiyepykZ0FShZYPRBat5CddHAghLNiJdcdGKAUc5XGij30QnDF7a50+ehJ0mXH+xBIMCtmLVbrU82SdxwmvTkMvU+HteNPQB4A26XC9HKgzRfhwnNvgb2BJZ900Vih8ceiGg5dFfRxPQPfQD3YzrVPmqS+t2hICR/TvCcWi4RubOmibLHL3X1yLBxVOOzCc1rYDSdHTCidDuZepVir++iaCr2XeiA2VniFG74PzWJQqwyiOFG5Mr3B3ttI2FkjIqUK6JD2jSMz4uj9BCxEGvrby/Xj2vnft9gT59+qL2+Eq/uYCwa1/VZoN7yA5XXnb2WGOgnp7F7d6HIhwIfPVbn5c3Ka/uOSG5ilfSS8aysvAJTN3Ci4wzV8Gsx+BbISJRKNHTZuf8l444XM0ipATowfw3jk0TjePN+6UKUlpuB2xwfLWgK3LlAODTrXwkuX6iW6OuTX3K43k1Umqerq2ExL6ApSg7Ru2n07JbV/yPpPdrrsSpr6of+M0O+8CxJWZtMnLPAp5hAYn4KywFWUbZljQwct4tHEO3TExi/GUAFobXz0FXgDZHKP5z4sSKDabH0rVDPs8G8PkY+XOKDo6gHg0zoVAZrJQuE623i4mOfgq+YHyLu9HPx3NKAxEorxVyOLIBjWL7ZVwR1FtFMQ5ENcaLtRfpEHsz7Oawv40AQqUXiCQ6NEoFgzK8DD89w82D6MDSBUP0Pm/Z2/DZ+m9b8HNVn72XFHkeMWIMRlWQyXpYY2teQY04frL+2jMZ4K8aKxw2ge7mffiL5Uh4lPS3x/3xZLne5R2wR0On/ItitExb3kC97tQyYQHRE/FgRFIEvqpU2fJn/60JdJ40g9ThmJftJ5CwqG3PgajDDfyPRh2shDxm22Q4MOL8dxoCZsaE7gNlhgo3wIQE2yKOEW6YkvlmvyJyK//4McJUVJN+GMoXe46k/zTPI3rmSniMG+0ySKI9jQ4wwqgJJew5pTtis1ysSm+d+ozhfRaZkEHAIe1nGq2m8/NB7nNaZJVrJ4fYutqCjRCL5mhYxLNlfBpxtgub7+oH8GqlHaLTW1R+hG5rRgBrlx4Q33rVN45vFNXELWK42xY5apwQh23yjkfp9pJ3007BzcrIYPwT2KQUSs8OZ9Ruk+5LSS3ZymtHKc3ax4KH8hJIwzW2O4McaVS+e0P9+pwL3GqM3wzsq7+l86ASwd91HFoAcwZaXm4m4NuF6uV6Z5M6xo4njnQVLVSFKcb0ooQP2vX/dVMYyEjltrPNjx41etKq+xseSWktr61Xl02QQYRZMiag==","layer_level":3},{"id":"c4798f11-5696-4e8e-aea3-8910e2ce9fee","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"章节节点实现","description":"chapter-nodes","prompt":"为章节节点实现创建详细的技术文档。深入介绍per-chapter.node.ts的设计原理和实现细节,包括章节处理算法、批量生成机制、进度跟踪方式。详细解释章节节点的任务分配、并发控制、资源管理策略。说明章节节点与TTS服务的集成方式、音频生成流程、质量控制机制。提供章节节点的配置选项、性能调优方法和监控指标。包含章节生成的实际案例和扩展开发指导。","parent_id":"4195e43f-be71-4897-a6aa-4df85a7db7cb","order":2,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/nodes/per-chapter.node.ts","gmt_create":"2026-05-13T22:55:47.8627751+08:00","gmt_modified":"2026-05-14T00:53:56.8311736+08:00","raw_data":"WikiEncrypted:f1w+bdd5gUQocj4JS483kDV4c5qvrL6sATCk7D5XuA61ufvjgWCsi+S9g0PvoE9WaEywpBhIs65hTEb6yZuVL8JdinanNNQIa7upZC9N+2USUsHbQavDF+eAqoz0FPan3Nbh7gO0GXtYt6xCVSFImUovq20XNneSXj38nY0AddZNKYG6raUYxDhhnPgDRdm/VTljxmgrbW7uxocp46WXfil0F+I73QGhNZGJ92OZfeJl5BtDuOmx+wz7t5pPQ97THyfBePTgrRIqYMsSVtV67x863WBhX9pHPWyaj1ilSbjPUAY+33ugOkvQbglzjsh7C6yrnR0WflBJtpqvvCV7z3KD510YO9eCs/hs1mK9SGnXXbh2ReTkXNcqmMMEvgfYukfqw0LeqyqjLYmC+0kVIRq58RmmJIh8Okb8p3xybm4YBvhuDVbLgDQJzgCc4CWhIyCBwXaIE3w+UroUFW8kIb01AE2HHgIDsaep7M0yMS0ZeKyBj6PBA3SINa0Bk3PLAkiY0YZ/8iFjZsUGV/LsjyYJ+CtcDjwECKBZX1NElfD9RWuBjqJeo9arzDhRRgJgK/C0fpMYy0AqTZAX527iW9QGbYLyfJoQX5iUqtMbtpBJrby0SyMB1HTSNGEBbmVyAMoS0P/AMZLEFAbow7yRc2iz/65N+sdKwz03SBXejLgxXbvJkxJCzm+neKIiTTbPxhP0k/AImg4aO3hLnj8PMYa95en5CcGUxvvsE7FDRaIIlPyUWMO3qNNFfJkwFJclpV5NhEbdsgCpMi8wAUS5Tfv7QmefM8J8ukjwqKrGjg7OghOd2SdHrx2U6WmgvqLXUHVgasfIjpeVFbR6GvI6oULLvtybKHSREXruqOqT/qVGtBpb/QWS77G7jJt4BNGVURESh1TR9PFd7ru6DkXQ9YLmIro/+kRf/khWVrsa5s4DIH+z94Y/Po5XOENmGo6ZTXc7nVDHbJIzMlQ29B6F5ckkvidsv+SIhExaRCDhTg58mLuW4sG5HCszFdLYfBIjrcA+d/2lLx8QsAXgMkUh0A==","layer_level":3},{"id":"95386afc-fb02-4001-a488-3cf5ff4cf558","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"顺序执行策略","description":"sequential-strategy","prompt":"为顺序执行策略创建详细技术文档。深入介绍SequentialStrategy顺序执行策略的核心设计理念,包括步骤编排机制、依赖关系处理、执行流程控制。详细说明顺序执行的各个阶段划分、数据传递方式、状态管理机制。解释顺序策略与其他策略的区别和优势,包括适用场景分析、性能特点、资源利用效率。提供顺序策略的配置参数说明、调试方法、故障排查指南。包含实际应用场景和使用示例。","parent_id":"60a4d55f-2abd-472f-b698-a810d4529780","order":2,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/strategies/sequential.strategy.ts","gmt_create":"2026-05-13T22:55:48.1362715+08:00","gmt_modified":"2026-05-14T00:53:50.9681746+08:00","raw_data":"WikiEncrypted:+4JF+GGgQtKhjc9sef/yPyoiYmxV3i8k2GjDJls3HUxTuejrcNEVoo06s47fwzese7M4dmPbc+Y+PbaUMBTc+nUy4M/u11Yr+ysY/xmOX5e1JqcXoguAJ/s3fqBecLQlkzF2Ab25wmvIPzjet+ootvvTOWlHgyfNhR7OVU5ojU2La61uI4HbahUplm61aZpFzE9hPTOAEcScJAP0c6YLGcXsn/QBUIxOYRy0Wpdwol6LFwbMtkoVt5i6FKzgAD6xPCtmIX5LWbJGW81T+7/MAntCHyedv86H35rLxA1IqS4MStUpJfWAKLt128h7OpugIe+gyh1uqfaYszw5HdE8Byp2riCabx9lpUQ2PiGhQatnvBAZfwbtGloA6CbKnHcyBYW5L8iwQ4pImb/+cID5hfXRmi9B3k6u5YWynXxQYI673m2kCgitT2vTFwC/qKvlnRgS37OZLA9hM/uQ7tkOZorguVouAUFD/Rjcr/zNWYKbhbZAR2/nCRpzo0GAV3HlDpJj4yMcMiQp0rBjkEWdS9WX8OPb/a7mLAetb0XTFDwHWEQaPm06v0Q7Nm1inmvYMPp+hBF+Vd6lkNk8g9llfSL0LjkvF3dnVb1uKeUzQcpYfUt6ItX4Y1luCagLzHw2fpe39EWnY959Y2YR5fjBThNQE5RlfsDCPyb/oAbFXmFJskyLHuXGA6rq2nB8OHXOGexzyNWCYNQ/1YK1deHcW+ihSqldlJZWa3ljCU9P+pr25qCLHLsEANC+OOh4s/vroYFfm7W9buOGJqEgBvrW/hndYBqd5hkijD9G4LzOToIY1KHoTUFQe44kqh4fA4dFNBhasnnOgr15vmflH2rbhLoz13eVUujwxu5SxwDhF+L8m61okoZ6cgetZnlEfb5UYiYs7iiY9QJ3nHqwlGYXKpOW3tDx572A03dCKbah2aeN6u4wsLxJcXHXCMWu2dtVft0yPJh8+RxxHmgZ6qSGPUctj4F4PVhhKe14efqjWFMYRbT8SLrTqy9HhvFTrXTlxz7RowTO05NaJ7HuZ8/5D3QMRPSg5DZdzTCuU7EipxXRUjritFpUUBDdjF37KT1SL2qyNVjcvR+Up6iSmfEP7fZy40sgfhxq1bxG6/hHWOfcitRdaJB6FBhaPBm/Ik25","layer_level":3},{"id":"f7f15381-11b5-4aa7-a63d-63dcc8b3a2a9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"策略管理器","description":"strategy-management","prompt":"为策略管理器创建详细的技术文档。深入解释策略模式在书籍生成中的应用,包括base策略基类的设计理念、各种具体策略的实现差异。详细介绍one-step-outline.strategy(一步大纲策略)、per-chapter.strategy(按章节策略)、sequential.strategy(顺序策略)的特点和适用场景。解释策略选择器selector的工作原理、策略切换机制、性能优化考虑。详细说明策略配置参数、执行条件判断、错误恢复策略。提供具体的代码示例展示如何实现自定义策略、如何配置策略优先级、如何监控策略执行效果。","parent_id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","order":2,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/strategies/base.ts,server/src/modules/book-generator/strategies/one-step-outline.strategy.ts,server/src/modules/book-generator/strategies/per-chapter.strategy.ts,server/src/modules/book-generator/strategies/sequential.strategy.ts,server/src/modules/book-generator/strategies/selector.ts,server/src/modules/book-generator/strategies/types.ts","gmt_create":"2026-05-13T22:56:05.8910289+08:00","gmt_modified":"2026-05-14T01:07:01.1709798+08:00","raw_data":"WikiEncrypted:vncIuVLs5gKBPQDvkV46pOW5msIWnCRHCkAZwvAvMcKaz8O41IVw1B4YY+u5BrvHsqlvKnvaPbRyasu5vvmutpKsi5z9S+rcLhvZ2Lh379oWMMoaazzzHsDPeA25FDTjWp6KMLldYQ+xdBwCyUXksMG0K3EomDV4RLCOc0J3VdGuuKiLg8/waHWd7SgWru0x04YoidJZInh5lt4HTuPSvxvEkhA1Fx33LyNv7C0kULqwDFDncFjLyRHVxxqCVFchpT/YkIg8tXKRlWriVfO+hOLASckEG9APm9bb71+qalh/Xh5+dxT2QFiIVXp/vTZFFCZbIkNRLuGOVddh1T7fLMtTQftIG8Ptk+hazz2r0abnAc1GSGxx/X8lliQ9DBI5NW7xsSggQnP8jmjZp67muQ0P92HXfS4uaZx0g2jg/F8eIHdWu+zc4AI6JADitLxFKOSJ4QHLeSQO4yzVC+fsl3GKXfIbl1SefI37WUAYVCYioHHbKpVw5rHfPGtWXp4H5eyAIlKwFSyPx3UjAcA/kNcdMmX5G7SGSyYeHrozcbDfIPEVTtN1Mc+gwyos8VqKCHuhvHiQUBy/PKokaEkZW7s79OeU1s9ZKl2Dy5kJIjLjpysKO1Me/J2+FkW+O1J++/DeUudMRS/ukBcVzL7DUErx2/2A1+/cnrlgNYD6zi8XN+PhSD13JRAWbmds+LhhpAeV4y++ECAouXmlM4JIRvXz1tzyKs3chPLRrJPWJfCbsrAavagvcPMLgHKLcdl6dGF4fXkzVANJ4eb2ox7S5Y98YHTPMvxaW0Gd4gtzxwmQj1LECXTt/LHjEvd6eePPLvWPSZJ+a5US/vXLaFRSC3fca4SMOCfMrMfvYPMo3zB/FnDruc45w6dLx2anXzzdA2Vo7+lc1Vcqvj2F2h0ki+OyKJ0q/bKyyzBqDIQhe/gdbWBXB7YVwXHNXvDc2InLjTa0W1t6r/AfK/1nXZwXUh3pANA8OiEEi7D9LTof+IKXr0SOZ0xDRW+Ol3ET2Eq7uVeKGyfndZpjNrLs6Rwb0w835pTwW88e7iF74iYel/E+a22aleB2/uPXjUttc5bGE4L3wcGxtjkJJ3lNmw1jyvPB9VmwvDqba8J/pqbH2XpytfhXtIsi6TfxMgIQAq8LOo3A7SxGogaOsAZKBYKVPmDHZav5ipxXac1Z64TlXgOsQGh8Z5Uztf1g3EpNuz1zWAvfjD0tNMyev05pyFTLC9UoJILmtrON59vh/UYg9NiNCLRzekZ8z+1H211nMfZh0Djz6HZWjEVqsqMziJ4P0616rBmKSxq7VA3tjW438SXNtDLmNBKmmH4TvB9Ceg0SpLt0Om+9biLIYDpPTsBHo94pTvgBNl1tXFNVSjXC53mIRxS9O3W2JR29GczNTY01OgoW9p23TkvmczM8zMcDZiVFkBz52IkO/KFFuLDUwyokJuGDirn98w0Z+a6SwaV8caE4nlDQgurhNyqwTAj2BsgpGiwACXx4RcK+7CUfxhngBakY+9OiRzyonYafxC7TqGWiz5t2Ayg6DDxXtWzcE6bQMtnDNbYmyLwkzjFgcpFru7zhyowGs4fz6I07MNHF4j2c5lmp2sNs3eRsHvhtpPUtNM9dpj+LfH0WBK8Me/jFfWRfo4+U+SR25iQREs8J+R5LtUbPzA1Nx0Fg1qmxybCZcGAvqg8BacCQeol3/WH7fQxVPE0S5a+VMy5LYr2F6olcUzASDTCsTtoUaavhcw==","layer_level":4},{"id":"6979dd87-a74d-48be-ad03-766791a90cad","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"安全防护中间件","description":"security-middleware","prompt":"为AI有声书生成平台的安全防护中间件创建详细文档。深入介绍HTTP安全头的配置和作用,包括CORS策略、Content Security Policy、XSS防护等安全措施。详细说明请求头验证机制,包括Origin检查、Referer验证、User-Agent过滤等功能。提供安全配置参数和最佳实践,包括白名单机制、黑名单策略、安全头定制等。包含实际的安全防护示例,展示如何配置跨域访问、如何防止CSRF攻击、如何限制请求大小和频率。解释安全中间件与认证中间件的配合使用,以及在不同环境下的安全策略调整。","parent_id":"b8a9084b-781b-4146-acc9-565f7e350662","order":2,"progress_status":"completed","dependent_files":"server/src/middleware/security.ts","gmt_create":"2026-05-13T22:56:17.5603846+08:00","gmt_modified":"2026-05-14T01:07:16.4359503+08:00","raw_data":"WikiEncrypted:JNhY5K+GVMrcGagKRy9Mk06qCe/z/UMAIG9fcitWHK5Jatp67UnQ6FA6i+HplQCqPBw9VtR23AXqxhjM12yUdCFk0xRMRV0ZyvRH/hiGymZGT7oVIk3gdbWkxvJaZtRCPPyzntv/2BwZ/ZH4zCyv8DNpGYkb5TBl1SeGbdNJGPfXWxT2oC+06gHNjwkWMoWWhx/W3F0+hex84iWinUVXg6Bq4ypS/tkNHpXVff0bk9uyyUYtZ4Y5Opkn/UMImwZNJvCR8nidZCxxiOea1eT99NmW3YbG0BRjsaJIzyWWnW8gPIs1bxKk35NKQHhiSFXEu6H3wyRRuB04AJzoIzja8fo9TbBfRlULsq3HEGwZeqvC5MfEXreB6T0nGSKXgndtn0ibfjgWAC1aNP1bb/m+6+GrECiLZ4eT/J1rOnvLlgPqGa5MbVma0mx/9JurprHCxjbfDPwE+WvRF4ireH5/hqlEB6xQHZCPcKY+hVa9QIyjjCdPPukkpCdbGTkmjNEbb/NbBM9iWciktyIzYVf60F18vnlMk7WB/bZmd9FSHOnb3jlH26EDemB7FV3qfLtxvEeyXLewqyGxf6Nqrt+pqE6hpy18epPhhKD/0cePuM+FGAi8eBJReLKeotmWQsWNv8K3Q1Iy/qRHVW/RVu5BaJF5t7BIpcyxgPwZxPzkGYFfSagiAd1VzatiL0r7VoV3pdNNGE5G/L0wbmLBclTlG8DNJdU6RP1MdhqRV46ILcJoZjMQJOhGM5FPkMhgT4NdoZtCoxDdDTry0FIPVFxc2KqBeDKiqCQbdpnrpphTHN8y8d39Uo5sIGy0qKHi74aSHL4DzrnmspY1Q1knNraof8h+AKj/X23GXjkMueAMlX9kMv8bdzNQll7AQOs1PqWzelXJGvgBcuwQZ7z46MZxal40OZh1wSpuWvd+uDCM/1qJNQYW4TBaynHjRi47vR5VcsWvdWsNa7rdD5zvtd7LI2Ln+6l0/rfJfbcD5E0wsybxG+lNB6QC66nvJ/RTShsGneAjl2pNJHKBp7G4XcsoFtGKvRKrZvaPdbJ14iN8djVExYSwlHFIKm0Treoj7n4692BvbtdmcijZINg/Dsf3+h9ZIyVsAt5sPW8b/8Vzp4HpdA7kFDxld4v+4kdW3sTccox08aEIsoEELW5OzCJS4SMPrDvh3iQPaueGPsPOyKpKIGuxMcGlJ5/wW+ZxIBgC","layer_level":4},{"id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"核心模块","description":"core-modules","prompt":"为AI有声书生成平台的核心模块创建综合文档。详细介绍各个业务模块的功能职责、实现原理和使用方式。包括用户认证模块(手机号登录、JWT令牌管理)、TTS语音合成模块(多音色提供商集成、参数调节)、音频处理模块(FFmpeg集成、格式转换)、播放器模块(音频播放控制、进度管理)、会员系统模块(订阅管理、支付处理)等核心功能模块。解释模块间的依赖关系和数据交互模式,提供模块扩展和自定义的指导原则。包含模块的配置选项、性能考虑和最佳实践建议。","order":3,"progress_status":"completed","dependent_files":"server/src/modules,my-uniapp-vue3/src/pages,server/src/services","gmt_create":"2026-05-13T22:52:24.7107928+08:00","gmt_modified":"2026-05-13T23:01:16.6976564+08:00","raw_data":"WikiEncrypted:bpQ1QlMq61uqjeQzqQaeFJ8lEiuSQp7TFZGpUgKRJgaf7PT+zt7MmzNkqVEU0hd1ivmcFoQ5NrDuJye6YrJgMr7cYwmvTPP9Hsxl8f9D5zBrGENC5fW8gmiunMVvMlG74eXDps091OG7DF/qlL1bBlBrTTH78ycKK63yMEBH1h0DVlRudM8tpjqW6Wv/HG91v/lEoeCm2yzgdDUBC6Ks/OYgoQ28T8iDM+w+/hciiVus7nUhxffSgL13t/6lhQc85Zjutgli3ZuYZng+QglCY0BSt8CSKW0YPo+EiiWRGEK8rmSrtkD0EPKBmIwjlKjD1fhmRdLrb+3ex954cRSgWUR1AqMhY+Yky0+j8KakkRwxja4+mHQf7ipDQjAriqF4S9SgpbU4j7+jcIwdK/f1rEQs4TWY82kYxT/y7LjUe5cyd/sGvBmHhvQ2LrtE72ejWbasSgkZjBRvxUKOTpdM2epCjZZBbbCyj7/QsA24DtugzBxC3uDPIEwDuvBtULhf0JFxMIb53jTszTXGUYu33rtSQ+L67WmzrrQF/FHK7aYNBj5lmbbBg+n59Wm0UsjEwKgJfXDItVNKKqEgEbbuYETEKVL/7xyhiB4peCCabhs1VT5LegIDt/f/6WfDymAjnQM9vmDMesAVSZLfG/3XJvOEegS4e9Z9ZSmBgsjnKtHorpKThUfdYO2CwoL1z/At63x8IYHBMLAC/oakEbsZuqGNuk5c0wNtu3TL90J7pPjM864Skt3jH+4/OOQfFAldUxeBfPNk6/eQoJEvavzF9ybzrv/PPyCENW9A5q+T9tOhEDiYXoSamkd+ZDoYRih8BtSF4kvsHAZHTY7k+wmGU3EkHu4hJ0L9lWdc0Z1vaqx+zTCIUQ31641YlKSqfjeOcTH0xZF+gkOJVb8zsWXqwxC+26OCsId6P+1svs8lf3aCOM7ZKGQtdNZdz3ZIixfla0MyEwKyMEHqM2IkA3ymNHweZhpLLihIgl/6h+0KRKLsZLZg0Pt//Yia+VQQ37rro9MJuNdgguLyuEB6G0YcwR1hzJEx9wdqhuAgxTmeSsf+yiWfXOEhVF6E/4OrMd3KA+/+Z2c1HVyD8swuOQtrsuai0Bqdi3+CP0LYxqGzlZ/mxadcDqEWEpZJk3SdKPmhpU/DUnHea3QoVLUgsLs1HKSfR4pGa7e2uFswlktjIzfiSRKD2kn5jMfZn5/UbFkEBs5FWcWl1cY7uRASA7Iw/MAUoh/LdGWsJHl3IofW3g16t9CLDz5Gju2Bqh4D3KNhvg8tSEykSW6FmGyJcxSqi1mwffeMlDbATBY+xZXPhLJcySpav1XfZ/pWl2wrWN5rlAIVAZ5YUTKYyP8+2EZAqT8noR0dCkWu9yR/ldGE1wHZlcqWUYw5Uyow9JPmDgGZ"},{"id":"42793a95-7040-457e-9757-e724e738a3d9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"项目结构说明","description":"project-structure","prompt":"为AI有声书生成平台创建详细的项目结构说明内容。深入解析项目的目录组织和文件布局,包括server后端项目的模块划分和代码组织方式。详细说明client前端项目的页面结构、状态管理和工具函数的组织。解释项目的分层架构设计,包括表现层、业务逻辑层、数据访问层的职责划分。阐述配置文件的组织方式和环境变量的管理策略。介绍项目的构建流程和部署架构,包括开发环境和生产环境的差异。说明项目的扩展性设计和模块化原则。","parent_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","order":3,"progress_status":"completed","dependent_files":"README.md,server/src/app.ts,my-uniapp-vue3/src/main.ts,server/prisma/schema.prisma","gmt_create":"2026-05-13T22:52:48.2188231+08:00","gmt_modified":"2026-05-13T23:30:51.5942035+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cnz+8KHaKkA/0g0nHA55sA3n4xEO+0BrHzKlvfLqjpmfzaNp9klVyzaGIOXBTmhtkQfTeg6xSHeeZGVBuO+qadV8ByGQfpeG0kdJeLWKIT42qsbMY6mHcAPbAXJzshDy2MeGPpG0l54gD44tscQpn1DHt8aQYW52JyOMUPODd/BnrR8corTQf0OO8D67/ZKM3PjJbOYsA/3hT0Purb9KzZxG932AGyCaUHfBoU7YF+4QZG/TjonXrlpd/5w4C0YFcsC3lVLq4Z0QnY+bwpR610kkFxNYms4meXYeBLvzbPXOAXOhT9yYMp1Pm8aokBBD7zj7h/t+fU3kdx3KJMPimxgXPHTlZj0PqFuhY7Syf6Hs9/QAK9AXf02troig8ZU8+of9avfAQ/Pz1R0CGhbyOUE/KohO7NVmDqJuR9lvcvUCtY+Fv0zxF3o823rez3/h8igxbG8NO3xqgsCHyPiTPej2r1+mkVk9CdbRPf7eW5WFti9xlrt8MylPu+0UyrvQFXWLHwTp1dvm+WHUE/dSA7z3cQdv7annuVaDKQ8cBn7Bl2kOMA5KNbCdiOKaVO/UBBDXmi30F3gNrV6t02lJMqaqtS2/j0+uIaURBtekDEaOPR/0TLY93x0/HoJWIvV+6cacl6i181Lkzuy50NP2yEbKcYZoUoYcvgz4p085Ure0wH/CWecVjhbm8g67gG5uFhuMkaI3XPSPm9FejZHrbUtiJWk83PJoPv+hSy5qRFjgNGrJlWxpxr6x3YAYhkGfDYKM88E4SxEKd/LvPhYolzY0JBsn7S58NK8we2/2seLot8nXVFkG4KE/Xxl+97OFHFSlmJXI9wYv6ddfGUM6Od9wSB5wo4dK/M+OZ/xYy9bB96clC7+V3AHgA9t/41nt8RfXCSuyLn9b8gtrI6iVmi7hf6Zf+dEsZuPW4WV0PlFhCC5bDwKYyFtD74l6lNVmIAG73mWPLOXeSDRfSDfPk1xiLkI9WQ630MyfJeRgbT0o7RyOrqNfaG6hDjbwnvhkqda7xxEwkm2b2jlOJuRCP0CuA+RlO1sFH6/z6XC+cA7X8tRzXdHVuomFXpmkS6p8SvHZVnfJDxnpn/CC2B71U/mfL4E8/drWw6J8aFcfDNtSNn9dhzwKCYEQO9omA6b0NhwzbITp1BUQatBNuCIoA7D3PR9BxJTe1FEnU+skSI4BsQGBVOdr2ENko2wtBoOrbz+dGE4bvnqMwfzhHgEwZU0zeyJcU1LjRMcovEVYo1NLWEOJkPauOSreXWbwmY3nn6Q==","layer_level":1},{"id":"30f8663c-e9e6-4140-acf3-f88986a4fd1d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据流设计","description":"data-flow","prompt":"为AI有声书生成平台创建数据流设计文档。详细描述系统中数据的完整流转过程,从用户输入到最终输出的每个环节。解释异步数据处理流程,包括任务队列的调度机制、LangGraph工作流的数据传递、TTS服务的音频生成流程。阐述数据在不同系统组件间的传输方式,包括HTTP请求的数据交换、WebSocket的实时数据推送、文件上传下载的数据传输。说明数据的持久化策略,包括数据库写入时机、缓存更新机制、文件存储位置。提供数据流图,展示关键业务场景下的数据流转路径,如书籍生成、音频合成、视频制作等。","parent_id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","order":3,"progress_status":"completed","dependent_files":"server/src/app.ts,server/src/services/queue.service.ts,server/src/modules/book-generator/book-queue.processor.ts","gmt_create":"2026-05-13T22:52:48.8837692+08:00","gmt_modified":"2026-05-13T23:31:37.8164806+08:00","raw_data":"WikiEncrypted:PGdHQOrMWxh6s6galmzx6/AH6koaRsRZ2mPCIcD6cZMtJrKupqkAZGnHMu3UD2SsxK2caDRE6y4vC/eYn8KLZCDbK0KH/aEPzEKY7NSd3SpppvXD+omyeGXNReFM7xVOTzhT7ZXZyGve9cSid9WpA1TJ0lH0/LgpLyMNoPeYI7ewOKTwv+6oLCbIIUpVCjHJlOruCTH6ay8qBs7eJ0Jl693rwCcAgtCuEdcJjnL96GG0KOcml5T1oVyLGQugGtx4njYbJSdNrLfXfPliQtYkqC0kC7YFfxilk+9sx5OFToKEFsTDykg9mokj5smERfyO5UhdGuJLC+fVPUWTJ/UTDx3bxEAKxEcSRioBucDyyjhPlBxBAyJcHhZFHbzc1sQ8hB6y/VNYV4+V8mbgXmUtV9v6wTJjonDTk2bVs8tshghMkBJFrBLj5JKOJj8NNl9kaZFI2BiLMlst8L+xEkDd1KCozy96HTKV/Y2+qsTbbtwGFCz40aCZuKr/yBJDHQ9iCyYOUfxyNZqMPRfoh8PnELGKDdt71HG1k0FcXJXvzq3z2UqhlgCg/j/w5tjAwe8+T+nT3w8DilNfxL8LW0juiZ3KagY6uskHL5+hG0brDDtXfCM6xTuSsvZ22HaBJV3VhxZl5huPz+t/CZvAMhJy79FBsXOA0BT22FtB6cRJE38xmA3xd6f85bZ+Agj/X4B0P9nB1Jmic2VbdvUrLC/RDB9CtHd7wJM5ZeH8hs/Hc36d3ZiKcg4Z0cvkmm89w6Oc/m2M02mOdjT0WD8esQvWUMNHgYoaAlErQiOpRNdaJWyVJevqgv4cjIVvb3sBPn8CSo+IkuZu0b+XB0pRC6Q7QPczmBS9n+w+ioIn4oDcMDoYy6sRri9mbqnkSntbEOF7PXf4UaBovd0oAKNGtlMZJeYVnque6iMa5jYs4/vb3ER8k2hDHT0ylD6Cxn5wVkYGAKWfirO6Xndv0Ms0vQylVi9kycPsCLW/2/Kxg3KLneR2gL1rpEmSI005Cj+sE2dY4mPAHC1i8sQm4GyGkykseaa81bsKhJ/rbKzvadzNMLEzUNQyI3SchbpZ9HssxzGhHFjGldO1eqnMGdr5awpENGRu1R1x7Mlnqe0EsHCihEimF8OeqNjiBA8clN7L8GbJj0g+/4OPxTVJsytI9ngRhWHQB5EL6+EPDzrhroTkRZwVrpACZyYguDBUD/Xk3Gvf54jnkqaTOpVn+jVJpN8nMi1faf7K6IXwxKz4xpZrV4st16j60JI8HmAglMgSCvJM2544MddgJLi8Vykh49wX4ciwMNdjB+9prlhiFahQnLRt7l8ltCnN2SLjhwhMauZZP9+lZzRe0W6ciLnFwzoNfnOK5fMwavHrRB734Hea77sBjs6TncXE1ItrnWzH1SZuu3qepwCWfUW4FTmzog/a8A==","layer_level":1},{"id":"fd4d5a14-c8f5-44b3-951a-f5e7efdace6d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"视频生成系统","description":"video-generation","prompt":"为视频生成系统创建综合性技术文档。详细介绍FFmpeg集成实现、音频转视频流程、Ken Burns效果应用。深入解释视频编码参数配置、字幕生成与渲染、分辨率适配策略。包含视频拼接算法、时长控制机制、质量优化方案。提供完整的API接口文档、配置参数说明、性能基准测试。解释批量处理架构、资源管理策略、错误恢复机制。包含视频格式支持列表、硬件加速配置、监控指标收集和故障诊断指南。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":3,"progress_status":"completed","dependent_files":"server/src/modules/video-generator/video-generator.controller.ts,server/src/modules/video-generator/video-generator.service.ts,server/src/modules/video-generator/video-generator.ffmpeg.ts,server/src/modules/video-generator/video-generator.types.ts","gmt_create":"2026-05-13T22:52:57.3011821+08:00","gmt_modified":"2026-05-13T23:35:04.8065515+08:00","raw_data":"WikiEncrypted:/pvGPLaEVo9VWauq2W2LegZVcadRCObOO39VjbkJtrhEdxFWnQ7oDh6UpR11RNQwHJJMKzRuC0VXXLhxyGo5rKF8wBxO4Z0PqYvWnRIJ/eer+QlnpbR6ulpfU+HIwYEFYLBQMeZ/BLgDQVnPei88UGmgIaET2qKQixu6O6cwGx/4CWHqvYmg+ebRPfO0QeOpyKZbwVQAhg7Snx79IZlYfwMY9P/+S9fQf+VCynJH2iulGNgrKLL5fZUzC9BMP87RkgOKHZkBMHnDaz7XTBSt3Myn84pobwIDGLXDjQ+Y66kkNgKgIAa5m3Y4GqNpwpYym4ckfbmi7gO41RZ1EQbac51K7cSd62BK2PshXBC9lLhkq3vAc971MHibR+XLwxSfLJGVp5pLoR2s/g+Kiq/L9bycI96eI8wLSneZLsrzN+u9Ab0iBHUNmnkvjeoCUGglDj3HPnQxvBd9ez9bWhwFT+z9wjDbvPjsc04HNplNHlEfxK1ZmghWlRcaYqQfxYKbN6DRlNBsdIp9O6teGmWeFPAVrPG8urkjGTnV6lDPG7E1Vjkx/8tQWrXjvL49xGrE42aP1z2jor2CDWFBEyCOy8pjpu0pW2fu5lTaHSs0WAii+hb9yGU+c+yIY6gjowzdfTaKk/vBBerQ9YEZe4VTdvrCyFsmfUf2zIPQJooz/Jbc0SXD+MYzgF0Q8qWpGoLxGG45nYQ/rFPmwq7rXzu03f2ItV4arw0Ktvk2TSJRVukmQJsS5AypQRbBwpue69qLymBfGlIrW0DAf/MaGkelOp897WjgutqlDEfUsAR9sw1XyfZZ/66jD46sP5P/UqXEOHZMA3Pm0ilQFF19E9XEBoK4BjjJdlJ1eIxhCAIbRYKoHfc1owPPYLd2cV4RhXo7gd/0K+0JkRRV3iKwYkv+JeGOHH2HQwOrXr+Gy9tplHK8ulz4+oaMqoxifWwZOU8YawK+6nTtFGbLw5Tc0Wc+gRDXWRwsRSZbgDiyvj/14shUmRrp2r5rS7FUv4OqktQKaWJwvFyNBhiepIpJbMAgimVFHfkEl2ApfJLNNoij7sEet9+KQpP/6koZgthcbU3PHiPKxwK74egaErG2VxvxrGTYMULyjUjXQDL/bQGVgq8jf8Fkf99CNchQnH8G8EcY+UWOP/8ctgqwI38mIJHlOOV6y5axq1sQDKFoeswAqkdXt8uyXRsSR/YLsr5rNQkEbRkIQJw8fB6P4Ok46pmkMHlcrL+IXqtNrMOw4BS0MGA5/Ku4qNOWVUlPVGX4t4qaqzlRDx3VQQ059WiojBeavIC8OHVVKlFSqOw8oCLdzg94mTx1v3zyOMTkk+TsUgk0hamEQS63rXm398ibqh6TKjm7x4oCNTGN8wGsACI27xNW23GmM5Y2x4IP99iC9QkseWvXmieS+lExqRGJOhYhiLrDQjTJ92ObikzjCsJX14lwjcXmZ7CVx3vygVH5mFFI","layer_level":1},{"id":"4fe37a48-bce7-4153-ac03-4fb140250232","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"会员服务API","description":"membership-api","prompt":"为会员服务模块创建完整的API文档。包括获取会员权益接口(GET /api/member/benefits)、获取会员状态接口(GET /api/member/status)、创建订单接口(POST /api/member/order)和支付订单接口(POST /api/member/pay/mock)。详细说明会员等级定义、权益差异和升级条件。提供订单创建流程、支付状态管理和退款处理机制。包含订阅周期管理、自动续费和优惠券使用。说明与第三方支付平台的集成方式和安全措施。","parent_id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","order":3,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts,server/src/modules/payment/payment.controller.ts,docs/API.md","gmt_create":"2026-05-13T22:53:05.7037664+08:00","gmt_modified":"2026-05-13T23:33:33.8393135+08:00","raw_data":"WikiEncrypted:/s0yr26njErM/WOXeDckflDj1pkDNpSKmLtdYteTph1qa3jbH/pqhcHBU6wkfWBdPaL/VBg1qFe2aQ+ygB+cItZep5WVAQMmLcg2WUIYY1Ikj4zUDkSeWPT+snU6nT4qAegmYqKKauB7IqQDA7bunzNT+T0FaOE6e1HpqMTBRc2+L/DNlkKvfpnng5lOI4KRPEyoYQ3SO+Yd5Ql+BKpzLEYQ4ZqhkYJxxIsyP0BwfdqKiJWedZuDVvV7WbeAEkR//cmw6XZjz4csk0Tp5kKiKUxAi5afB9lMIH7h8zBoR37u29QRjBjh91w5UohOa3OAVeEMzTOG7ATcSz3dL3c4HDqhtQy0T84mqGjEjqStpV/p0zN8DkrUyVMHShfmIVB3rx1VYIVfGIYgqIW//G04nR9Vqy1Ld1OA2fNNW9md3Tt5SbHHsXV8Xd5xNpwfozZ5+8U6O1WPRGvo2IRZxo8WnHLQSrHgYizSzAWPbJidAVh3FyrRpyXjRolWw5xO5wNfXFt+keEvZrEHqgLS7vavmM6KFBWKyb+oQ25X8Ham8oFysiJPeJQ58yyUC55jiJywLkVzt+soNvzTZQND6N3aYrMaT3qTWXWqXNwiXKNYSn/PAkSIGITHRGq7HqQR93C5S959QFd9enkTa/lQaaaepTEumDzI2STXoMCI6y1tua5a96TvJZRwdhmRB75gZrRX3wmNoFwA5yH4Y3g7umGtyJmWg9tTTKAGC+OytWEHQCv9gI043X4t7FstKktV1VkHDud8WZCN2bWKVzkXnmZSSmpGTkuBBwbaNGXwytJHO+gxvrX5g/nKCfBlFRej4HDwsXt87b7refUOtUpxwyKW5W1dpxaiwPjE3CTfq3yiT8NBN/LG5ij7MYe08HOZu5CBwt+JEdjd6cQmMg1vOLyEpKhLBcpFTV3copLuRCxznVc278JlQgD40Ne/IG6t02T+fEnYYLUFINsNr+PVzTjEug3wkIx7znHNSbuXBzBTBRsLMc+RDw83Ryc+x9GkvvUNfqj7sC3FqYUmLMUMR/Ro4/5l5X8/Fu20juCYNy/93FO6YVjSrrN53lD7C+UzcLkU3tM4fEzbxW/oBUsimLYu8XCFF3oMb8JtPcSRWHQFjn0/9w3pxoahrqc+T/n5E6kt0kU4Hx1+WmOnapuFawi+yrZ4gesBupo4WnP6zC2WTsXnIQ+VNnUAdyZ58ZZoHyj6XAhw0xFYvx2Dstc7L3aJrbXcUqOR4KfNyp324PlZB8Ctod6h3K4mi3y6N3jaHFBV86U9oXyya7Zi4qQYBTJf+18QplKxgZ1Zg3XjUEwfOdQD7XVh30GnrMEYj7zpUsKWl4siwdZl5KZtQN0CLsu3bIT5oQeBOBjg4/SqrImyewYgOsb4x5OHV/hKLuk6KxEs","layer_level":1},{"id":"83d0b783-d35d-4a8a-a303-9cc9b9c2d4ca","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"媒体数据模型","description":"media-data-model","prompt":"为AI有声书生成平台创建媒体数据模型详细文档。深入解释AudioRecord模型和VideoProject模型的设计,包括音频文件元数据、视频项目配置、媒体文件URL等字段的用途。详细说明TTS生成记录、音频时长、文件大小、音色参数等媒体相关信息的存储方式。解释视频生成项目的状态管理,包括草稿、处理中、已完成等不同阶段的处理流程。提供媒体文件上传、下载、转换等操作的实现示例,以及媒体文件的缓存和分发策略。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","order":3,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:53:10.2734576+08:00","gmt_modified":"2026-05-13T23:33:55.7862407+08:00","raw_data":"WikiEncrypted:YfQK7cGsmLf+7Mh75xR10vAbNo3Zzwm/8NitIjtHIw5H6frqDyQLAbMHgKuASXEPTojj3BgBPK8qVeOntybQiP6c5Uk63cW/HAlPNInarLecuhCstoKdzQ9Pq5VXqQqu3bDDkfcMmdn0vUwYzQ4zoW9huP4ynyR7ijzJR60Aq3ToWsS2YMLrmSBUqO/kUV/m9lpVAX4Pjc2yn99ynMg6Y89tvfF3WiR/TPYQg3ydJU0gDD/BYbUBqSnpExJCr0LQbwDktTo4rDbhwf+2idsAy3xm9hSkvkq8qP2hv1mdieFC4vLbUMoq0vIK0SNnYfHPFYpOTwb7hHuSxsPGBXFwq/zp680NqDRJZVmNtxAU6+ile9qnhTVaTRe+YiJdKarvCyXwj1BWSx3J77prh4uYfE8h4hNc9LgtmtimTGBiHYHRbhU77rGf/yWgehzFl471b++4U8viFOluxZLNa6SwdprS5vO6x019BS5IhGOoPXRHGlqYHaNJrrox1JRqH6L5pidMIoPRP/FP5/4kQrUggg6p1SYf+0m8cSc0ZBjtig0nJ0z942MwnKBFxwF8RtL/bBc4tVh3tKlw/ZFPiO34t9sLA0u+K1Dqf98gCDcsNoCTA4gaMDnR6LWW7ry30YllVP8i9niUEnomrDZrzAlT4wOaeMYHuIXbKb6pekHvXsdYO1L71C37E0A6Hj1TGXrUi+Dre2a6Z2TGqwN1aqaftkFtjmG0TfNvF4mttlriumhYOcuYw9JlOwXCPzf5b1OVFi/JE251Ru+0YcEXzUT3BiG4oX94WQVY2vIA3tkW7wVe0CIXVysEyTxzax2TINnMU2/8NTbBAqaI1eC454aDsXfu5eE3g/5k77Kh8cwtGvskxlmjezuOP28/qMLh0C6U7HrHqO4zIInv/KjSPqasN1hBVuBCSou7bgdrFjtcW8+zv6JOwy7Nh5d0ArSKgqt4dJS3jmWgdRO4fkGY4S1eMvAQ0yz5KbdEt7x+tfRBtZB5n67gbOvbbzNV9DxwcWd0V8buSP5Q7bvbr2jrdtUcLUlTb8Y5LoxbgDWqI1pEzPboNoirMxkk0IUGW1GOEKFTeprbxgdqeq1QXj2tuRz0cSGjAUsO/EEE07Bh3Nu3V5udN+MM8NvUNl42EvRdV/s9x0muNiuDZkVFp/2+YPWLhEOYY0UiCThIr+HoUUjzzlg=","layer_level":1},{"id":"638703da-12a6-41ba-b546-fa02c98d53c6","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"状态管理","description":"state-management","prompt":"为AI有声书生成平台的状态管理系统创建详细文档。深入解析Pinia状态管理库的使用,包括store设计模式、状态定义和action实现。详细说明音频播放状态管理、用户信息管理和全局状态同步机制。解释状态持久化策略、状态同步方案和跨页面状态共享。提供状态管理最佳实践、性能优化技巧和调试方法。包含状态树设计原则、模块化管理策略和类型安全保证。","parent_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","order":3,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/store/audio.ts,my-uniapp-vue3/src/store/user.ts","gmt_create":"2026-05-13T22:53:14.6216634+08:00","gmt_modified":"2026-05-13T23:36:29.2298577+08:00","raw_data":"WikiEncrypted:29DQGcj0Xkj5ar8OataJBBxhchc25ft/oSjDSUQ9oFMuTtSh8oXnlbImzVMruuEkrfNOa4VI6r5QPuUjp3qOoz74mTJM2FS6TBLwUkS7jHeDS1jm3CvQ0N81O4KNpDSSZSx7FMcuvWYqa71uoGZT1A9P+LLaOIVaTVTHn6lFMlAE45uqcS23c7hHtetv3kMOmsUTQUT/5w1mLAR0yRUtO5K5okAdB8IC0rfcJccDvYauGy5DQtEoJH/GBS//uO35uoJMShutYSqtaUgzhi05gdRWAEWlSLoX2NtEWezkkMjGS4sEMz4X318QNaLq0hLL3ZdPO5pW7+6OtUTvT584xEtkPSWOfyZ7xzbNnx4tz5ErOVf+w4Ee4eIxMQnBORS7uRQNY5TDvzoSi30MjaIdbQv6LOJDK1pGdOMtv2/5/v2iUEHsxXIMMv4tTv16CgT6o1Co+sKpC4tQdWWPevGIzxlqmlV9dIUgZ5kCIQHeG2Zcv1khEy7/gPGFP6h/9HjT/pFSd1bm9RfTLoyw0fZkCIrURsjiH9I/O1y4UCWBibcYBOUp9yMnuXONIgYKUJKLCfIJf2iEh5ZNvcP/VRrYAH0llQvRlio0taDZQgLsvhHOZKbE4odX3+E7xm7rkmOwdeE/uFYbspCPb2U0jdJkfLXyji0YOShiXk/QKMgP2dvH/H+aMvh7cP+HQoxWaTmMHotb8N44rU4o/U9d0VX6Kr3aMQVbJRd+SanHPqAqHLOmtc0bzamtMPQC898zCRH0oGI2jgp+3TaYM0LWCNjJABeBKUudaLheHPTKXt8THbbGniQwtwXYvbDhYXN8PuGMj+qQ+cqkBtZbSm34ETIopMkTuxvTHxqOW+C47FT+HRUrON9fMrUk1FjX92vDbh4NGU2oA+rbUic4b9J5lHFqdebxzzM0Zr0rQs0OuH/YPSwL7wVgi8PKF8sWrG892JTeSm/eH8vz+rhEMi+2cDt64gywKkT+F/a41GH2SDGsx7nqsG3/LioWY2ao8G9gEaJ+XYVmZbeDZhRv99PqMpzJSFeVY3lqvVxCwNUnc3S2NCGf+tamqFUbl4biZrGPGLmKmWmMpIjGvmNTJcULDZioog==","layer_level":1},{"id":"b27a5135-2645-464a-b994-73765c6bb94b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"监控告警","description":"monitoring-alerting","prompt":"为AI有声书生成平台创建监控告警文档。详细说明系统监控指标定义、性能监控配置和业务监控设置。包括Sentry错误监控集成、日志收集分析和APM性能监控。解释告警规则配置、通知渠道设置和告警升级策略。提供关键指标仪表板设计、自定义监控图表和趋势分析。包含系统健康检查、容量规划和性能瓶颈识别方法。提供监控数据可视化、报表生成和运维决策支持。","parent_id":"a7644116-2431-48f0-8cb7-2bac60b02c86","order":3,"progress_status":"completed","dependent_files":"server/src/services/sentry.service.ts,server/src/middleware/performance.ts,server/src/services/logger.service.ts","gmt_create":"2026-05-13T22:53:21.6330328+08:00","gmt_modified":"2026-05-13T23:35:55.4488639+08:00","raw_data":"WikiEncrypted:HL3VqGjXq8A3aGeLxAjVPoyDIjn9turWnP2eTLJ4ScMEhP18qfodgjBSBU8sRsljzgRioLoM4s58IvBDYuOlLAmWzc0F/6gnpjawfFIQ8z4yRByI5xVM8Fqx1oah4AONLejomXVNTi6uIfjaAwP5Ls2wPShr/2/jQ3bJ5GUiwtkY/3Ns2vfhtoZ/Wgs8t5v6UKxmxPQVs5ZGgTp8xe1dN9xQ62Lp1jmxSKrGQoy2627p0zC9ZvK2J1dz0sZZaAirXKaK6U7Im0oYdM1BKlHRVJUwxc1FhbnGptn1r/chY2Ccmp1Gu7135+KfnmLwNu0iGHZwMErTDokzx2BAeHmhUJ3Azw/yhWAVnN8DuYc0mD3F5I5L2bCivQS1o9vN4Q3PXug6j1cuVnApkRqwGv84bz3RCSjFHI1jFM9bAWk86RIQxaEE1SHdmeH5IWYXv4ynfoE7J/8N1tVmxECgJdy7PZv3L1iZdvDo0KYURXasHrcR4K63B3rwwTycOXnFScQu4LeGIB1YsJBYWIY9IDrBpbSFSwBQyez32jtRWTU+Kvx3SV0GeTDZt44Jj6ssbRuNc/7CyM1ayuWzmxt57HxkhijJ3RnQ4r+3yyEzyqad4EkHFCRtzwXohl84HKESH8+JgLoZkjtAGXAchXIjq2QO80YvWjU7K64kXezy293yMC+95eBO7P8hFDbSAt6QDfAJvP6x1grh8iS2wEGbc3JyjZxfrrwoQnpfwhbM8SD25IHVB6uC8fXMMsu152qJJ6lFleOzB8Oez+F1BtfTh9KMf4t5OMXCzUoQxpFvuuxVspLH7BmbQfdoFr7AciyZ/K5qrsCK/ja2h0ShksD9uS4PoiO8c2+WA4f6a3J9v5N5ZLl7ozBvD1eiUxm8Jzg3FGXDuyaNEXzSfj70ht3DpAU+8UZb2oByBKXzUQlou9y8D9Jy88DLZ3syPe0qD7k7FJ7kpOPOH02Vlv2Tw0nj5wEabC6TwP4RhsD9kGsDvAAkmFoc0PEO0s7XSABdadaTUX+YQNGKRRScKSQSY7fessETOcWIhkYYZTLQCTNy+hRWk+SRfXB5ddwVnvzHjZ9gK0hUqolC36+KtPJENZijhcSQHWoZIpIPKoovVHjLICqpbSlxJ0mu4vHY3DhMba20lfrkQnkOgvv7qcWnoCxaKuD33w==","layer_level":1},{"id":"7a9fc067-450a-4af7-8205-c294b5cbd83d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"配置管理","description":"configuration-management","prompt":"为AI有声书生成平台的配置管理体系创建综合文档。详细说明配置文件的组织结构和加载机制,包括环境变量处理、配置合并策略和默认值设置。深入解释各类配置的作用和影响范围,如数据库连接配置、AI服务配置、第三方API密钥、缓存配置等。阐述配置验证机制、类型检查和运行时配置更新策略。介绍Prisma ORM的配置管理、数据库迁移和种子数据处理。提供配置的最佳实践,包括敏感信息保护、环境隔离和配置热更新方案。包含具体的配置示例和部署时的配置管理策略。","parent_id":"0644fa6d-da66-411e-b766-c810e7e56553","order":3,"progress_status":"completed","dependent_files":"server/src/config/index.ts,server/src/config/models.json,server/src/config/models-validator.ts,server/prisma/schema.prisma,server/prisma/config.ts","gmt_create":"2026-05-13T22:53:25.8614416+08:00","gmt_modified":"2026-05-13T23:36:56.950144+08:00","raw_data":"WikiEncrypted:aC5ZtUyEKPSxjzg//aVllPgfgMGT84WysP5aU7jVGgMDPSKvWZp7xsAQzGtWF2TB4Rm8ZVH4zR7QDXSHsvp7Ga/SbPLeGWEQJ/9JEWKYxdpmjbPf0fFQQ2AEp3HDTKJdYHKYi3SSr+3z6fowhhsUt2qlcRqlE44QPlyYnopG389eSuHeBczXwAHVSWT615cgcQ7NQwKRNmXXMFl7C7s8Z0YehwNzu2snG01fm/Y0ZW2PgCyX2NLDOKcLCStx3Fe/vNE/rA8W8PZPW07ay+FupPf8dI7JqlLouxP9Kny9bPmgUlC/7zV2mFRLW1+TZVm+YUDSNNogWnxoo1xb2O7esVqdu2XQIiauYwQ0vmc71Ih6M3dkS8WMTYELOOBsoPqrmYI5qEndDKtmXfRtHPiKZ9F5lIFxMVKgLcPhfKwZm7Mo8Tasp5td5tpf0GiUmVWMzOx1cCc1wYLAmFwMC5gLVw8QkE0TwAGPHh+DytmDdswlP3QLIXz/dPQk1O0W/WfO7xbm+1TCV+qAKKSVpMxw3+v1Hb5A8/nZkljsTRrK0t8QF7sMjDU0r57HWqlbjKnLml2Uee86eGMiHQgpecopJdMcwVwlbm4ZIcMxzMC8zW2UGksjONOmDjmUmna1P4tqikztdpYXgJ+0wogE9jjo07kDYFiC+AeRd13OvCxh8x9lBCcl+Z5x9SPCN/6t7S6e9QZGioW98J3EDceBFh5utdZZZJW4Br6o5zhNTqp/gZozIWzVRF6vWudrfH2ccijOkVY5M6nicKvwvXo2JsUNvLA1y5vyZE7bvDrWiE1xN4Q16rTDOlx0v1/DdLsS7+lJQ7zkt5MEAxBQ9Z6psEY2uj7YIOiG2L8yHpAuyeoAXQzsHoi0p8diuIYhVZdWTIS+S5krsjzC+C7DK0vFXQwhMourERqZQSYsv9L/i0917H8HZ3pNYyIMbVbFtGMKfBRdqb8xhA35w2B6gyVqoXQMHofHZWRBvjm6jzzTxuqikEuxqRYP+t2W3eMCUaTa5IE1oQyCVCrrLEy2cLnrX/NpuesiVcVef5TCDO7mokSbQ9xmVbf6dqLit5od8LUFtnrMpjfVGIfJcPEOGVpIOUxoVqvTqFjYSTAUZHIote0wme1Sn6wjQvQL5OpdrF2pNJStkjlvEKN+Okp615uH4FnFN0ZBBTOiYxh+gkhIAxrUN8NsV7qUABnIef5c1b/KS+WRDpPsdhAhuUvMD7Na34930h/r7YPz3HDGhuEvr6AvkTv/OQm75bbXMcLBeey0oXt6ZfOkvYrNs+YyVRKnsUtkyYL2m+u4U5H0gbyxIi3ylWLXneh2cnq0n28l8bVF0WYFrKB59aFVaZbve4ejtISCIAhe5KPVIitRcsstVED26V6HMzi5tbrdqw4l9VJ1/bKx56ULr1uKw1csRKRWhMkdPTqzC4SZR9ftfKbTMTWVB9OzIQjtg8I1Zve1HlrQsUQGr99gAFP6bMww7OzVeTC7/e0ZWgKTLdCdMIfR++Gf22E=","layer_level":1},{"id":"20181a87-cede-42c4-922c-37170950b0cc","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"版本管理","description":"version-control","prompt":"为AI有声书生成平台创建版本管理文档。详细说明Git分支管理模型(主分支保护、功能分支策略、热修复分支)、版本号规范(语义化版本、版本发布规则)和合并策略(Pull Request流程、代码审查要求、冲突解决)。包括发布流程(版本打包、部署前检查、回滚机制)、持续集成/持续部署(CI/CD流水线、自动化测试、多环境部署)和发布日志管理。提供版本标签规范、变更日志生成和向后兼容性保证策略。","parent_id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","order":3,"progress_status":"completed","dependent_files":"开发计划-第二期.md,优化开发计划.md,AUTO_DEPLOY.md","gmt_create":"2026-05-13T22:53:29.7648714+08:00","gmt_modified":"2026-05-13T23:48:47.7072782+08:00","raw_data":"WikiEncrypted:qxrd7b85cOncM3z4VFX/6NzOEccruFL6UYmsOhLaj3l5hcloqnhH6Ak1IkBylu3RzvdNSe0acQ7axD7Wk4d6Ws1vqRqHJoIpX/uak2599G8shB4tLrTdHNbNskYpMJGL7awKJ0plMo6lSbfiiLP8TtVYDbwr0Ujq98j/6Y8KnrjxQg+I9fsPkFt6T937IAPchdOlgxuGEgvouFHdj7H16EIM6MXudF3lmMRSC0HoqmaQatbXlYO/HNVaYybSiixY5lrEj8FIvCiB6AyQfc6F75TZEWRhNJpvZgj+inuS4FLmJ29t3PXDSCkyTgn/hKkllsBA7EFDRFe/wuA/przVFn81Hj0s1O7TplXYwqBelgsBDOwhoZqUW4qlKZjkjHOsB2rCExQymrkxNdJSR1J/GGJM0dzoyss0Ea7P/bHOKxOfXHbpSXdo/XyFRf5pNtcDCxnzyzfqbHz5KBXBY54RT1H7yFZk7QbZgvvr5GOGlDagvs6iDyPHovV7IsZpmMYwbRgZQuuuimsCILjCU5syLSyJzqsl7icpiBpOcKFfe4VJdaER3B0YYCf4d4GdevLIRxyGYplr7ZgykA49ywLDXEBCYoQ18ppNKB1aKAysdhg43wd86pr2IRdk6XwH3udahUIRf0x3Z2F/x/gOdPtvpsc2AZd0xDqdADdtTlrKdXAiv0QEutyI5C7ho5RJ746pZeS+fRup5M+uPkAP68iVDjzNayV8Jcw9oUt+dZKCXlER05Y1MyiuwHDDHSphCybllSzdR350YblA73ttCUU+zAwmrlsaGBefV59oqhtOXCSYGmnKlcZfjF5a0kCR8tOOAFCVJ5/FD/Q3qvePRdx7tavz6nGXnQGmViWAhSnjxyb0y8MG4rOdGkmAQPnSO/WIyrJwnwcc96jSKBkqN4rXTadZ7BgSrNobn8Py960hx/zy3VzzK2+dA9kDiUM0P7QxPjLfUMc6nUj6QiceVLfBn43rGBdG16hsu9IdfKUx7smNhppn5od9pQoG4C5umhmdq7ltkmkT+JIDxwR0yaucmbJeEDCJCzfAECZm0Qa+QO6szk5O5O1McUhGjLPwuH2qrlZmcBcq7RZgyhqO4cgyCA0Tl8DU5v7pgh6dezw4i3E=","layer_level":1},{"id":"bbef6b94-bcd1-419f-8b1d-0da2e773748d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"性能监控与优化","description":"performance-monitoring","prompt":"为AI有声书生成平台创建性能监控与优化文档。详细介绍系统的性能监控指标、瓶颈识别方法和优化策略。包括API响应时间监控、数据库查询优化、内存使用分析、CPU占用率监控、并发处理能力评估等。提供性能测试方法、负载均衡配置、缓存策略优化和资源使用最佳实践。包含Sentry错误监控集成、日志分析工具使用和性能回归预警机制。","parent_id":"09950a00-d436-4c56-8d5b-5f418928f264","order":3,"progress_status":"completed","dependent_files":"server/src/middleware/performance.ts,server/src/services/logger.service.ts,server/src/services/sentry.service.ts","gmt_create":"2026-05-13T22:53:34.3240693+08:00","gmt_modified":"2026-05-13T23:38:51.3427973+08:00","raw_data":"WikiEncrypted:9uOBpMbLX4DyZqW4us3WmyTdUGNkWBWyp4dpmVa5qCPpNniReZZckDU1DLgF/fEwdoANx3zzWvcoFIK5mL3ruCiPK6CPrWdj72I9ZBJnN775RvThQjFEPCE5I/cylv0bNMNDwQ7S7zTeNtaBMieF7K9QsXyQnC/BpMT8A03X+ji1O8IYk+/sqcrsavKh+7l1FQNRSY3MYzHiqzqqtcgXXyeDdv/JA9kZoRrVbs8eLTDYDxGKV6Vb39a7sLyLAeH6hzabaAvWypDO0w5vc5r9VuOvsfoxcR6fC6iUUfdq7OWQncyaA5oV/f6fchz5OVwTVAsVoJlOeFxm/cPCZZLKQmU0yDEHEAlBKf4PkMMwEBWY+fn+SeLGdmk3/7paF/KQ04p6+wV3SDTpZoLwIYAKjZ0UZDCQovL81G50B89L0uhG58dIhAFIZzIScGzymhn0jC40fIez2j7OzdwX3wxPHMEdRYycBn3/uDD91NAUlg8gmzR0fzohr3ww+6XnCakOUnAEAjFhyakJtJtOsvlzF3EKy0CQdG/xKvR14U+vw6G40N+xLQoOAJovI3Wd2+i2oiXWV+UcCPKWX90K1Uyao5k9C1djehpCLlhn0zBabQSaHJSe9TBMGIjLJcr2hkQ7SIu1EqCZrezrliRiSl4E8iVGZS2RsgIBJbIIeFG7npxuuKgB1FIpsV+r9IYscEFRsxbJz9kQ0RVEVnCag9t0pJyxbMwtDkGG0+ien4PuMOMIxkG38VSL7hk70m7hh7vWX2ClakF9+KgzF1kRkMBhUs9UOnoTtQ9zlPBxR+VsPyMR+iy1pUOhTtnpwPN62KB99Qx2d6UBLiE46y8lvD8TsJEdnHFL/vyOFMLQ4cBAinDlUxprZBfyIdRZY3UgvzbCWOp8A+aPXfdZIddWjnLm8nH2pRaIn8u49P+tmPV1VtI526fgDh0Ktgrivzz/cgX66iwM3pcUb3rUIzVT0fd2rBLaG46i7CMBGAs4X9haReLnzslDS4ptQyFyuAykmOCy0xB0Di748yOTAJEzlc9g3dnWnUV+joCthhtDeIyScpehqS26UnlRSc2V1qHcVq4tg5r70/zYviVWh8nfcD3B3I59avEQ3bKFKd9DXHCtp44asHmFL3YrHOyYEqEcYdbFD5o607qgB5TR27jSL+jlAg3CldPV73exs+UndvdWQ79OZp1eJK0H9NRTKEUa/Mcpx51c9bkwOhJWRn1W99uWhmTbeP59q7gAHwiHBKnG4z0=","layer_level":1},{"id":"16b7b286-b875-42ef-9ece-f48e8803efa3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"通信模式","description":"communication-patterns","prompt":"为AI有声书生成平台的通信模式创建综合文档。详细介绍系统内部的通信机制设计,包括同步通信(RESTful API调用)、异步通信(消息队列处理)、实时通信(WebSocket双向通信)。说明中间件管道的设计模式,包括请求预处理、身份验证、权限检查、响应后处理。阐述事件驱动架构的实现,包括事件发布订阅、消息路由、错误重试机制。提供通信架构图,展示不同通信模式的应用场景和数据流向。包含通信安全策略、性能优化技术和故障恢复机制。","parent_id":"b3ceaffa-9f80-4cdb-a205-b0d69baceb09","order":3,"progress_status":"completed","dependent_files":"server/src/app.ts,server/src/services/queue.service.ts,server/src/services/websocket.service.ts,server/src/middleware","gmt_create":"2026-05-13T22:53:53.0832443+08:00","gmt_modified":"2026-05-14T00:30:12.2917213+08:00","raw_data":"WikiEncrypted:vT23I9UGPjRzbyJGAxGwD++FtPYZM7rmwAG1kz/eEtbn+4VCmFy2KuM75EaWpJZ3Wddz/5XVo5a6cg7Fmu2yWgeHgjffqA6Di1lHpubWHw06bsaeHS9D1MRHfG3+3fsGX0dQhPxzbuDp37QfjiqwKmTmeeMvsTOzLpQIFrJQd6hMznDe4RIGBIMtcwCvXEKdE4OLWrOTf4g8axIryn0zFCWa+Woa3JLp0cTSoCVmTxoGNj3eYjHPB/EMrfbUK3zxS2dOgi8tALexwNUS5x/9HmWAwEeFt2QVempTg7BMXjvCjXgPbJzT0WLhb6So2n+iw6FAY8KPjuuFUWCdhsTGj60YWN54dq3wYRPqgYxwesRHhdVlL7pIXZ7XJ0GuzlVd4gzhSq2ezsrO4A+xqnm2/tadYfIppTH0j++IIhn4qf/swVTMoHMsISsZ5uYyagmy1lum1b01spUP09nJlMuzUsX41XYT1xSYySxI6vfJFSAS8mHEyC6PC8A0KYO3WonXa2ijZKJvWF1R95uQEj++6te/4bG9Vyx7jhOyXx9Xt8TxJqZBD/VLqjTKdUoXO90vL3fnL9oyoHmuB4D/PmRzwYrZqpVicFse2wFTIf2Vbn72iU3w/Mt/pb2Jc/S9PkBbMZXkv63g6ANWGfySIXj3mGmFY8le0Sl74MtjZmn1UIbWQNtyBaXzJAb2OfWAMzcTdjJ4Nx4au4o9FublBPKWvbbMQ5YKKPtfWkwG569kK4/tS+1zN8T17GsHJcq3O+fw2/q6bsVxsHxnAeknA2lnukgcB1whzwg0AybSjeLavmaN+VUs6wb6dowMN3YqFCRxds31b6k1wCJrmcU4yHmHFuiww9++M5V8+a1A1CKaX2L2nJ4fVNSLdlY4J6AeHaaHVlgWr6gTCuX3hDzeG04VE94XyvRGGYNoB2fGUHTIspWN3cMLQy8InfW099Z2qcxaTGKJUM/6B5Rxk7N4vjvZnNghChmKti9x0GxSRlrOtCiiKaPFFoppjC0QzBiitrRMSb8IUa5O/rBgFWOqvXa6VKM5GLFmlJWMxRUaYvZVW0hl3Yy5xCJQa89s+TtoqRKZXRMdhfNKgw+GcETq5YICVVvoFj7eOUGIYRki7UJ6T1zw/c9LNeQI6P+fv1jMIGcOYCfLrksgF8D7JNmwdl/ZGv37NXlYOhFbNlMNAhE4B6V7QFsJ2T7y6lFmfjYvWgTs6ALqFhbOJ37mqo6Ea5bQ7F8FrwBIs6ydDbRWdB2nQ6bOuMyvRckhaziwso4Hfj5Bfj4WOLoCWrhbCaP0PLz24F81dI5Lhkz0tL95nGxjF4ACef3KUdAcVaMSBDnfawPh","layer_level":2},{"id":"57158259-de0c-4633-93b1-ce451a9ab085","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"中间件扩展","description":"middleware-extension","prompt":"为AI有声书生成平台创建中间件扩展文档。详细说明如何开发和扩展中间件组件,包括认证中间件、错误处理中间件、缓存中间件和安全中间件的开发方法。解释中间件的执行顺序、上下文传递和异常处理机制。提供自定义中间件的开发模板、配置管理和性能优化技巧。包含中间件链路设计、调试方法和监控指标。阐述中间件的测试策略和部署注意事项。","parent_id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","order":3,"progress_status":"completed","dependent_files":"server/src/middleware/auth.ts,server/src/middleware/errorHandler.ts,server/src/middleware/rate-limiter.ts,server/src/middleware/cache.ts","gmt_create":"2026-05-13T22:53:58.1389415+08:00","gmt_modified":"2026-05-13T23:39:03.5670761+08:00","raw_data":"WikiEncrypted:KoBWq/Q7Adld3nvKT6YAXpZLZGahUX4cXSgGOY/M4xcoas8AV3oUxdhP1iRaAHu7o6CEWbQ1dQoipUZzHZb0iYETD6uCFs+C1EzI3L+BSgbOU3VnQpYWIB6yOp8t1fuSmILDIsud32Q5W7JDe+AQc+CyGj8ugRjaDU2fSDMCztpECOPHTXfquADHI/RPVU/6YG5kT4qfjh+Y2lMZPRZ8uqX2slL0wBaClJBn7PE36zWoQ3IFu+E+tZKOzMFzkWRb97WpMNLBU8MozMrw1P+CMa7qrZJFYs/XZZhSXgbfw2qD681ulRwxAJDOWL0f7tqiGzpvpIbT+yLPqvzr+YLmtz1ueJwU0wgJ8zw8duwU/3kj8UH2U0KrOdpv//SLHQKPDdziPM24sxWqs8CkTEWXNYaffgTuL3i5FFgHdEjDcj7Q9KqShuB/ORzAhjkDO4NilroR7wMJ6C8pLR93Fx7ab/tnITItV0VBeBBKJvb1X79S5Hc9HEEsQZdy1ejRcSqkdfFsavRr0xHqM4l/XG5WiSVjl7obY8//XOx9TPRElEsHc9FrUgkutuSKEuF5d8JO9tMLU2NBWm/qtnjgykL87hIDHR76cjV6k6H/y7IrUWHaYXX00umH+hh6IQCOzSM0Dv5HyUCEeiMtD0bnUbfMAuxeVSDUzWDNnawiM3LGkKSY6Sw2YkUpi+6h7juHlGXycBLAxYV/bWQi7iC7sBx+hsw2/DCItXbFO3Jv4MspF3bABAEVSGePKYwxuQnaecKBazEAB1IHAahaws9dBhIMViDyuDvyLhL32Xm3I2sJJ6YyouWdT6DRrmuQynuVa0jVNWZLGTjA5hf++Ug5MuRBffuZ1gyJpDuvow0+8SMMctyq4gZdxnneWi2meCZmefHnQsLAS+AiUk11i32B0Jd9hmXoNvjVtv9UROM7fdHrYv5A38lauh3Uqj+WJhFnxbSnQGUXcb4UgeCJO9iydujURZUI4UmAc+GiOwim6hdT9sKAb8WkbhMAW/XkjI9A0g3/GJkp2coeci/gBsbxsVIRwxWcE5qkpD/35iWbKF0dXYTKEn9BjULu3lVxTDeP373l0PrZ3Dp9Co1MzpzweWXGoIcMU3ikk5NEnCunm0r6HBsVVZK/XKDUwL976e+IPJOql5Bgp6XKKnFRXqnQ/qDiOv4IRJWzEExg8CKJP/HuGMo=","layer_level":1},{"id":"a039ba68-0f9d-4f92-a4a4-d02242720fc0","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"会员订阅系统","description":"subscription-system","prompt":"为会员订阅系统创建全面的业务文档。详细解释会员体系的设计理念和分级策略,包括免费版、标准版、高级版等不同套餐的功能差异和定价策略。深入介绍订阅管理机制,包括购买流程、续费处理、退款政策和状态变更管理。阐述使用配额系统,包括音频生成分钟数限制、并发处理能力和存储空间分配。说明支付集成架构,包括支付宝、微信支付等第三方支付网关的接入和回调处理。介绍会员权益管理,包括功能解锁、优先级提升和专属音色等特权服务。提供订阅系统的API接口文档和集成指南。","parent_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","order":3,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts,server/src/modules/payment/payment.controller.ts","gmt_create":"2026-05-13T22:53:58.6161355+08:00","gmt_modified":"2026-05-14T00:31:04.2265391+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqExPSeV3eIrhTQ1UJP6/ybCt5Ecxs7cW4D1iPAoLRq9sl+2dE2O09FO2X/zX8Z/bsFiX9V6tFPC0ZXBnZvpaIPlhu7MExgVnpk3qSmH+Lzss1nIoijS8CBAANvc3j4o3EXDVLSB2adTPeFDzHkLpKKgotQ4ukfkyPQPbEmTpklQjn9H13tCKNekO0j+RzW1IUzlpf9yX1ROQb0hdWLjMh4QqPinh1oNQDfYTT6acG5HfUe2t4xFmGQvTXsCj23TkOBANMse17u+FI57XJKsFTDtKaXzHUU0cu9aCLLES0y0o8LWF9j55CzRParV2imWGjasiSo745XA9tCelwn3xSFV2Yni9fZIr0Pk8tfnNHGSL4dni48OueHT91C+YWBMDwwzaHxk0TgjJFEs+HsPICaHMHDLu19axAfkfT3j5yDmYQmAtcF5HuE6GaxXmFxIN6VZxAFGlat6SdY9Ss23lIw1lY5lxUCCjav63liZ3og+t/JSxBtBKjnC1xR5jWuUlLIfgc0tTaJg02NrxNep3NDW83ZUdltHmUYfuUohT8pCM9HCWjB3aktp5N0PpLS5wDCtY1KWYUA6F3HND7ufkzjr6x2SiOtlXT2SNOojr1fAEJ4VBP9vkO5db4tdqhYETAmSB46WIMj9AO1wV2F2J/FmZAdw6aN1g52LvXeBiDWvmKLK0rpKy2Vb2HmyEQr+ttSxKEuQdDGCjbHeYOqDNHXg6s18/zoBgsL/k494nc9MToxj6EjwgxwZth+mKWyiA9NN5zTGFecssd7uTeaEGVqy5MWIbOp/DogHGWyjuPSC8/wuar8fHgv14ulPOAn9d0zWLXKVWjMRQ6B9U4NRnhVsZ6i228LblxoC0vQwabpmL5jYbDWyWPG9zkFoC2HwmYDvF2iHSR/1e+rK7Z50wfNwB0srifoNDSga3WLaracsV8OO0OLV2HPqrPtt59DmZ6VmaPQHxL58+To3MEFolFg610ulsvGzcxaO1mxdhSsef8694tWaievAG9hfrdfMYTRULzMPalSo2QnKovFYE/f2j9z3NXd6Ao0gwneT16k7eknOkxjis0lXe2GevLX61P7nJjV2yz9U2zryqerNkvTdE1lx6bPWbqUyJ4BDKNMQ+IMSLXnhey3yKhvSNr7JeWWDvwZUrOzYx7jJ/T33SKhr2m1XdNAQSEumlkrhwodqcfKDJ8Dl+2DnNPD8ntyCGP0saD7uENuDQcfoEJX80wBdu2L55xCQ9yasleyGzSSl+maZkPAAs6fNVM3wykHsfWxnVT8EQK3dz9lAEy7JcNPvoYWL+nyacARQY3uOmS9ioDj6Fihn0xWEGBR///TOh7cLWpQ1qImPUFBHpqiPOcqmh8sIKnxhxOXQLhO1x69gxVnXV34Kq+nx310vyb2yVe/UcH1PPjp9Ty+LNgNODYkbBvrQWOMwEUPM0Eg8hGnUvV8ejYIKCxP3kvzyCiChNEG7q55e0Ac+457lW2i7kPaX/KoPXZWdbcKAjt8hH2uOdeb+/ugH2/pgw62bcU2Ky4w==","layer_level":2},{"id":"c6710b31-fa09-46c7-b791-a9da9ff203ca","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据库部署","description":"database-deployment","prompt":"为AI有声书生成平台创建数据库部署文档。详细说明MySQL数据库的安装配置和初始化过程,包括字符集设置、存储引擎选择、性能参数调优。解释Prisma ORM的数据库迁移机制,包括迁移文件的生成、执行、回滚策略。阐述数据库备份和恢复方案,包括定期备份策略、增量备份、灾难恢复流程。说明数据库监控和性能优化,包括慢查询分析、索引优化、连接池配置。提供数据库安全配置,包括用户权限管理、网络访问控制、数据加密传输等安全措施。","parent_id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","order":3,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/prisma/migrations/,server/prisma/migrate-genstage.ts","gmt_create":"2026-05-13T22:54:11.8257037+08:00","gmt_modified":"2026-05-14T00:31:32.0221195+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkPaQMqq/Pc2UfXfjxrDEBhs2WMBp5fVIvb42Co00/0H2kjpG/CahdWzP7zkcr28fH1u9kX6LXazC0GqnrHhTv4W8izEn9Qpjp2dCAozSo/Ao+kjrtsk3p4/mO3uxxPUobRyLrCLiX87eEfEF+7oHMZLqwwQKQFQyM4hp2KQ129w6Ldu4RMxZ+t3yfvBmbmRJbQCuCKGBQXCduRLhM8b+CQ4bDW7MneW7Nit36ZUR6EfoXADGa5N/ro7mPgV8phIPFxuSgF03Z6mPdYspTL/0SgXaJqQ1UBBWBR0B96zIPNID7+VUOtFyQHYtN4pYnuBjmW7gKOF+0d0f8FNFqpqPEc0WzitSW7K0Gg7rvlvPQE72Mz3dU5kGdEEHdDYdO0JCrLyUWwN7vPjwqwM+PjFCooO0VH0XS+qxvB5MwMMzO96Xv9eBHTOl+L4T3AALCBHDdxNYfc7qoLtjJYuiGyZ5nF2PRc5/PXg2L82QNAWws23NI0u0zvIY6CPxKYP/uPa8FtIw7Yrx9Olf6KRn6sZ5gsObJdauGa6c5BdLi+AlovILiUynrXom1MHCOXJT8j8ZFK+E9KkckQ90kLLDDyBixOxG+zBmHL1nP/AQEklxTdlz5cBlbn1BAww71FlqTQHdVxzTAJtU3wDBTXBg/dfwN5i4RPHI+KlQNUSIObT4nRNIDb32YbqXISev6VrvoOZVUbFbChUIO+FTvcjuhUSgic2I/28bPAqcKc7Y8c939ipW046zP75VVE4vVa7WwyeU+H8ff0GucOSml4B5cTI8hMK33eZju7yap6JHPUQ5BMtNhtt0mcu4d7usqjTwVIFV71/DfTh5PCMNz8f2SGf5WQ0W9m02ORKue7ul0drXSGeTro9mUUuciZbHFUmo8/Wj0aEKUuYTqC0eg6uOioMYj+ALpSniGQw4DlUe95gVYBPx2Ek9a9LX3KTFU26JVY88uIz+8mcC6tfK/Z51Z5jYzLQGNdOjPrKwMhH52fNuy5VoMXza+Y1Hg1tXj1KBUgmBzkaeDYRTAGdmX2HiiANN/PEh/qB4wsRdgzdiGGdtZt4OOh9Q0/cbJWm+FfTncFKzpRUkZPzG9UQbJ5r16Yxp2sTVGERzv0dQAk8tv/7k20+EoTdxd5Mlx1kOpEhC7zJQnOhYqwZwuw9pF9f2YNzDVbUav65c6Vudo4V6dxyP7Pmh8X7znrLLRECJkknDHd0kdA==","layer_level":2},{"id":"fdefc3d4-c7e5-4f37-bd9d-b5630a0b63c0","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"性能监控与优化","description":"tts-performance-monitoring","prompt":"为TTS性能监控与优化模块创建详细技术文档。深入介绍音频生成的性能瓶颈分析、并发处理策略、资源利用率监控。详细说明配额检查机制、使用限制中间件、音频分钟计算算法。解释队列系统的异步处理、任务调度策略、错误重试机制。包含性能基准测试结果、内存使用分析、CPU占用监控。提供优化建议、扩展性考虑和故障排除指南。解释监控指标收集、告警配置和运维最佳实践。","parent_id":"e95b9689-9c54-471c-8889-c927cfca7973","order":3,"progress_status":"completed","dependent_files":"server/src/modules/tts/tts.service.ts,server/src/middleware/usageLimit.ts,server/src/services/queue.service.ts","gmt_create":"2026-05-13T22:54:12.8421515+08:00","gmt_modified":"2026-05-14T00:31:49.3155075+08:00","raw_data":"WikiEncrypted:HJ/Zz5MJPti1cEa5QBkwPyPyNqgAtfmujwT2DHByl8Pv+iHtnOezghmgvz5PvaF7iTBefG7opkwpS1/Lv5/Rf0XTEiH+jHGmiSMtx1SForFIpmSvOTllvX8tS8UTv9Gg01Vu4p7y/2gRMTLlJpavhebSKMXDX3Opc4bsCQl9FShsO1wbpvtzYj1fjaG73khZLcoxn2noq9hDEB9RYuwMFmHSu7fRRZnunoUMrNRCJvvOjaf4stv7o3+jz8iOn/VPkOkkP/JIiTElbmqP6iLd6u10dJJWVVOwCLaFwBYNUXALjQDDLIxsrMNcMddql0xmseJ3eM+qUaE3jZw9louuOCNV9dmfRLXpx8LDHk8IOGyauU3JzLx+Hdw0Hvf7E8faPxKzD9xObiSfCCf6WjnqjUHcQeVHj0JTVNSZP3fPE1v++HnEmQsKRHbOIG/jn3H4RoJKnsSoTQXTCDogp8xee8x3yVdtyEdFi1OqarFjhq3f6MV6cUb1UEWqeFtsgZ5Af32oTJo8pHgMpMRnRCvpZcOv8Y2NOti80/L6Zo8ZKAMTVmZI9FWwy3mkXuADlm8RIJsAa6Z9Q3hlJDaIUTwIIge9iLcgM/wH6L8jQsToRrOgeMOjEZcSY7qn32twWnmvldC9/9duKQarf8SHiKQlgL7CPPs1x06eeD3ohWmj6kCtlNe5E2TYoKBV0N2R7scorHi8fxFldsqkJdHu/vi8KobJtzL3Tw3WJaV9ZSHq60hlw17EdDi7bhgBl82DamoqYLsZF/xFiGiqL5t46kBkUhTkHTjAhQLQVsZOUc4tbhN2yKGXjYEirLkNtU7iwawv9zKZB8jqhwyWbEttpzLTQV0w5pAoCgnj5znAIV3zb9PtNZO3/HkjPOAkDeKNRode0rsvO+NmpKJobifvuqTekcQ2zVoM5M/n3U26LjuJa/F8rqvEpmVneU9vh6MX4N/chQ4kV+ilnw6CO/bpN46w4ERdH+ZALAirGSWVJ14pay38jfqnXNgZab4CdAM9qesXhCiuUBlF8fNLuqnA5rMsg1Qj9S0ZqbB1pj5esZmHMWz6hCJCk/7PPbZn8+q8ajXMhNTmOUBL4Ofm/XTZBcfSFrsiT1CeCOBccza8Iitca747Nv9PxgtcM9lgg86w2XvAIYso4ituJSlLDG/ystR+bLu9L3pbVsbiY5ANzmqqI8c=","layer_level":2},{"id":"5606b9a1-b8c2-4001-a15f-5367ad708bca","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"提示词工程与模板","description":"prompt-engineering","prompt":"为提示词工程与模板系统创建专业的技术文档。详细介绍提示词设计原则、模板构建方法、上下文管理策略。深入解释builder.ts中的提示词构建逻辑、templates.ts中的模板系统实现。详细说明解析器(parser)的工作原理,包括outline.parser.ts、section.parser.ts、subsection.parser.ts的解析策略。提供提示词优化技巧、多轮对话管理、上下文压缩方法。包含实际的提示词示例、效果对比分析和最佳实践指导。","parent_id":"ed23c946-e41b-4585-8aa8-be7382625e28","order":3,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/prompts,server/src/modules/book-generator/parsers,server/src/modules/book-generator/book-generator.service.ts","gmt_create":"2026-05-13T22:54:15.2953297+08:00","gmt_modified":"2026-05-14T00:33:20.4702343+08:00","raw_data":"WikiEncrypted:N1u71tmr7wEQ5xElh+MsxEjNvdcQrDG0XV2qVlw5VRh54WRrUtBLhyt/OTL+Acr7m+blX2PZ5H2Aj//9ZFo+zjd0yW7wCNTZWwi025/HcYA2zSCEPy38xFdx1doqn4eeBn+Y7g1ptt3hbLlyimYiKI3ovMSg6SBPxUE2ut6gP3e4mYvxHt3QDfVUZZD3h/s0MpFFSNGHMjcSocp+TJVHz3KUKDmxIT1g6KVmsgY+cwoo41OofIwxVphnJ+roQ7EEkQVb6PKPBEmgFQIwW38Xmbd6/UycmdbuEuhomPZW+rZEu3RAo4j0PsV61zR9UYJ8wtSXeXxYsE8XY8QDEOs16O/XZITFY6ousYasidGUMW4fEv5bmIuinVEP8y+5Ro7IQSI1o4Yvk0gQvxw15XCgpYsXCtTI90UZdq6qlr2+KbbT5tw8BIERWd5SuS1XpGWWpCfuXhJiL2wD0ppqzU1uQDPO4arVYjG0wKgdaPZ8cB7kHeGn9FuHxIEXXzhXsBt2g0nQkuekudiDHzM0EVGa+CNfuUMJMESML/S17c6JyNuVo5XP0rauw9F8jiSoNJGlfXcMtQt+N+nlitK17wM5Z3sVs/Iqo3R+nNuxccReZMPvB8WfTejm0XnrkuNJNFP6ZH+IEOuvwT89dHAf0rRLiJ06BJWTdJvmHofp5o1veMdwMrqPVrQJo8dshNG2rvEmdywLjVfXvAZpv22TYC/8rrg2v/D0LLH0DWdklEkGntp52nxBD92uZpl7PqIQzNeAxNPPTdSF1Ah4w+R0unPcjl/KeW0d51UWVrNRTgiE9kpnm7gFMYZF+SfJGUB0ClxLAhNZ/7OwcaxnIgN1xT6lVBTJljs3+7p7z1IGufslOe8FeRfFgb4ODzbZq4KAsBUuxywB5hRHF2v9zp9YPQ/ttQ6+8gce2NruPKs4fHVH4xqu/fVbBatu+KIF1bdCjjCk5VEJSl53Wc+gIB5qQu07nfjRbOERVnBq02kHrnJwQPhZTetd82QlLEro/y41rVkc8kE4LqDBlHpXEwTO6w2JT1opLXtdou29QQEiw7gve7vsNwf6h8v6p63ol8bMSLK03LvW1qGETQXzNGUwiiJkFUiaWu4uZVjfN5TMQ3/cWpSiJ4EbMpj4eAALpIP0aOGHEZzti5sQSAgfEtQKA2PQDD/NkHf2Y94P7mNpxDuCa38aCFuiWUl5dDFFrOaIwy85wKIWvP8Bgu7JTbP/auQV2UnfyJCINiurx9j3kn7ZFlScleFNLG8HwCa1hHdZ4yDOJPkKJBL8UCUijUhyW6xkDNGFpy8SiH/MHTe3OiOSu32skQNjnBiaaumPUm0CWPGQJhz2R5m9jZa9DC9FO+5idQ==","layer_level":2},{"id":"bc210a3d-ba75-420a-96cb-9bf4dfac6fdb","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"财务结算","description":"financial-settlement","prompt":"为财务结算系统创建详细的业务文档。深入介绍收入统计、成本核算、利润分析、税务处理机制。详细解释结算周期设置、对账流程、银行转账、发票开具、财务报表生成。包含多渠道收入管理、汇率转换、跨境结算、合规要求。提供完整的财务API接口,包括收入查询、结算记录、对账差异处理。解释财务数据模型、会计科目设置、凭证生成、审计跟踪。包含风险控制措施、反洗钱合规、数据安全保护、备份恢复策略。","parent_id":"abca1a7b-42a3-4a19-ba37-6e30da86e151","order":3,"progress_status":"completed","dependent_files":"server/src/modules/payment/payment.service.ts,server/src/modules/subscription/subscription.service.ts,docs/支付集成指南.md","gmt_create":"2026-05-13T22:54:25.8684336+08:00","gmt_modified":"2026-05-14T00:34:02.7278626+08:00","raw_data":"WikiEncrypted:X7caazNYFEQMRUuXhLMDOfvb/j0YYJaLjGTKoEKca6riY+75Q2vN0cFh8ebCuQdIMbLbfV6uFa6aNmZXAIkYo9l/STIujLKDecWTMf39MMAax4Fvtch/bJLsmv5F9V7FwUHtSVb5AdWJuLVT98KYPu6V5nI0fmP9UOMobchReaKEkWtyZr8zkzqc7Hv/XUnzAdDxn0rNDnRngkDl8DSQ1zVopivgf7rgHNfp9ihgoHiaLxmPQ1mkR5jFuEkxhws5xU9Jo4IudH7pE67SbbhSxzp4DoZ1qqVTHPamOwSj2SgAu31FI7j1qQ8eTy0nXmGi7VMd+nhoQ587ACNFkCcfPOY4q1iJou5hIn7qb7h926T69O0VgrJpBcYeyYgiN+HUYFGrZdOW4IVZI3pUP9fKkT5XrwR6FJ6WoCictsgVh9GYitLEW7LgPVjYtEvsCjHHjR4YFr3STAGctDRyNbNMkEnGAVK2Dr7Z0qvCSIm1mw2AANYFvZ4kdhNzUjnn6HVUQhSiM+X45L0119wMFdHdBLisZrYs0UbHk2gpsCcn/We/nOd0mlhvIo4w5W9F6AGyxtAuv6Ajd6DOfD7lv+26W1zXfv2n43RlsxSVcxU4MZemZ1In0FDyA8wsiQwMK/zpxFttUz1bhI2Gl4N+v0Nw/aXCJ5k7WL/zu15CpCQ7xWbuP/rZlXNYmg9ssGU8HpX540mU43rcF9No88faXykqtQYFfdiQLRiQxIrF5dYVX+aluiBHhDGUxcWwj/fyVEM5J5FKinDmYZsQE3jSpkbXCAqc+IG0os9SoMtRAyTEl78en+qcE5jLqMmZjR0G1paUz5dqLtGef+9TFebqlfkkYo4RrT7zh/SYMu1rwsC0P4IzEZwH+ErhAlPVMyP4nt3l0eRbw5ruRx8o3YbWjvMMznqw9QVivT4bx9M3y9DSUbxYKgYVrdm9biJuWo3IaF1j1+AkKYac7if1ZpTh6OhwKWeYjhDotYO0PmKkFkgoJQadc6u/wLxSZmHbHgkrUPd9yEph+0Z/VOeOeDTVfOQTwyFhK7HImJHExYYDkFAoA0Dx4hZUTz2uX8WDxxbbkUqKKno+n9WXmVuLv8hfPZ2W/f0IDlgo9VO0JttuPLRa1Z9w8ROOqOJMLzaqlPykwC8aLMlwbl48LrzNXfdSIBbrshQe7oxXdVluc8g75j0qlbERhdVXDOvhQ0f1+DKl2LyIBnOFzYzHpIYZuwzJAIPB3fosisEc6PLJ4W9sjjZTuQDO0TeqrpcQWmBrQM6YmtLOrQSV+IrhH7SiD7ZlIxamXlUkwxH6zVaGLvUOwhebKdPrf9L4eWrOZJ4acaaE8IA8WMMr0PhABsCxGwhKruG2MYZzQHWSpTQ5S1cO0PeCLfY=","layer_level":2},{"id":"124125ab-4b61-42f0-984e-e3ce7c03de41","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"媒体格式支持","description":"media-format-support","prompt":"为媒体格式支持创建全面技术文档。详细介绍音频格式支持矩阵、编码标准、压缩算法。深入解释FFmpeg集成方案、编解码器配置、格式转换流程。包含音频质量评估标准、比特率选择策略、采样率适配机制。提供视频格式支持范围、帧率转换、分辨率适配技术。解释媒体文件元数据处理、标签信息提取、封面图片管理。包含格式兼容性测试、性能基准对比、质量损失评估。提供格式选择指南、最佳实践建议、故障诊断方法。","parent_id":"33e6266d-c33e-4eba-87d0-aec3373141a9","order":3,"progress_status":"completed","dependent_files":"server/src/modules/tts/audio-merger.ts,server/src/modules/video-generator/video-generator.ffmpeg.ts,server/src/modules/audio/audio.service.ts","gmt_create":"2026-05-13T22:54:27.9726999+08:00","gmt_modified":"2026-05-14T00:33:55.2551365+08:00","raw_data":"WikiEncrypted:YfQK7cGsmLf+7Mh75xR10mCuqTOfegCi9vkPU4J9WftZPc4Sc7KSsuRih0Zyv+OUl9KK/8Il1nqDKg4gvegwmz5a97J1bH4s2d1uumgCGSa4/Hq4MRNoS0aksJHfETDw6YeN9h7oEqEKK5zErmB0OsM9Contyey7cLK39OLPmxDtORjVfKzD8EdpTr9Ug/Ox+kgkvR2Zzev56+8/oJ6QUwOgxPIceXcDFZAtAp+0w6vdkaKJGr94ejMBqxp9zgxjmHst7dPGon3xJwrb/OywBJYpLtokXopfL0gGh1umXpjdJ8AwWyX8bEu3kxnSKVcmBnkDnLuBXIosYpkRrcSHridfoaZJRARQteoKnOZF5X50H16VYvwaUFlD1ZG4Lah9Epcsa6ltmfjFRpEcKNK6zOyUQYmlRQV7AmfUPFoa8yhs+XJ1FMRVNDqvMK2nodQrN5kV8UZS3/LnU1yvN2qRTcmiswm5RtqXM67VcLNG5G3Q6LQA6aKcx2BUGnqbrlYFWN7ClsyTgjWxA47nOODtygAhxxglQgTiU3trW9TIjqdasubH2oGmD2NUvhLOD0YFu5DLVndpcd9s3R2MHPGKfRO6XuCFitK7Y7lV1CSuR54VHx3g3wOrmsQ0dS6M2Ok+WC+XEQ5cSQvGny3fLTzqqsB4FXBhKy7ohGO4BW43+jyh3i2A8W/kPOQjL7isoRw+DQXLAQUO5rybEICAisYI22NzWk2tNjtpvM9YS55P1+ziFMp4tLZ1LadxPw8lpS23KfuTTKyrl3JbROjr5nmQbAuO1nFJmrs9znCZHdklGQgubcq6ZARbqM9G7V/sYO8E1IGvlWvlM9nq8e5cyi+Oa0+5aqfE2QvUowyOBcPwPspUYmx5GFZjgdgBX129ZeEkkzJQHRnbWr/68Sq0frRLDMI3Ln9B9usgMivHvmuqOx2ITEMrD34h+H75JBuEuSInJEBET8KEnovxha7yTMmxudBzcqFAotPezxmZIMQSFL68sk92wNvUg2X1OQDYK4UtKXjZuUXSF/uMPfWHSZExGcH1Js6P9PSx5duA8rOTsXsYZUVPCk5tyFeoU/uRNKdJ6bJpRiwikTd8hSZQ3XPreVsTHJzOyoeTMBWqF6wUk6OGDEbgA3taifUX6Kgp16b0Mxx//An4fYK4sjiaP5ubYptc57oMBKzzRSw2xqWz/DdLuK8Kp0G8vdZwkf7eEhqht9BNv7p2WpgwuMQ3BUcaIs1c+W87x0i6/6+dVH2fUHmnC9neKabtbaVqCG04IrKszbOUXshtuWjTMEGYCPfQPyj02VvpHGD9ohbQoDeTZk9DfMJ6mOGAVA1CTsaSQcrR","layer_level":2},{"id":"5e59f7b3-f3a8-487e-a52b-da168071fdc4","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"搜索功能","description":"search-functionality","prompt":"为搜索功能创建详细技术文档。深入介绍全文搜索实现、关键词匹配、搜索结果排序、相关性评分算法。详细说明搜索索引构建、搜索引擎集成、缓存策略优化。包含搜索历史记录、热门搜索词统计、搜索建议生成。解释多维度搜索过滤、地理位置筛选、时间范围限制。提供搜索API接口文档,包括搜索参数、过滤条件、分页机制、结果格式。包含搜索性能优化、查询语句优化、索引维护策略。解释搜索结果的个性化推荐、A/B测试、用户体验优化。包含搜索安全防护、恶意查询过滤、搜索统计分析。","parent_id":"96a4f32c-e94c-4d2b-b1a2-05d464dc2392","order":3,"progress_status":"completed","dependent_files":"server/src/modules/search/search.controller.ts,server/src/modules/search/search.service.ts","gmt_create":"2026-05-13T22:54:34.5057958+08:00","gmt_modified":"2026-05-14T00:34:44.0456015+08:00","raw_data":"WikiEncrypted:uPtIvUbMezH0ofnqqRSEtn3HDi2w7QDZLEu6Tww6vFsc6+lt5V7AUfmkegtLmXKI5StSzNP/G/0xjgnvQPmf2jz1xYPIKq8cG+m4UhzJ8lz+KhCjqJbrjSIfwhQHThTTLIa/yB3T6bnMXw7m9MLpm1gFBxlD4JK8Sz3tuU3KYBK66bUpbRWE+om3otDFOizg1Ip5n29oTEQKxrPIR8m5uei2LbMw24RcyyukjZId8uNRG1Bk2L7S95nvCSCJcR1Fhv/qhpLIaNTkRrOCOA3M8TXwUJF0eHfoMxnbzjgPFAglKnqsP5BWj8NEKgvVKeIL8QcKTD4mtQ/2/gwC4GUU+UwpJVyNw27NfKoV4GYs3/HDiD8peJppbsOOvFQY9a4DCdz3g6illsCxSCIfocjodXQ13Zh644aSYM8y87Q2kPujp/Qc61TKuwZTM3/Ww14p2pGFNIgyBSyKhOcPx8kPHS48oD6K5eurfR0Eiroa+52w+6lP3C9cbZ2G/xanyJ1SUNkiClIPFibl8IERB6eGj1xnKP+sdCZRJpn5v/PGhm/OJA3GkrVF0VvkTZuxq4EzVNYCJdEhkK/nrkRWqHk8tnqAMxoSWd9q3+PUFjxOWHt82/st+EN58rbWDPooVOEZLvZufMbidMCz/9UV/t7IuGa+fGPy0pq93pm9jDH8RAn2FaqyPjDT3piD7qeNg0/D5wQUkxMP1JjsOD4rLC9DR91BReQI3/kAk2qgzkrqqQSkJBoeF8KaTPcQT+CdoN3NGVDPu0R03M3XR2S0yVeMH6+wo9lMgo+qgavnkhitZYGlAfsEJbr0uDBD3WdjBCYTUo4zEFZgi2BdUd7vNRsYgZIhPNZfE8+yKI6Lms6BBUoON1btst1G8e0KnIRm2v/y4bj8E8d6tNC6qamHKpcsCUy2YAkXNOMBnzbTlB0uUeaQ59CzSCdMnyTQqufvZBrOzw3CUTdKPqB2tuSzItK+oDKhs+NS5XST2Ouv5FHO5zVnLwXzPYp0NFI8k/Hn88jTnKG6Hj+ZLHWPBQeIE5U/RqdlqV7Dr4Q+ba/wC/uF6vVKZosfqeJGsK51J3OZB+bNQC3PDMXvGCrE/3xP2TKX6TDKBeE9vaZNI7VZp5caestiJqNNClCVDDQ4vxxjcVqMCFN4AZ7YcZ2SPYVUjtqMJUj2BqM+hw+99gGmP3fn963vUG+Lh/Hb8IbClDNh4NJ++qPqgwHaMyVVT+C3VnzwCrRpmO0zbjkxBsd6UWCT6YVmN9JxmBqRhDPAXAI2D9GEV0puxYVqOOx/i/D5SrqAMTiHrdJpZ3ij4TTNkmy7IX5FFspA9qnytcmTga7eA0JPw2QVbQP258s8LSyuiaYxvHqMQgm37H7aifJ0j8uoqSxfxUwG3fEvLtztoP+PE3m2qdVRaepP8ZpJeDyMp+e2WseHvKPa0HazIAzpL3tieJu2LMKsCfSfPaC//dP6zJK9YoIgAAGtfv2ju7je72DJjw==","layer_level":2},{"id":"f0abbcd6-39da-4ad1-ac05-70b757768f38","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户关联关系","description":"user-relations","prompt":"为AI有声书生成平台创建用户关联关系模型详细文档。深入解释User模型与其他业务实体的关联关系,包括comments评论关系、drafts草稿关系、favorites收藏关系、orders订单关系、playRecords播放记录关系、playlists播放列表关系、signRecords签到记录关系、subscriptions订阅关系、tokenUsages令牌使用关系等。详细说明一对一、一对多、多对多关系的映射方式,解释外键约束和级联删除策略的设计考虑。提供关联数据查询的实现示例,包括获取用户所有收藏、查询用户播放历史、统计用户创作数量等常见场景的数据库查询和业务逻辑实现。","parent_id":"56a87613-98ab-47bb-a173-5228193aee92","order":3,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:54:43.6736142+08:00","gmt_modified":"2026-05-14T00:35:51.4461204+08:00","raw_data":"WikiEncrypted:Pe7ymNK0TAICzgtfhJtjWSjwp/kdnN0Ob1DkM5Z0zJ7Q61vS8rh9yZcRJ2GkyWDHQHJO04t66vC6VPZXJO/KeNETvEhuzMUd9IROWxyXUToanfn4jdf9aYEWMdqBd2/ebGmUrvYsCWazZp0CW3H6wfHAxcmcokmiZWjtxJB7xjU+l7thPYFGiHzHk/uIhZHmgdFNFhme/oA1+Q+QT4yXx/Mr6e/aueqyAkS8tsSWGo6h9jWHY9TA3hd0edXfTTVLt7eIa2kcus/jodgxyxH1YIi/8YAVoQNpPt9C/X3dJ4JXIUfUYlb9/ocAkehtVm4M4wW7IT690xgFwRAaOem3Xlqx06CYuDBcGGTe2T7Bwn7BJbvUcfmZygYzsR4UTaZXHOKkdXmtSFskT/gu/rrqf6BflPCE9WiJqdlb9B6fgo9NHC6eM51iRfbxLHgi6ryGpGEaRqO2vaYZ7OctZixGL7Rmp3m/IDOSlrsonuqsy1JI/ybz4GJkN2IFyGGHDhS3KJd3QFUw+BToBoaxFBeigoQd/jOq0V7sG+ed6NakXJsuA4sL7Nu03VOgv6NbpChiEKgBCOr4hvLghLnLZxvxzjt0yiS2xiNTXkWfVGIyuiFfwHONpYM1YfHGWRjY7pPSYpF3Yklpburr0hMeokFyy7kndmn5+s0pihWgQlbpF5lKGf7XyqwgCnhDKEDoy5zAzsenRe92uUipPtvN5sJ1YId/VFHquK2QQtKyKFXhE1BcMOtVvMjqI5HbtN/qIjiucZG9YkViipkNSLDedIU5AmlTQvYVLcgnQ5dEqdRVsCZ7BG/wldxueCn6YYLFyQcSQqV3bRbpvIz9jK99gcWgqh49y4+bdIvxC/GSHBTQ2BHX6FAZAWV2dbDXoj9ipHt3lQE5AmYVA5+y+0hBgVwBPZ1qFMYcYPcn5/vs6XSmvbMEPcNXFIGKMD2v/L9I2Zs4KXcxeVlyz3d6zJgs9EXWNNix8zlYy1ib1KluDu/gLso5Aehuqzew+zsZCPKprwgZZAkHuE88F/VtYPEEcL9ZPWcrfjUiSGA7Y6C+oKzxlAoIQWgm3wpzEviT9E4nFl93l2d7U0Bqiuc1QDxEIeaLuHGP+OMObK66W3zdrp95hI8J4hnInHuFTHhbL2w+7dwP8V1ZkUVZhUxWbH7s/u1/yGoCQIywM5dTIYAsJMJUKfFIyB7o2qpy0d+m81PNje5+XIg+yZGNSuHUSF5DSQCJy1bSHQyPzyFbhSyAkdFdsNNOV0bKt4GGVGHnUhtw61TC2AlJpVqW76NcKD1zyIFa/q62ZlyhLiTYPWfy2YnqbBR2YAkzVk3dWvmgFSHTS80KqpiDNtAV/iCK0ehfdbxEXplSDhCeKNRHoCpnSlag2bjGhkqYio59RK5+zDVuWrfTx2ca3y2TVmwEos+8XprVvp0WbGsHVURAsR0FRKIMXXB9yX0Hsx9aZpxde2Ms84r6","layer_level":2},{"id":"3bfcbcab-8559-479d-b383-e38eeb690906","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"发布任务模型","description":"publish-task-model","prompt":"为AI有声书生成平台创建发布任务模型详细文档。深入解释PublishTask模型的字段设计,包括id主键、userId用户ID、videoProjectId视频项目ID、platform平台、title标题、description描述、tags标签、coverUrl封面、videoUrl视频URL、status状态、errorMsg错误信息、publishedUrl已发布URL等字段的用途和约束条件。详细说明多平台发布的完整流程,包括抖音、快手、小红书等平台的账号绑定、内容审核、自动发布等功能。解释发布任务的状态管理,包括pending待发布、processing处理中、success成功、failed失败等状态转换。提供发布任务的创建、执行、监控等操作的实现示例,以及发布成功率统计和异常处理机制。","parent_id":"83d0b783-d35d-4a8a-a303-9cc9b9c2d4ca","order":3,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/share/share.service.ts","gmt_create":"2026-05-13T22:55:13.5851955+08:00","gmt_modified":"2026-05-14T00:37:02.2311914+08:00","raw_data":"WikiEncrypted:KkirxUkLmB6WjlH0c6n8Wpi/wobZW2ygc8HnbqrkcqeQh1Vl+PJSSFGodZOFjHH9OTwUVbJNYi9wRsugfFcHvjqqEcKEmLhH6cDM9hchulPqrtTQ1ULfnMG4VZN5kl/6cFtOxWklVmPnwEIo9Cv765riyCNg3GoTZKVeMGLv4pH2ILqiJUMKeY+x0BbLiSlXF/yef7+DxmfHy6e+jkTrunPqM1koguiiVO5Ymzisgq/W+IpUgk6yxoUod9LJnRPHPFbscOk4r4QEFdqV1/NAdQasJVh3KktycOXOnkuFBKlMUC/a0yX30hII+E8QVyu6GpGdvL3nTj+UiOpTQGw+0NItjG9ecIKYOPAIPvnvcQm+M5miwdq33hgYm7QVzZikOjNiN+DGR0XrNpwemVbImlGTAZWG8RHkRm9+Y6rZ7Lxp9fruiW5auCGpRgIvmGRPUQ2XhMkNOtCA74SynCQXUvMunqMd5eC6EJ8+9VPi/ARFZsAltPle+uOnF76RGVcHICKeHjqBX3pBeqSBIPWEzXBGTbqM7rEJKCvitQQ7ZrJE7RkugC00C3GRIRfwcfEjsT7VDNMDCQPKK94SFJogEKVlekg3LXKa/IKvogUV2RX0xWG53HzzRaXVQ4Zof2SGJyJJQ/aucvSm1K9mV6UK7yC+m24Rfk9aBiweu+g3jY51ASjy60jK9FsCm49/+gKMmmVpKuvkp7PfXso649o22WU+bqSDkuHKAjIXnNadjCnvs+mlnudH0cJ/r0uP4K0qalp4a08KDIuBIs1uVDFz2ILaNWvC8yzTZblSXEiOMBE9eDrUdPMpYi3Glz+xb/n40vxY3w0nlQU3BNuBNGBbrpFgucAX8bKkdoxO1BceEaXyE650aiQNY4ICkUojVtg+mK8EMqZB/ttbfsgI/MJ0iw0qt2ln/PuWsIr2QjNkXdXbCpc4cukH1O6EE85ttWiPfS9h2ZmIsS3n2p0mCVDEOcUpzChzb62JBAvwZbqST1lhe0XJ0QGhPkBIjjPcZ+VMSLax1kblcDhOk887lbwI1DnRuv4EB7cH375nAwDmtImMNCiPH0YhaHmcVG+gaq+RJaV7pGBFD7E+F0i8K4eW9qRjGj3AfoEfbRNBeeNLWydvbY2LSS1EW6yopiv2gJ+Wm94ER/QMtgzWIFfdy/ALV+BLiJ/kieBTKrxvNPMc7NUbxJtZ87DSJSmurMJDCVj7nreSee1g9Jlw9Bs7rwJY5AtlJUoCCFym7Q1X4V28AT/t2OzvsiA3m53dDvzzgvZr8kxHWr2x7oXBu4d0MOc6Yy1zi6wkvetZoneVT8T8LRfDx8Duxh46ZwLmTFyfLwbglOIqT3tkoLGJ4dMHvaQJMEncVxnaI9/k48MA0FYjqYT80Ss0uJaiq5v4QQYJuaZyrB0MNfVm0G495ASB8f7+yZ+obwDOvzW7c8HaGqsCDIH3MuuS26pbZrhjl+ai8fFcidwtAsBk3GV0FHuBpvcauw==","layer_level":2},{"id":"8975bfad-32df-4387-ab03-3180483459a8","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"搜索历史数据模型","description":"searchhistory-model","prompt":"为AI有声书生成平台的搜索历史功能创建详细的搜索历史数据模型文档。深入解释SearchHistory模型的设计,包括keyword搜索关键词、userId用户关联、createdAt时间戳等字段的作用。详细说明搜索历史与用户(User)之间的一对多关系,解释搜索历史的存储策略和清理机制。说明搜索历史数据的去重规则、时间限制、热门搜索统计等功能实现。提供搜索历史功能的API使用示例,包括添加搜索记录、获取搜索历史、清空历史记录等操作的代码实现。解释搜索历史数据在个性化推荐和搜索优化中的重要作用,以及相关的隐私保护和数据安全考虑。","parent_id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","order":3,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/search/search.controller.ts,server/src/modules/search/search.service.ts","gmt_create":"2026-05-13T22:55:15.3905403+08:00","gmt_modified":"2026-05-14T00:35:55.5685758+08:00","raw_data":"WikiEncrypted:uPtIvUbMezH0ofnqqRSEtmuDBgVPHTS4gWE/ll3QFbwI5L61gEE0hTSuWloIxYuU1bTYTNSFAMWjHjLbFAj1JGkZwZZ5ycADA5iOHuopKsrYQA1ZKsY+xvSkE4q6FZKNK/58ne1PycpfzMYg5mb3+89on7gPFBeKWYR2aspASvzwHAQwQpAeX8BLHthCZA5/ufTUYvmd6p3oTnew3btLhjurFr55wJpalbvVULf0mgWSKyGsoVtOrA0tmuSqsi0H6uHxEuIr+HpclGywymd1QKJZ731lYx/FbdgVKwwSIYfRTbdaEi1ly7mYDTZhFIq/m5JSJ6Muu+rlYLBzeu2SMjptqF9kqLA381mpE7ani6Tb5/M1eXcDtgvkwHBnJWzpu6esIr1GDEJS96M4ZW76bK54lUUR7NHwO2suovhQ0Fmca0EEqY8na6J3jQRJ6bqdQYB2MY5+Wx0m0kYcjnQbNhr0aUxg1wCC00AZbH4Vy+QZxN4bV8RWvRQ540eJK4cq/NhvGZvpXXE21mAZQZMItK0QLaU/30wgUR3gla07UtPdIIAtJuoY8uyl4aFbuK+LBu5B++GiiRiPLVXCXDcJYldc/FEvuZgC/i4P2Pd6ZkVqoHjEO5kv4R2RiMksNe1n5SSuEXxN4lwK7AwBrlDyaS/VEDtkKOVYGDxD8+8XS670AaAtyfZ5nKLqle9tVtPxL+dPsYfcHeS9JsktetWlDBnYokXBpt1JGd/XKBRctXYgV6zYnZ11s31qY5t0khSDQpb7wI3MXCfMYMba73mIUqNKEu1hLYnfL09rtbm8gZFWMh/PiJk8+ZYbRVhzzDAK0/Sdy6LKPv+O5ntPP3f2L7P9SlldVs7PF//r6LNF3PFldFuF83VJrVVDNMXxmhxj7KNwTug/LzzeTL+Ah2I+loVbJpME+VvN8BstBny6cFPhm9nWi29j8MHonap2VqXSZtx+lsaW/uNxuHXwPNLzKT2BuRQoPEvx/vD41afQ5AGoZl0BiV9DN4mFsTVmOzn2dpzsjO363hc6wVSePXw06ZyuG0TCsx9lGMgSRKVvsJO/rxRkVmnbZi464N8S1oIR2qTApAIj20gaovBS/t1LpfEfXCrefUc9CaOPCSOIM88s+SfloyuyqH0usDc1Oh7xvn1szJD7J/xt/+RZFuukvDWETbyNmjeJIJRycWXLwxePqwp09uVIVKt9Ai+qKA575dd6kL/AiWf8FqkUJrsft/1cWc9gnNZwLBcx8LMmfxhcZ6UIK6kLDC/nOgJzWd9pRxuul8aam+u7u/+cenJZcpreqrcId4dU6o6z1/SQqORc42Ev12F5ofBv8UP2mEhD0fF4CpOZUNHJHB27smYtWg7v+10nyIywM80yQUfQCxP9PdnM9ZulptcTMO1eeRshPy4OFRdFinRnKe7FaihzNd2CR/hOychVOI+8yTcZHsY=","layer_level":2},{"id":"078eebbc-2d23-4de1-a455-18ebaace9e49","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"使用统计","description":"subscription-usage","prompt":"为使用统计系统创建全面的数据文档。详细介绍使用量统计机制,包括Token消耗记录、音频生成时长统计和功能使用频率分析。深入解释统计数据的收集和存储策略,包括实时更新、批量处理和历史归档。阐述统计报表功能,包括日/周/月使用趋势、用户行为分析和收入统计。说明统计指标计算方法,包括平均使用量、峰值分析和预测模型。介绍统计查询接口,包括时间范围筛选、用户维度分析和导出功能。提供统计数据的API接口和可视化展示方案。","parent_id":"a039ba68-0f9d-4f92-a4a4-d02242720fc0","order":3,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts","gmt_create":"2026-05-13T22:55:27.5806899+08:00","gmt_modified":"2026-05-14T00:56:39.2843452+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqMJt4syaOGRI9RWf488Nx9vwxesRIY5SH83ybjqfT7u2vK+xzzbU2AAVF5SyIBYss99GH07xgGpxijUir8GbCtquNlekRoxWk/MhOZFwuSoxsSUv/AsmB64zFnBa2PILJHk0wyvtTWfnZ27Xd4UUgD0gh/jDRfvubNem/QNLt9NtUIcOZsWVNLxHRz5QF5yVWja11W/MuooXhBnXTsprkGuWxdKkzOtJOw0+Ay8VBnrRkQ5u8XKhYSG/9wpz9tWPPf5b9u5xdDd/eFgrSw+ih78KsTUWlTEAv+3j2oLdHw1lmihlsKhoQUXQtZHkrQhyELrLvJO8FPogbZAwOcLMu572VWlm721YVkCmU2CWEajJ+/24rQSMbHoJkiE088mxKWX+WzAPmNdY6mGkEEmJkreTvmL6y2SQepGOb8qXv4Ch51rvl0yUIc0L5747p9vh1AsTYLXOaFYzr0tGL9MiaiiRol7/+1zu9OlAqAShb82Ol0PxalwMXzMeOG7CxVaJaTzWfdUEfQ8CwhtjscnIzH1IUmI1PLo9YeG7LxdQbCpDI3/pGszxc/k5aof0Y6rV34aqrggHt8401olSdl9Lwh/ngSVulv6y+Y0qkAQQAl2sucYuB/UHsvxePzXzxXIoXguQys6ikWAP9n9HAuovbwUJ/bCgkXMMr1y4Ki9xGFA+0ZYQS3WsHaTe0xoKCjobACKzoTjjPQxrhIXn9XY7Bk6uCatJew2QmNbGAJ7juvkOQsX6CuswxfoFIH9k5wOUuUaLiaq8I3fY6hYq8OM5n0KzpUEYMP0w4giJP1Pw9R43x1hmjf45cnp5rfcPJB9WuXUpNcIfoceOJyHoWhIEx+L0Lt6XMVEK8QdpVII3V5JL+L74NaOCe26j0+jxyrOxJ6VhcTFJYvWPIf3i2mQkEbHRZ9fe1lvq/KCtknlG0jhg8Uyhp499q5WTlOBaVTKOHPDbPBwTDwUviOkhzCRfq55Nk1rUWQldH2Vrd0KnaVuyJi7+z9BulzW6uv1ZvLQ2lgTQK5YBmYchnrCBg69Uc6Rux9I+7gaLJznTU89eB8PdfuozeXZRiRUrgl4wZgtl1cH9K23omW92d32t239KlsWPuSP5NrBc+HLnSor3074PeP7JB6GP7wXmLGeAE54RU0YVkgoha/gQCfje2gTzl3bpt6rReWYyqYpZYuuo/SBEdcH3zuAVl2HxA789CDvTYFPnGiLcXA5bt9XDSghAzXx56hEQ3OnDrqlGely7xXJf7sNaC9gX6Su17xIQU1uXfUjSReDg4GqOaQT0OiACie7Qd/EmuDz/T56hEP00zPAX04GyT3V7vIArMdULPnfd4w==","layer_level":3},{"id":"fd2f34a7-d341-4e84-ae22-0a9643550230","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"视频生成系统","description":"video-generation","prompt":"为视频生成系统创建全面的技术文档。详细介绍FFmpeg集成实现、音频转视频的完整流程、Ken Burns效果的应用。深入说明视频合成算法、字幕生成与渲染、视频格式转换。详细解释FFmpeg命令行参数配置、视频编码优化、内存管理策略。提供具体的代码示例展示如何调用FFmpeg进行视频处理、如何实现字幕同步、如何优化视频质量。包含视频生成的性能优化、错误处理机制、批量处理策略等实际应用场景。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","order":3,"progress_status":"completed","dependent_files":"server/src/modules/video-generator/video-generator.controller.ts,server/src/modules/video-generator/video-generator.service.ts,server/src/modules/video-generator/video-generator.ffmpeg.ts,server/src/modules/video-generator/video-generator.types.ts","gmt_create":"2026-05-13T22:55:34.8144654+08:00","gmt_modified":"2026-05-14T00:55:46.8867362+08:00","raw_data":"WikiEncrypted:/pvGPLaEVo9VWauq2W2LegZVcadRCObOO39VjbkJtrhEdxFWnQ7oDh6UpR11RNQwHJJMKzRuC0VXXLhxyGo5rKF8wBxO4Z0PqYvWnRIJ/eer+QlnpbR6ulpfU+HIwYEFYLBQMeZ/BLgDQVnPei88UGmgIaET2qKQixu6O6cwGx/4CWHqvYmg+ebRPfO0QeOpyKZbwVQAhg7Snx79IZlYfwMY9P/+S9fQf+VCynJH2iulGNgrKLL5fZUzC9BMP87RkgOKHZkBMHnDaz7XTBSt3Myn84pobwIDGLXDjQ+Y66kkNgKgIAa5m3Y4GqNpwpYym4ckfbmi7gO41RZ1EQbac51K7cSd62BK2PshXBC9lLhkq3vAc971MHibR+XLwxSfLJGVp5pLoR2s/g+Kiq/L9bycI96eI8wLSneZLsrzN+u9Ab0iBHUNmnkvjeoCUGglDj3HPnQxvBd9ez9bWhwFT+z9wjDbvPjsc04HNplNHlEpOqpkbp/iCanY+mF1HpsvmBoMlktxiZlX6Vl3/wgnTxPVKFSXQ6CgKRgKefbf6scYLs5vU7bMDLwn17LPxEHEkbovmfv6Yc7j5bomIKgjxIQAN5Qo+NBxp/0St+flkd2sxfjad6tAPV8bcqAjJN+Rusv/GxV/+zORjuaIs7U9bCohR1hKJTUHQJUTqWMpiDGHytwdTgExH6eOZpaddKd3Y/FWknK4GBFsBkevo3nsWQ3roCtARjDS/nyFvuSeiN4LlwKFJgL2+fmDQLHU/0qSlOVRtW+ZakuUNfEuPN7pqcx3+UysR3HaojhWNMxxzDsXv7U/9OvyKfE3v0z4VXYSFygKBv+v5N5o8rAZZCnNDuR7ZiHLrZN/h3gO+A/GV1WooBQfrjK9uEbm5OwUSfd6zkZbpPhJCJ8jMgcD0kbHDPAKx5mNRB58JFlA2RcqOU3K5OsFCXpB6F3ztChM7Cje7GNZAcG5CCYr10Y4d7oeh0m5e6r5uf9joDMBN7XVGY1AvYpETbq3oqZruyjkm2JoI++4WJRdq2Cnw+ISZcANC62FdwJuG8GVBwjMxwUOpNco/v1jdGGZ7Cy/fdmCi33SQHa0soVQehHjLxzXP+fTiQX7lMEaOzmMe5Hen0wq8hPXa72Mby+Yc+NgtRzEAhQcn7BkGsOZODd/awq1EKpnrZfHnHOI2Ajl4rlFxMKO3x73Olr/15WRmDZV3bMPpG8y4THx4K1SrVGC4fU5UA+dSTOnFfCZY5C8ylUxPz5AjBg5p0n/Y+TJ8RITPn8v5o7RnsCc+qG2Qc25f5Kmpo9Mw8SucxMlVOLNfm8gFS5uip4cqfKLG5HvrSIoGHX+Ll31zQVlLXAQabblA+c+xsQVV1Z+PQWXEfogZy5pqyBLnNHoDp9m62HRDp+afmD0DdKnq2OZnrRe8cMfLXvg3iiQT9ppToZPmWHp3B79VaG/chg=","layer_level":3},{"id":"8df3e302-10f7-48fd-a0d3-747eb063838e","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"日志监控服务","description":"logging-monitoring-service","prompt":"为AI有声书生成平台的日志监控服务创建综合文档。详细介绍Sentry错误监控系统的集成实现,包括错误捕获、错误分类、错误通知、性能监控。说明日志服务的设计架构,日志级别管理、日志格式标准化、日志轮转策略。提供请求日志中间件的实现原理,API调用追踪、性能指标收集、异常堆栈记录。包含实际的代码示例,展示如何配置日志输出、如何集成Sentry、如何自定义日志处理器。解释日志监控在系统调试、性能分析、安全审计中的关键作用。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":3,"progress_status":"completed","dependent_files":"server/src/services/logger.service.ts,server/src/services/sentry.service.ts,server/src/middleware/requestLogger.ts,server/src/services/log.service.ts","gmt_create":"2026-05-13T22:55:35.4418378+08:00","gmt_modified":"2026-05-14T00:56:03.3298453+08:00","raw_data":"WikiEncrypted:U7R4DE1TfAUvjZuFqogRLssWKcr16w0v0PRKxSQnIv5deoQb7Qbjim7kO47JmcGccq1Bx4JDOaOh/2eSXvmKAqgvGTtO3p6Ym5+ZpymLuManJ2nCaozyQeCtY7bcyCvZSK0LkbaFgX8JjPc6Tnsn3TKc0HiB8qPqPZlY02siIFHKg7F/GZIddZKRg4SpiQ9sLuY8ksheTKeDYARkGIYR1/lwiXmr16IT9vz/Vm6cX2fMP7epJryn1Utf+j2J6EhD1DatFtwVpLhYY6tXLIXm8wxGHGG53ibj1HZUqMfAtojMkkFSvxGR1qvOjPzK6cEz88nhBVUHRjo0c5RGnv6jHIOFm6HuC7XtKk7nDM+lX2spJXh9rfTt5uEsbPOCVjbBZwggLqkd4wk8XZU9YTlcxbqkLLrP0Y+8V82Q63zEE7dxJBmn7DVVJoDF5C0TmKJ/K1xiiY+GO9UglAcGE2iq0Lu5dD26M3oJsbdfv6G5H2TMzGiaZKlkJl5FowxIGZFJ22egtWtPZUc7TqCFoTa4I56KnowAula7RU0kSr1rD5J8XcRFxUJhdaNIvh3gbL8PBUwQStuPPFgfrOEK2jCpKtC8/mpI/X1yLyykdtTViOOAwfJDLAlWqOWAIGEjjd9OyL3JpjcWMSdm6KMyIeVmz5aD6pZ8Q0SiC6Xsx23ZpvZjx9KfqxDqQq/eZdOAG0/NrcXrC5gDxavVLFksUqLVq3zKEpayw9+xOMYfQbIQyxMwtvhbU9omrPwsD+ei9DWB9c2Jqq3efFJeE3z5aaIK5mlkEapiVAqWzf+OwB/Wu2w4vFiYxmbWFyE4s4cw+IMLSuDtGNHccoKmJEEzS0bYbgdm74RcfTNSOS7AbvxL1RXolW+11mrIayJ/WYhkBGM1R/KkXsULUlNvMSAAHt/yVClBleddKSSszAhEI4E/SA2fydvB4nxGgsUZuFzwYcIu5o83yNKSSC5gEn2y3ZVEWD5KIyqKsw1gWSFXr8PA+gWrDk28mTS/b70hdxgRT/v2CgV4AqcGdYS52sFai7WcCWH5ylvVbxiflbktpVPLlPscX7sFB4RFjQDA7ltxSLuHXotd32pMbCH1knctFU27LZamE7MxyTedCT2uYWxdRLHeyXW6vHyXc4LP4f1oxKHKCvtDqFfMXmt56NLfAYNm9VFB6aozUVUB3ENrUA6AEj4wfygXqGcpdu0L5p/f/QAdxX+oPEfz4+Ex3uk5PWmZSk01+UxeOwjvhWdvDJIspagjuHDASRED6lH7vl6wq1yh9hQjer7fiLLrisHXw9O0pRq96iGk3mUd9x4UJ+wTLgIMxG5N8Rnw0dqjVFMMaP4tG+zApA4XEUGkjkhRHWERwauOb5jklZBqO1w6Qbo2qHouv4FSYam5vNtghR62YmFV","layer_level":3},{"id":"e3671551-7899-421d-823e-ec482d7e76e5","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容质量控制","description":"content-quality-control","prompt":"为内容质量控制系统创建全面的技术文档。详细介绍内容质量评估的标准和指标,包括完整性检查、逻辑一致性验证和语言规范性评估。深入解释质量控制的实现机制,包括敏感内容过滤、重复检测算法和合规性检查。阐述故障容错系统的设计,包括错误恢复策略、异常处理机制和数据完整性保障。说明质量控制的自动化流程,包括自动审核、人工复核和质量评分系统。介绍质量控制的监控和报告功能,包括质量趋势分析、问题统计和改进建议。提供质量控制的配置选项和自定义规则设置方法。包含实际的质量控制示例和调试技巧。","parent_id":"701079e2-4e5e-446e-ab66-c5148c3b706e","order":3,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/utils.ts,server/src/modules/book-generator/FAULT_TOLERANCE.md","gmt_create":"2026-05-13T22:55:46.655603+08:00","gmt_modified":"2026-05-14T00:58:27.0084331+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CF1LJsWa/2agcWT7x+O7GvAtb9wtc2xWVaI2HQiDEMZoAXYxAWLB08PqmHE06/VyLImZMau4dVuPVjvUKZjh7QGOIovtpZDzO4W21hG8X2Ltpt1Ssaf+vY4/XVYXRKFGQWzsGXTgZUdwAOqcPy1IaiyEmjQ6waGN7G/UHB+FvzXoN7HqfntZb4Iq8YRWHJX/QxZzyDyUxqk+aWCjFJRe0mTYfAuv3WXnuOgKPDM/4jeaHtjKa9kWRfFNbr/KWTiPBsYwbISqz4+HdC6nZEUFMSSoQDtunLHVTIRxBVygtGcoJfU4qgBRWsyFF2OxBBUs1RQAeyMdC14lETMYpw2g9RQLc0LtL9WKsvIkvIABR0Aas0iMo7Z4jh8H1b+nLhE/fQZwKo6mL3CjqVsNsR9Onn+c8UZRJ9NNTqzoemFDwviJj1/L26wsq38cgODSLLzJpbZDjp88tBPGMCWOaBDPEKT4MSfpCYDJwhxc1h7M2J5PdHeMPnxQMVzy7nxV21YJDZEPF9C287mg6ZP6dZKqTuRG0V3n773STotRjlHSTR1C00ngkxhsd9ZHH98CQtRn62CGdRxsQ6j7Dy9mb+NWiJL09rG9MueR4N9usfNmjYztCNAqlkffjsJfTbqnF2S9NoDj+di+kNQHqdepQ3Cr/6PIJi+isqFSvHd5SkEsImrIusnZgm8s/O9YwVPr4GyL9M30XEh52a45SiD18fqMVuwEcskmFVjZVUbonbT+yZH41fZQFZkBTrJ32CCGvItAmPjXp4NN8tsmnIsnNuT5CG0rPdXpOedkEEmheL+G3liTaxoW/DXHyOHmHh5XsoX6K5dGetEHcdqbIaJbn9jzkve6iZGCpn4xD+KRplViMpQlr4NB8KECHb6vjviemCMv1EUmrZSXAaV9WSzd4+7JPeoodO/MCPjkkmea+M8+OJ7YJnxGbASXDNOXDi6NTkEdEmCP/fgzm2QKjGBBjspIfFGTJLiNshZZMMNVurmFYRalcf7sLVeAwVCFuN9Ujp/XonQTliXZUfLdPOB2ZCsgYg6Atxn51p5MonwQsWBkuAu5m1E3IDp5XIh49dRXb7IRMRAjzu7DoFENNOJA0QBB0lrxI5kVOkOFkDD6iGlo0OCKik15FRwwTvOh51nG1Un06LRwE3odO0T34f4Tn76DUT2rBz987m04svJJYDZt16DzBkwP0DC6txytJg7HF9KalEybieTAcQzK2jUXGMgz73NR72hNbNd+0vYaMUw9IDNW5vmmfOj7t3sflqey5PWi/TAmWi/sQgY/7mFIJxDcCInkBjBJmqlAbtQw0D7JUZDGMfYIkXfKsdoSVYabzU6uJ3k2i3kntrKmvKb2oa/wlG7IYMpFv73a5DBTztHNEQJzQEu1Dj9IQgoARGrxHOPeKPkIztgHlmKIxNgc7kEYFoDyuqYdv9TD/6EwAt36Xn2mNsA3ZCsVUoiisdwqMlwSw+OXKL3A+H4HJqO1DaeZX18FjTWcFOQUASIP/qbI7v7UerepcRiY5KNlXpsFptEa9aUDQQrYQPDDxRVtwJ5ccqGRQP/vjjUrCza8ixj6YhrBtYWF0E6MKD94c+aIpbctBbA==","layer_level":3},{"id":"61655ef3-c2e8-44ba-89df-ea419f86afd9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"辅助节点实现","description":"auxiliary-nodes","prompt":"为辅助节点实现创建详细的技术文档。深入介绍foreword.node.ts和plan.node.ts的设计原理和实现细节,包括序言生成逻辑、创作计划制定、前置处理流程。详细解释辅助节点在整个生成流程中的作用、执行时机、依赖关系。说明辅助节点与主流程的集成方式、数据传递机制、异常处理策略。提供辅助节点的配置参数、执行优化技巧和调试方法。包含辅助节点的实际应用场景和自定义扩展指导。","parent_id":"4195e43f-be71-4897-a6aa-4df85a7db7cb","order":3,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/nodes/foreword.node.ts,server/src/modules/book-generator/nodes/plan.node.ts","gmt_create":"2026-05-13T22:55:47.8627751+08:00","gmt_modified":"2026-05-14T00:57:33.2169138+08:00","raw_data":"WikiEncrypted:m2kIapzkdlNhlQPV5E5ri97LZzPW6G7tUCqeJlNGYIZnEVnuk45WBCpKAIAUXGYcW86sbDOSTG17yGZUG6n34HkXqhSYTx+C3jdqZdHio92AmM6QBWnZPbJR3vmEsWQbGALQZ8ZTLNnNs8d7B65Uzv6x1m1l8lBtkkXrUpSvud7H5PzuBz3g6Lj5Sbwa2q4UeYzSK3M+nNgZs1dqs0nnZxT39b5wUxUxDC9cud8TxGXYfEHnlRFOJ3rI60u+YiwHsFFpJ/c4ww9PECyMLZsd5JqFuvTDnJ7+hIPHR7QRndnv/OFVdj/7bd/NaFBUXt7wJJ8rVMwDepU0V1t8qcZ7NpgYTtBzqTOUj0ZhWTjnb3ZxISorqU8cOp8aBTUpr64hCuatofeKYMV+ztDUU5RlhaW0eue0n5NaFAFruAnDy6Sjy6cM0W55i5/+8Ee+eABBC0W/5YkZ9gZCkU4p6ob4aDhAiqVuaVz3EPhFwlLMoBsmMhM3982iq9k6t+5Ae0BUgz+FrBOrP1vHvaflhi4PJskpbw9zJmQV/2VC7Nn5/ig7+szkda0FY7tLQazMYb/aGJYGsw1WRsKQ7GA3UWRpqD6VwkFY9fw67pnHdmkOXivIZ7afSJX5x9d49UGl7bed4HuATg3hyFZlbkkqngR+PRBeb5zNKgYKHjnkF/KVwkn6EdcVKLGZMJRSPQ+Y0Sqv4mTwLRxnk5oNC2J30GIIohXjHQd1Y1OKQmthyPIJEa8Aon0iEPKTZtBGq13E2sqWQrdZMDwiBMJjOnCX9zK6a5V74OLBFyVZ82sDm4rGfnDhSCXimD8f/S27ZHbp9rysuvGhi9Nc6eCLFRoYfQ2JNUWyMS46iiCQDzdKYQ2HEo6v+ygSu2vaBjCjEdSsGktFtQjjYe1pBrdPJ4w7t//dfn9ZS/69gMvMD/AMBKzoDsQ9Bhw9dMnzWXG3k88yHfTgSUZkZ5duXr4DDJekweo1aA3YMgoFTZKDOz6Bam/ctf5QO/hHal78b9g6DeTxATjznF50Ik7ZLBSY0DF3r2xvFVgbxTDTHy2ES/iC/5lnow5WgYkmie8osaeEJyey6HUESForiBN+wAEfVTLDS7TN6By5ZOOMbdQ5LSjaxlrrRpxwU4ahmEC4HTSKyZPNg3YEBSR4QNzdhA0P+Bn54WG10SX9shpfGnpKmck/gnRUqYwjInOPEQhk3rXcOJlexl7b","layer_level":3},{"id":"f5e7ee84-8355-47a2-a9cd-00ced52e5ec4","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"策略类型定义与接口规范","description":"strategy-types","prompt":"为策略类型定义与接口规范创建详细文档。深入介绍策略系统的类型定义体系,包括IBookGenerationStrategy接口规范、策略参数类型、返回值结构。详细说明策略执行上下文(Context)的数据结构、生命周期管理、状态传递机制。解释策略异常处理机制、错误码定义、日志记录规范。提供策略接口的扩展指南、自定义策略开发模板、兼容性保证措施。包含类型安全检查、编译时验证和运行时校验的最佳实践。","parent_id":"60a4d55f-2abd-472f-b698-a810d4529780","order":3,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/strategies/types.ts","gmt_create":"2026-05-13T22:55:48.1362715+08:00","gmt_modified":"2026-05-14T00:59:07.1423234+08:00","raw_data":"WikiEncrypted:vncIuVLs5gKBPQDvkV46pI07QLOqiXHX6HxRoT24TbI/nByIyI6Tgaa5262rQSl4NpzjWaOcHTcmlc3ZjgwkmzHAIONxmw19u17VWMogcqj32HvAUgGRB5Mh7LQb7kkvFKlUGTIXiQ+GFWH26Dv/m2p/okQnuq6Mw+/i9++uyIjvgFN4XYOv+aVweyrFQvu/Eetf/VX0yiW4+bENAN8RkjtK3Cyx4Lpb9N+iBMixM1JSX0ZqhJblQIVrtFcHAYPqrh+N3rWx6e9nCbYvMt0XxeQMlCvg17LkwfPXKOxTLH+TLNh1KWBuKyAkcVr813OBxPgnpb1DkWg9srlhZgYESjh3+qNv2VIcjiAoOISI8/wiVF0he/frv84g9yLwSPOIq+6HATeXhVeaWRPCNKCIia8gLnrIbaWXaKvTLC0wGDN33SyKWttY22SWH09+LQSHCAVi953l5WkaMWT9gkEY8ckuRcar0814hv79eOaCSerjWZEYRkQtbEUvxv2XcEuGIjZm6oLf7LCGjSSqwKVw0k1+QJMAfPFp4uv3+74kSNv5jAyRO60lpEGd1gve0E/fihJB1qEu3QzjHi1f0tEDrZD0XiLaH6aYZSREgUEvgWjSqx6FGV2yG6go4ieacBzm5oJPASQ61zBlL/TJTuLVbtX0/jcrzBuDW15PtUod+Br4YwS1Fj/diELbluHQdmr8z1QfbU1fr+IzJ8o+Uyij83D2sMd1CgYFdR7FkU71cPpnSldgced1Tuoh9Y7qaRhg8UFxjhxGRfgOxG5RhZcGJ9/V5nrl4XqCNKyubfebPGX8QqrtuZuEi+PxnLo6zO5Ur/aEeCs3S6S1GG3tiBi8qvSJO0FVrJ9qtcsmTz2mk64T5LL7D8PEhvfnIOlneqvEa/e/wZ1RVaDUzzT6cuihgaZBoTCXB/H6Bmrq/uf/TjGQXy/XWYkic//GisLGaWm0YA3BYppYYbtD/22MsD+WTbUaF6sHetBAXdV79SxYaq+gruB/nqVB1CN+owHtPI/oHypUs+OC4tsjUiIBleZtH16T5KrjojBu6m2EtymP54fcLOm9uQ+ibvv/Q0xfA9O3o6IRR4pctZBx9ag6EploB/8IbweHpAVq0gl4C/CwBa8e7D+zpVNstYJoMRJ9CkR9vdEfU0BQNL3CXpdu65s/3g==","layer_level":3},{"id":"c44c2e8e-1dff-4823-be5d-820b7d1a3168","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"存储机制","description":"storage-mechanism","prompt":"为存储机制创建全面的技术文档。详细介绍book-generator.store的设计架构,包括数据存储策略、缓存机制、持久化方案。解释存储的数据类型,如生成状态、中间结果、配置信息等的存储格式和访问方式。详细说明存储的生命周期管理、数据清理策略、并发访问控制。解释与数据库的交互方式、事务处理机制、数据一致性保证。提供具体的代码示例展示如何读取存储数据、如何更新存储状态、如何处理存储异常情况。包含性能优化建议和最佳实践指导。","parent_id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","order":3,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.store.ts,server/src/modules/book-generator/book-generator.store.js","gmt_create":"2026-05-13T22:56:05.8910289+08:00","gmt_modified":"2026-05-14T01:08:58.8276657+08:00","raw_data":"WikiEncrypted:9FtCQC0DeAGG21+hIR4h+DjBxucasS1R8T+Bfs2t1S635fpGscvkAfSRgH9ljyeXttZVIAQy8U5zCcAUd05phpMWNAc+FvsHaEc7BNgZyvPnMtG5+8gZ+KyDDMD4HjtmV8SH22jFOJ8jw3qgrQ3CeGDqATcTnCUAzX3n+6Bczn4oU4i0DPLnklBePcBoFBIbi6fUngL0YsyuUreWfnzi/txB8ZsX6voZWWfxyv4m21avJSEguBWhJQih1y9roRlkOdgfxt9NIr9OqMWo3OOtmH47bkSyq17qb74sV9HrmhRWdn2sb6o445iji9rkV5+/gEM0QEH2hn/dkpY1IkbzVQxraQdgrl8wpQSUZ25ov3DCRfkjG8uANKMwwh2xCuPgylKrFca6836pLAuvVsJ/h0CBUQO3qc06YEFOqx58tD8rFibhGpU/SWOj1iw8ny7ckJlzgnmEkjYwfYXpGAr68q6mCZ+d13S3wohhqnFrBc1FVv6otfNz5s4hfZx+UoT4DH6uuWtKIurd4AeovxAfnGGY8Nw3RHaUcX42pKxWBK3TaOmTRdWPiKjMk+9bPUoT2LkkV33J2m4ZBdQoXb35GAU5nmuS8m6YVCqbKMPfw2iBBWdeZbszYdZ6+t/blGrqrFH1cBGEIVhh1HJjzxOuNAojDQ83xoe/yMw8g1KcTCoaCaoBqkYof+w2+dZ8Y88YTpSLhYmHyMxEkFUB9MW65pNTvgOqyKxknbS4KbVMZKUNIWMdKhh5ryjqQHSTA+RjBoPr9jVx1J9Dc9rpQehVspj5k2RiYWOdABbTfIDMxHZaKEpMIALvDCpDFLBjDd1JH0892d5XxRjvCkXIhfr5HzwzVcmVBVOoRyK4AynLS4FkA4ITDIN6Fky9vAPtDkuGlN7aFefDe+QkTvgGseeFYC/jnHsi5dforhywqnsYnR8N1BYYM75cDnMasxdS0+RH/SeBh8cnVtUcffZ8T6/iuadJnfImCm2OVdNV1HCc9UgDNAMZB7DUvxNxeLp0srq9HTsXd7wZVj2v3LqWAdr7Xz5uzKYAL+4SNTvsv+KvG0bfiM0RstUUBLUb42C36t1BZ6/dQGs8STYHw/gbhhD98v1ZvI2yXtzpOei7EnyZ6qWETrXDOP15+rB3hTQnB+LekSXXSZnYX1CiXIIVyV2LlHha5y+G+i+7s4cD0CHnN0+bWv8SXTx6hHW6ftT2pN5RUotPkTJ07+iZ9s0YXHav5UCUA3b1rLrnpEw7/LYMg+m9b2OKGwbYTe3nMMHVx2BTF1YrVyeRBtfedZyShJrt8Q==","layer_level":4},{"id":"3769731e-846d-45fa-946c-42a52aacd5ec","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"限流中间件","description":"rate-limiter-middleware","prompt":"为AI有声书生成平台的限流中间件创建综合文档。详细介绍限流算法的实现原理,包括令牌桶、漏桶等限流策略的选择和配置。深入说明限流规则的设计思路,包括按IP限流、按用户限流、按API接口限流等不同维度的控制机制。提供限流配置参数和调优策略,包括限流阈值设置、时间窗口配置、突发流量处理等。包含完整的限流实现示例,展示如何在不同场景下应用限流策略、如何监控限流效果、如何处理限流触发的情况。解释限流中间件与Redis缓存的集成方式,以及在高并发场景下的性能优化技巧。","parent_id":"b8a9084b-781b-4146-acc9-565f7e350662","order":3,"progress_status":"completed","dependent_files":"server/src/middleware/rate-limiter.ts","gmt_create":"2026-05-13T22:56:17.5603846+08:00","gmt_modified":"2026-05-14T01:09:08.709866+08:00","raw_data":"WikiEncrypted:3P174l2K+v0NkBBC3Y4GCrX7TqU97IXeE22tlA2VpCmUoGm07IDqkmflVDYgIXE1UigXmCCkQEeswjukU70xHjAtBWl2bJ8as6UgowCBIjevepINvFdWZFqbCw8CBSAxxs73GyzdtPAS5simW6sEp/jsuWWYf4YQUaDsxpfYA0UoCL3eYRaKk71+D0P/H7WF6eYGFkKsa6is0MTW0ZzqCYPIDhGombmj+UXM/WkBgNq5bV7UQyazW3Sjy1Fz2G0dGVNj9hKneKAM586SuUKyVYxbo1IIbYl4uJNH0n3RCGW4cAMAP7hPROBsSBYpvfGCB/VZsyLWGlen0XRjtfOLcMibD2V35WNm8bC5dSVgtrD6Iy4daONbVamdmdReXNZxqZU/EmncyICnkrIstfb52GmFbzL/KdLVCSYj/cS/dvRaSQiNbev7PIQtpOkLj9GPLQQfDU5xAYoflSCHMkl2PXFvOHABPS1MdhE0a5SkecVuiVo4E9uYYYlIaJp0hGzF4b/7DyZwU08peFLKCTokTpPDzYZBKih8+4zYByoRKwlVsJoVV3ELIx4lwzkwb51mYccL3b+rWFcerOL8WjPWjDXEtJh3rPai3xiEcxCtnr0I/G2PGlXKqVZsOL1Ch8SPrKZOXBXJiYfdYrSykVP2ADEJQ3gEhhQ7aARJ1dxETvp5BDSCeWtX9dPSpugclf/wuMd4taWlT99njmTD0X8BbaPi+CF7kzKaJJ6Jad5xYaORMNabJzfGwk6qowdMcAvDgXdIYoVv7hUX2v4xEzyu6yJlT6t1v/ZF3EQQ74M8P6qw2cpxGuFxnm0Dn4wyy+EaSF4x/7HUFys+r6B0U4MB9LdsrKtZjLXXp+oexAkAPMr2ah+V0c7fRqovFN//b5q4v9SOyLvpt5oEgZugQsJf3Gll7HgwkmxfE6WvWPRF8aSrzX1FMXzUdLS4lopSlRiurTLHkF9fH1baqr0HAYHQFk6lwdEKfqE578cnPAVTGsy6l9opJbXbDEBIdyWLUPV4PQ3C+485kzUmCgmzj1RG5Q1uUoflvw7amMeA4M3Lv0QR0963KPQ/6Nmx4uVxodhM8EJv5yhl15/EaGYk/SGEx9GozCgw9oxLaOSrubW821ogHcQNcQ9T0D2wY6fd9wdJU2kAYrdivmQjcgjtyK/WeNLIp2JJ1dn1b66XEs8nMHh/rzXpL87cEPhfYHB6ItuitDF/vXVOU9lcngUOwf+w7oQRXadF1Pl1MLCvvfJAOvA=","layer_level":4},{"id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"API接口文档","description":"api-documentation","prompt":"为AI有声书生成平台创建完整的API接口文档。详细记录所有RESTful API的HTTP方法、URL模式、请求参数和响应格式。包括认证相关接口(发送验证码、手机号登录、获取用户信息)、TTS相关接口(获取音色列表、生成音频)、音频管理接口(列表查询、详情获取、删除操作、收藏切换)、会员相关接口(权益查询、状态获取、订单创建)等。为每个接口提供详细的参数说明、返回值定义、错误码说明和实际的请求响应示例。包含API调用的最佳实践、安全考虑和性能优化建议。提供API版本管理和向后兼容性说明。","order":4,"progress_status":"completed","dependent_files":"docs/API.md,server/src/modules/auth,server/src/modules/tts,server/src/modules/audio","gmt_create":"2026-05-13T22:52:24.7107928+08:00","gmt_modified":"2026-05-13T23:00:05.1097021+08:00","raw_data":"WikiEncrypted:aJsVvsatVVT+Oax9nwx6A6Ka1Sy3/Ax3fbdr8CSPsFxZ2EWp6i+cqnOOrevL+QtbDx7fZdvtUwLW1B9c0o5HgDwl9PUvRqtxgJpVbtcUVBFpvwgs/BtDnUxFE3K+5vmzVZ7hm2okBHacResJClnO5mo8PqK+nnTOC37jH5Iszb/VLa2dioVRP2b+N9xziYQAbEur25bALdhY+SvTcZ7B65o+HiiFWzoskbEx71SuEY1kM661RQpB4JS7e7Rp1Bn1kvv/fr3DevCpm686o69NL3Q7aoUUEUWo4/iQgkBfS7kxNeZzh1ZbiQHE85Kx8tLwxVCw3MSTcicVSHd1b6ow14iKsqoeSZKavyr06kmWnqAV/44+EvNvqs/eQlXxaicvtTEI/BkOvkb70LBMyk6DLVh+dB7rAW7yro1L+CRQoj2Lrt2u5Jip1BrbER7r/E6upsFeu7vVGhHjxH8WArS5Y+AVuDQPA6GV4Bo7sMZD3KdBZgvjYjubjMfvsxJoo7OVvz3JKP8I8tqlEvP/tXuQje3MBAa8LFeHsfZAIkhk4jM6FU2R5JasFyZ+pPNs6gWTbJj+NAcX0/e4sC/xQW82EwP2eL312dKzjq/IjzWLXevUuHLzMPK9Aq6XDQmsB/yzOuzqdGY+XcdcjNj8AdOi4IJuzTI9MMzHI1xz2CXv0/SrCZbNRqG51FMt+BOSmTqgVejZxNgMUW4hk2sHdN00hpYxoRpli0djMDU9BOojOZRvMYUIPKISDj5duYX4A2e4sEo2ozTXseW81ADxe5WAVdKOdvhzaOmNcPQIR5npC2wR4e87zJ2o5UyPPslAbRKWvkCX8miYQP3o67QVQHQinMBEiX7QUBr8p6eVFFdrwe96JIH52d9MbnZOf/83gb3GTCW2t2BTrUpJAcNmr58llBgPZeIq2zYEuvh1TVj9+e/Kvy2oy6kycSfGO/geT2Pzmz6/blHAP18cb+Xo9JiidK9zQSSa5WvE+uIA/fd+SrGfhNbjT7jkp+amz/WhlItAUT+7KzEwU8Tukg3Sl+mDC/q4QCRLYNWQfY054A1hRzKRhCQZi3+0Tro+N/yNKDXEzeVdabFbynDq3vXk0vSw9FBPZ9U/JLKs/dgZQhFKIJ10CvldE4eIYy/FhRh9D/QEUrYIV//i9wrllhzm950KK4B0vnrL0zHjBOKRvcegVYoFiNiSvkmSh/wC60AGnxydy5565rN28GMjcVbhOhrEUqmrXGm67mJOFuG5hNt4VhUCkzoVdYJsY+DvghPqyBWwQhfapupZtRKkr2ZdhJXoeNieu0h2qIkEbtEJf5v5IX2W1HGWAOuni49/tjuKVetZqYGfjFqdHzOoD8PUnpZ7xjny7EkO/l0VEApKn+FlQSdVj1NwAXq1tonoL9U6/GQV04MF7H0oVT9HfG45kmfKLil67YDHLaXSaKX0M0DeWzW9E4Q3NODDLdM7o1+0TMnO"},{"id":"da6e72cb-b3cc-4791-88c1-0cebaef3cf53","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"快速开始指南","description":"quick-start","prompt":"为AI有声书生成平台创建完整的快速开始指南。详细列出开发环境的最低要求,包括Node.js 18+、MongoDB 6.0+和FFmpeg的安装配置。提供后端服务的完整启动流程,包括依赖安装、环境变量配置和开发服务器启动步骤。说明前端应用的启动方式,包括H5开发服务和微信小程序编译的具体命令。提供常见环境配置示例和故障排除建议。包含首次运行的验证步骤和基本功能测试方法。确保新开发者能够在最短时间内搭建起完整的开发环境并运行项目。","parent_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","order":4,"progress_status":"completed","dependent_files":"README.md,server/.env.example,my-uniapp-vue3/package.json","gmt_create":"2026-05-13T22:52:48.2193516+08:00","gmt_modified":"2026-05-13T23:40:31.3073402+08:00","raw_data":"WikiEncrypted:1aHEw3M2aeluf1++NE1n1HTCzLNrSYNKzc2IVp06RQuLWIEI9EJ79pTsDj8sHazX9L433xUB+3Ww+/r6JXhK9Mm3UysN6t2Dfk0nhcnaPBr+1atRK9LcE/MQFm1yeCZeMvqHx57ZWBvWE2vwuvfeFaUk+SfrGrpPmwrB5ob2ypj9ni2XZ4Cfc8ZU5PLnNpjXq/kO4J6A6WdORTiTLSFLcOiVqNQuVdiMfN5Qky3k5jYIIAJG7xAur23j3cjnwqA0kzENcpqI2yOenAlR37ETCXAcIqeVr8mIU7tMDdjaUfjW1sYVd+Oh96ccJSLLTcFRCqzuViYcXNbj1IijZuRyxxlH96NoiAVszN3un0lASWvXZlOQST4WtYFcGAIebNm0jI6VdD1u35bY22GFUgUrccifwrMJT7+lP1sI50vpaPS4/xIN4CZO9jFCvINHWZFMd8MMYw4XWaBhE8qXYJfauDCf+Jgjd57piXgfmSrBWZEYmQRbRtl9J26zMRFkSHmbUsjQELOqA13/dtyImlQaoSTav2k/0Y2p95/V5lU+9AcnqD5isYztyeBNL7qbtfFnLrhxvD0cTW8ubsCMj/YmWCXdwEM4AWjNFtnSWZT2+SmPhn6s3fw05X5tZp/pxQ2mjD0GbDwVU3DbsuRoATrUTws7KBZqTnBEWklld2vm9pvszaaGkKwbjX8QlodQyH0NYxdJhWVaijDwFcUqq6icZ3dMqNPhf/lJAK999hWh9aYubhsQVDcCiUbvP4unEf01q0meFJfYYBvghbTA8QnTyTDTQPQ946NX5yZ7/Woa+lGlNLGFHuSoeNTtH26EN9H7Ea8yTYjS8mMEzWFLGl4y1n/yR9VQfa5zDVvD6bOQtFTtwK0v1TZWbCl25fpvmRhfR3uSLBJhVLys5qoHh0SbT6cfItAaoeJ2Uql6c2NO+/0vLfCoKdP+yBo6n7kF0s6IdrJb3iw+XLjgJIgpAbw+YO3r2awLqPFSB8yDHzmcoI5MkR9FB5g+i+WYv3iqFTsGMsI47KRExWfjHCAKX3Dp87SfRcBwf849i9bNUZO0wGgd5Gbub+O4fuVL2PwzPqonUIljioNzoU5KK3iSU1B5N263BcG3xLxHB2ToOtHBv6oU7z88ljbqsdvxO792m8KYU2VnvRiDY7JuFE7MP+1bsuRILTSronkj6r+VwINx8Z4YLWhMLclf4m5dett8ImsflTOROtVw0IK1yB3ztdrtd3Nu3BDUPIbnzGtUcLg4ehk=","layer_level":1},{"id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"部署架构","description":"deployment-architecture","prompt":"为AI有声书生成平台创建部署架构文档。详细描述系统的容器化部署策略,包括Docker镜像构建、容器编排、服务发现机制。解释Nginx反向代理的配置和作用,包括负载均衡策略、静态资源服务、SSL终止处理。阐述多环境部署架构,包括开发环境、测试环境、生产环境的差异化配置。说明数据库部署策略,包括MySQL主从复制、读写分离、备份恢复机制。介绍监控和日志系统,包括Sentry错误监控、Winston日志收集、性能指标监控。提供部署架构图,展示服务器拓扑结构、网络配置、服务依赖关系。","parent_id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","order":4,"progress_status":"completed","dependent_files":"docker-nginx/docker-compose.yml,docker-nginx/bookapi.conf,docs/DEPLOY.md","gmt_create":"2026-05-13T22:52:48.8837692+08:00","gmt_modified":"2026-05-13T23:40:53.1843598+08:00","raw_data":"WikiEncrypted:0IKfLNOWe9mZfG1jVts3w6OOPEh83WqH1NPDRxzSZ+6CBEeoM3osZON/t6flXs54QI/1nKMzJPpRO+RASnW+0T2BBlITndyxMGon9CzvuZiCln7MPxhKmlTJMk+8MLY2DQwNYxoUcXhoS4v0YipoI8Uc7Yy57J5kbMZkk5mIsQEU0NJwtWIWJm1J6mY5cINOBlpnGHKkN/5J1wFvXiQ7Q2fR58kTT93U3iQZ4JPG5MBctom2vPYASBjGKHTgu4RLdWgUOdyd9nI9Ny2d32FN5MUwZu4eW+gLMSMGFCQhEVPqUPZ+AA0CAKYJzrhiGM1bAdYZvGwRWnRlwsioq9kI5JYmkW6LsG4MAbNqmrKYJxcgRhMktya6pAYi1vBtMYkhWjHBZaR9/iOfalv32gSOrTcy1DEQEaOJyg8TK3PU68nKojMLT8UVR8dm3quNTxGqqdWm1MHBKRWXCsyF4/R0tWTqYXmc0pGl6WfznqlsDhqQU4wBp0bFbPiBJ0Vifht0U+c84SKgbjYZ+YQe58DJ6TDEhF5ZIq9CeOcyP10w2tJ5mZPdzM3pBV9tlSuFGxMzoNoKDSopafOxsM/bbEGezt7V0go6fgkUr/Ya4F4tQHIG9Vj1EozR0pN553y3g5fnI/XgIV02d4rcMcQR3jxH+DazzfOrgGpmEufyGNDZ2UKNb3lAcaRsBjgSvMnCyuW2+LkioMWZeiReRVvxkpyqgSoTc4gEO97qbMM5rmioscL9wyz3D8FMgq07C3RdT50CwpVC85K38W/ClCEMaDAgL9fkg1gYngail/6SPq0ybgnkanc4lV0q2cZszjfyyOf1oaKRq+S4T2XJy3P66/qnFFlFd6w6VOcn9Jgh3mzJlK0tRj9x6y1wfMdPOEE9z/OP6enRUUkiNppogXmCLL6qAZ0SViOM2dAaGGHj80UFJSBGXQPcAMNvL5kEJ752jbxonj7fYCUmmqR+u64UQ6MkhbtN67ZK8zcub8V8na2+qtQvgvxPc/A7fl1dGnikgi8/O3W+gc7DdRXyMfW0H8qdMS9CZ9fYKqyWyNat0LB0ca1XtlsQ5Q7VmluZokIsdtq26ChzNSwRhO+HIyqwGOOvG7nRD0FG2puPZxfofy6eyEHE3itR13BhNJSK+dx0tBKiLyX+vgsM2qR2V2XqWw1zJGKwB/JVWZ0sIc6x7R5M3bqJfM6P7CWQr9VpbMhO4IIjrwZEbu+fqTrJyfWRRJS/B2Xe8q1NJ6QpD4LvhyWxoU+DKlOVHy0mTaGFjbHZBIr+ApoCA+y9/9yVEjo2hSJdkEJv0sPyX4b1LX9g9yn9tA7tjHDoeosukhp8i2cb+6NBzctko2zHts7zTlZz3yerrw==","layer_level":1},{"id":"a42809fa-0b14-4b54-aa3e-9502d0bd2bbf","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频播放器系统","description":"audio-player","prompt":"为音频播放器系统创建详细技术文档。深入介绍播放器核心功能实现、播放控制逻辑、播放列表管理机制。详细说明音频流处理、缓冲策略、网络适应性调整。包含播放进度记录、历史播放管理、收藏功能实现。解释跨平台兼容性处理、性能优化策略、内存管理机制。提供完整的前端组件文档、状态管理说明、事件处理机制。包含播放器UI组件设计、用户体验优化、无障碍访问支持。解释与后端服务的数据交互、实时状态同步、错误处理策略。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":4,"progress_status":"completed","dependent_files":"server/src/modules/player/player.controller.ts,server/src/modules/player/player.service.ts,server/src/modules/player/playlist.controller.ts,my-uniapp-vue3/src/pages/player/index.vue,my-uniapp-vue3/src/store/audio.ts","gmt_create":"2026-05-13T22:52:57.3017116+08:00","gmt_modified":"2026-05-13T23:42:38.3088434+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrLSxb+k/sNj0EKM1Hk3vqE8ilQz3HYbtncXLwXiM/pnx+1gO4vV5LwbMxS+um/APAu8O/276C/vFhXq6kaetY/xxF4JSyXu/TGCQw2Wb7cYGKx/mnjquqZEMGcuz4OyZQn8TxM5zW3z2DldUH5j0X+BS/yGA65NUEokEVdTgfWT4LKyZGxNxC+vVcqSJTyQDdFwbsZqSww7BVhfq+dMPHnLRDwiBenAN3R9ZS365XSi94/xcjm07qqSAh0CFJQI0zTEhJDuYPP2a4ODjIcnSlewrWg9wZDYMMYxuVRcLUb5w6fIc0I9meiK+lz62e4fe8YYwVxl/JJQlDageVB64f3/sM6uvkNa7QO2qI4/VnDWlZUyP++7Zk5f1eqPHgAFftQ1NTALlTPqRONOJ93AYzEpy3XlqKp8aUgPWzKgQp4vrszWsyXhXO9NHBqnFtYa1don3EB3yznSZHJslhKUCRPHk0DA+l+33FWnpKgToPPzRhGbyBryiiSlclZ4cs6OFqcMEfAt3dldK2q8TSCs0Fvop4hcZAYfMZn3b5qN+/VjK1efLhx0hfuJFS2ccb5gGifP31sPGlg5OOuqrxgtqSX4+xha6OfskShcvyQXBSQHMH1MsyaiWOSfFDdO1yDHNuoAIJnUpRZkGiyw5rb8WGKIJ0rL5lBz55+Ro3U6H2Omvxog2/Wa023oSa4s5vvcslFcmOTi2ZssBhJtRImzTJm91+qf/zauZkCbe1wtTWPwsaazxixduImPh+usGWC1V4+dEEPhP6uUQ7x+Ol404a5eBdEOCEJP+taPqnw2S7mYKDX9YIG72wb7QPeAoXVBejAD2GKtHg7+E9CkqiXEM+1kA1/umqJm2bFcCo993LPO/Bt8QRp0RAIk7CNVKmLAX5Vb0ZNfxTI6RYQw+xT3iDca1KuCAKk+V0wYmfphXeOpuN4v4FCEks2RuFDM19S3jwzbCjzEXyINdnd1o4QE6ssbwNTbSXSglVEnjKoevZtt62teYwgExTYm0JFQCCRNBjUw4cR5Uwg3kWjkjXX0YZvX/Y/GjpJZYAHRMZLUYBlKcdGommb+ne8nWKcFTjl8cmiBD7EnJPfoTw+5k0eVGnRXgukji3HiaYWd9nV/wKYYx1SRuKJ3xQNUM8YZDjISY2rIpG9tXd2WU46Cy+E9cNgDIqViwPm5U5EEocWtCI4HLv5t6QdFT8Gso7BknhJDfPnHdxAoEK9n3QRdkksvTlIIr5UUkJNTWYB6PWANVIB4Uirh08ocMuoj1+wVtecFSK9kla39RJeLC7+zs51+TPijkuC+orYSW7+DvTo9r5HrvDngi6V4wxNWV1hNG7mtVObFNJR/DZueabGsGXvjT4rWO5sUgZhnbhY16HqPdhC7/2C7gts7D/CoxrCgrGbd8R9iv/xhvFx8DCc/3owe3tWrFatUOQD/HXPUn5EV/wGTgafTbDwPmenCfE/XWpUuC/d2GL2lW7RvbwBWI8zPKs0k/PCdgyUybIzCWfexcObBx","layer_level":1},{"id":"45b4c607-1e92-486b-93d0-15d125f34f0f","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"分享功能API","description":"sharing-api","prompt":"为分享功能模块创建详细的API文档。包括获取分享卡片接口(GET /api/share/card/:audioId)、获取二维码数据接口(GET /api/share/qrcode/:audioId)和记录分享行为接口(POST /api/share/track)。详细说明分享卡片的生成规则、背景渐变色配置和图标设置。提供不同社交平台的分享参数和链接格式。包含分享统计功能、用户行为追踪和奖励机制。说明分享链接的安全性和防刷机制。","parent_id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","order":4,"progress_status":"completed","dependent_files":"server/src/modules/share/share.controller.ts,server/src/modules/share/share.service.ts,docs/API.md","gmt_create":"2026-05-13T22:53:05.7042921+08:00","gmt_modified":"2026-05-13T23:42:36.6584923+08:00","raw_data":"WikiEncrypted:ueIRgMrI3PsY41XH5si/locvGvBPicpaNs9i+zh6uZWcKA5EkDTZxBBovD3G0Qi071S47Pdn2LIAJsK00nUQPt1/FBY+PW1rVTTIpf/NG7+v8T8sU4VNXvnluxT3HW5QJXL/jSz6TjYgfVwnL2oPO1ah1iI4gXdIlvssrnR9B0lpODZdmTzjvTb26d7OEpMlndyk3zEd3u2l0IyQhCPwWDed7wYv4tgIAy0P9zxGdiXLHAligFDNjhWWJmTtJqH3Qo9imVU8G1qLVtNjJFVrlxDaPLTlvEW87yq7A3zIpaH3ppwS/3SJXYjksxgcHWJBJtxw9Bi+bzwDXM819IwYKLghxAWIkn71Q+8BwfBwiicyzcPw5t9eBdc6FHLsGZDOFWWRZN5M0GedekLzWk2sPfu1Uri4wH7hDit04sdHrxx/XXOv0Vq+meD04b1zqpG58/8vh1gCC1PYJXlWDAzOwELyDpthiS9FETV0zJelFDDxeYPa/CXFt87KYu10dBR3ixKGrZWUMBl/2lK4b0vnF1VrMcV2MHmkIM/oyyE0a3pQZhhla0YVxDdgxZWNgIcaNoaReIwnfs7JFgrM1yStRjWr2rkVLoAiFXSqwGBiimvhh0tC3kOwEHGmIt9vWB1ONhmpv6viarSZKIxclK6O+uluhOnDZAJ5vG0FwBZflizHqQQwAJib4mHld4fahjiBrLumGPu4SfhpOscIMmNeO+Xi8gcb9V8x+znZrSHBIU6pnz+Au6cM02IkBXtiskLCK567K6xyFhiWe54tsIDIG0qS8EnqhY6zmlIQqsJDofChqwqMj24KlkcvtRlx6n9KNz2/7eJAkjci+3kCMUdACQPWXOILs9/2UpVWzWaw8bBhqrHk/pjuRkqxdxcc5Dp/1rk7Cj8hHZm05ZiR1u+PxuptoBbjnT0XeXMNFHRh0/UepCsiX+bKCvKiovgKnMAd6+AdZtT3PIF+SMrnOsxoTI6E2EtDAooZcx7QIljfo//1mmxT2ajkTg7I8KxKJixxvUH7717jjt4+wVnWVyFWNMKH0itcCz1o/T0JE8krXKsjryfL4fct8/hp4reoQld2FUHcSjcXbWWgJbgMaBRl4M88ktLghjh5o1suPeD8eWHPziEknWdf/lqo3al3WphN7hYY0/kYR5e41Jzx2s2i2/401x/UIL9pAYwXjzbsODYyN4PjA0ymEQUfVsVh/0/x","layer_level":1},{"id":"aaf4b31c-af75-4cc4-99a5-d5e6f829f80b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"业务数据模型","description":"business-data-model","prompt":"为AI有声书生成平台创建业务数据模型详细文档。深入解释Order模型、Subscription模型、TokenBalance模型等商业相关数据的设计。详细说明订单管理、订阅服务、积分余额等业务功能的数据结构和业务规则。解释订单状态流转、订阅周期管理、使用配额控制等核心业务逻辑的数据实现。提供支付流程、会员升级、积分消费等业务场景的API使用示例,以及业务数据的统计分析和报表生成功能。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","order":4,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:53:10.2734576+08:00","gmt_modified":"2026-05-13T23:44:05.8087408+08:00","raw_data":"WikiEncrypted:mHLzoBKW/ak+KVdbda4A2f+zxDYdI3wtjt7lbGxSfYjXT76iFeqVBCWbJZabdaO9Fhbty3v9dpA6PosmtFpiJgfMLz/lRRL0tbR0pi/oGgzkjSrSqYv53oFIPPaembp+Rf0vFzGWEHIc1IWhmJcLsCmybj4M8Xo9R0i/Q9yX3rROnhhCac7YwUnUeIncsKYSFRxlX0gXaClZoRXcJC5n2qetKK8ltOlZ6FGPHowwYN22xbZn2PlD1eCySs3ju1iD3x5FlnnnjMQm05nxOHfMPVJvftyA3AtTftvQgpYmE15PQtM9XU7W3hlF1EIjAL3qbevR8GIJ+95xuiYstAq6oqkTZkAAC+FhsWr7s+pX7GgeNEwddMIRvM9WkqHh6xbAZVm55aH5k6Gq6kK4+O+9ew4Gjja/GsKjLPpCQgjZOFdHsdrvmAZfVDkWOzZhec6EMhZa58OKtkcPjsUus7JDaxh5gq1JbZd+SodWcjWG+2sgx2UVbdgw2HMXrPpGhHfExzXCgYqY2m4SFwT0ukGBkqCXeeuVTAQVLjUKscuTpsoqtqUVTKhALru4avrDdG7/bNJQzzMjDJeiyazQ60B6NYCGCIDlyw2CpgeAQz/xko1qxN0reVLdrqnxOH6cSKzl+hwCxodr/AWezMZg+Vz/DFmkP5tHIYiDBFDS4gdi2oZn1dvdT8riGSluaRIYA04Z8LBTGqf02ePmIJJAdK1Oxd7ZSLiFh9CiIpGZgXOTy154B63R25J7reBAI2SiciDZEwfsp82Qyi8tYlOgzGpHqiWYKeBmZNtxOVQMIfAKdgXZr6vd4E8XepudfV6ATtdIUojxwsBAZn+XFj71s/AWufuKrW23Th/KMi5g3PwWuCFgwwRDsrkRer5OcT12XaCRTQJgSc3uipSKwTrw05dxD9toe95Ah05Fs1CR6FPqIe23iVq8kpqQMHbwT0SoUkDqmWmEiIvnoTSfyzz0lM7twViRaHmdjgud215H8zNS1HoELTFISSP9fP2tVi749nXsJLAAMYyA5yLmMPRz/e42CUbpmAg9ube7/W/P8teGgKMqNUCoHQ6XcuJ1q1luZZbj6Ex9Yo7JX8+S44tok7vkbiNOBLFpudPVX4Pw3HGVhxoZppO9fgm3KkO6T8Pb6d63Pv8hUNgZcSBsVKkBCXRkfg==","layer_level":1},{"id":"abf93eb7-8581-4231-a1cc-6de0ab53af8f","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"API集成","description":"api-integration","prompt":"为AI有声书生成平台的API集成功能创建详细文档。深入解析HTTP请求封装、拦截器配置和错误处理机制。详细说明API调用策略、数据缓存方案和离线处理能力。解释认证token管理、请求重试机制和超时处理策略。提供API接口文档、参数验证和响应处理的最佳实践。包含网络状态监听、断网重连和性能监控方案。","parent_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","order":4,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src/utils/request.ts,my-uniapp-vue3/src/utils/storage.ts,my-uniapp-vue3/src/api/download.ts","gmt_create":"2026-05-13T22:53:14.6221736+08:00","gmt_modified":"2026-05-13T23:44:44.1744678+08:00","raw_data":"WikiEncrypted:aJz2T6tLo4zXpZfEjeZbGobiluRlM6CgD6tF5XPnAeFRwr4G/M+8PfgRD6SRjq1whz2F9IZi33JnUmCPjG8LcUB40kvxNj/8jOOjzG0aK5DnXh+8xV99oMqxSZ8mjGBQiiUh0lZK3MK7/v4GU4CKd6MtQsbmxpIp/VXe6Oob6AOWoBCZltdio6VQCv9Kz2GK9XD7jhKWFgLqLhdTPOXoD9o7PTM9qEaALLX1TUf393czkxKe70K8Cm/TQsB6jEOrq+gd2A9K2+RJ9SCCO4bgI30/V/1qlPEBIuKS9TAO28X1nJYeqmNfKNeNw6P8CmtB84qWj1X25U5kc+Gw+HU7Wx+XKM9FeQevxRYt8WD0pRVatqiFaj7ukwpcZA3JR5fQB8EJ3992Y0Rw4Kvo0ZiavFA/+0Yj1vYhtK3Ke4kzN7EWH5569OEa3Xk3/p3VaS5IfJm4fTWAAxr5zqeZRWj1sD9J0X5+h6Kq2ZX81xYMFJLk3liAU8Nmg4C6uM3LRO7/ndtdqtFlPwFddfAaZymtgZDSXu013UUa4X2HLukGLOuwJHmo5OC3xJS6MhJbRap41gmFGcap/yq7CJyjksrmdLLGv1UFLkfUOt+9u19asee12DIBiB+U4g04UwdHGvihGUbaH7PqdYxV5iF1iZN5d7V7yxQFfz6/XvZJXdY6m1+3eaU9pbdJdEL2xJEsj4jcQQLgk2YLBIBDAAWkm73u1eWD+EDX4wsgThGe20Ov6CtNXoN6MuU0howDnOXkqURvV7tIK4jQqOzXI5HLJqr+vwpDVJVkVX2YcSLAnWzTcr2s31MFmtFueH3XhsQkkrnIytpbZ68XAFxF/PHC4Fz8RMYHuR9dk2jBB8BC80Qw0Es08fe5a70typWQtuwtR9V/tmarAfc8TwLD168uLZeQs8AySrm3gNROfhc92fE3MUC5j+9XW4J+BE60NGxqnmokvnE4RTJf+uCHBEBEM90SN23xp0Z6GVVYgaVhtVeXMD9u1lmfCorb4ZeH6GdG9ocwGFwpFdJKk6rVL1xim5yFy32oqnmEhe/0dHqkpmOA+1VFbITM77JLQ83q2+XcpY3i0yl7XWyz/Qak9529+9+O8g==","layer_level":1},{"id":"3a3cccba-bb4b-4d9b-9b41-12c2f654b296","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"备份恢复","description":"backup-recovery","prompt":"为AI有声书生成平台创建备份恢复文档。详细说明数据库备份策略、文件存储备份和配置文件备份方案。包括增量备份、全量备份的时间安排和存储位置配置。解释备份数据验证、加密传输和安全存储措施。提供灾难恢复流程、数据恢复步骤和业务连续性保障。包含备份自动化脚本、恢复测试验证和RTO/RPO指标管理。提供备份监控告警、异常处理和恢复演练方法。","parent_id":"a7644116-2431-48f0-8cb7-2bac60b02c86","order":4,"progress_status":"completed","dependent_files":"server/scripts/,server/prisma/migrations/,docs/database-structure.md","gmt_create":"2026-05-13T22:53:21.6330328+08:00","gmt_modified":"2026-05-13T23:45:37.2523832+08:00","raw_data":"WikiEncrypted:gH660BxV3R1QNL1HjvdUy/+nqp0sicBSyDHzmrqVhUKQjwaVzi8BZ915A9J1LTon5AaD8zMO6Cm9BNi2/BqNFHQxh/yE/ZaQ4yxj8QQ2zw/p39A10Edcu/jPLVbJuYKs+/grUaWfD2o6RcClvfjyEZM5n+ovuuKXsxMxbvy49hnTRPYXqaMGioIXGFGbyTYIBjAotjybD7MGdW0IwgLtq+SYzvnsnqPeWOT5S51tO7uyYIKy2gYCkJ7FcpGTkzOSDCYfPEXacW61Y1Vai/3qiibDymJk5w53OVMSBs3RjbJEgdMNjv8OpKdqAyNb6T4zYxvnB3kW/wnhy4H0YVfMLhLo5M98xB4nY+IIxtQOQsQTYtzyRYKB5kGxYJKKbIovYFlSKmsgkiDT7dMFK5zYHJjsqclNRzaoFT9YJNPff4OSRO5YlIOi+jTViMGrBJdXzwTDCQ+pL+v17JA82Klk5f968C9Rp/a8PPKkTqY1DapDbZvQ9yPAwvomj9lPE6+DkZoOd4QbZCDoPM7M1t9eBiu9TA+t+jDHIjGmGMaS2GW5O6cwvWfrY/6ySfKY6Y0gIdKscP5k0NyqLcA0uxVmP3+bbbIweG8Ph4XB9W9dCw2yOEFtRWqoGFZEQKlPIu/vXBMrqgGltaGZbvLDWFxiXb/UJi2SPrJ3E78lr1eZKFSbfYfIhtJ6sTkbK2mrq9j3EQJU1rs9nSNu6thujBNpZGFNqYIToA93kO0iCgz0zU8I+mkqdkv1Q4PfsFuPAQNA9lRc0jNAo2gb+cXAu3YdINuffleWF7H1D35NF8Y3BNdyl0/86FOcdI7xpM2BLRo4961CEPP/ayFB9fs5T2/DbynIO+b8BUnlnhD/XsCQUR/UVXc1WC3629EaTsiCZ9CyPMc58GVoprZVH7Yvx0eI2DxEOynd+oCWgMHljM5Tvdd4CSlZ1LtSUm94L4tVs3UGyom7xxa0RbcVebLTy5iAN6Gh4jZB0iyxyNHtEhQ91OPtTrOh2HeL7uVyCVn9CU9RzQhng9JIzAteK2GbTcFMHJ/rU5yqh/R39HOQdTEaDqQ=","layer_level":1},{"id":"833f5b98-75ad-438f-be94-d80ef28ec6d5","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据访问层","description":"data-access-layer","prompt":"为AI有声书生成平台的数据访问层创建详细文档。深入解释Prisma ORM的使用方式和数据模型设计,包括实体关系映射、查询构建和事务管理。详细说明数据模型的定义和约束,如用户模型、书籍模型、章节模型、音频模型等。阐述数据库迁移策略、版本管理和数据同步机制。介绍查询优化、索引设计和性能调优方法。解释数据验证规则、业务规则和数据完整性保障措施。提供数据访问的最佳实践,包括批量操作、分页查询和缓存策略。包含具体的代码示例和数据库设计指南。","parent_id":"0644fa6d-da66-411e-b766-c810e7e56553","order":4,"progress_status":"completed","dependent_files":"server/src/models/index.ts,server/prisma/schema.prisma,server/prisma/migrate-genstage.ts,server/prisma/sync-genstage.ts,server/src/types/index.ts","gmt_create":"2026-05-13T22:53:25.8614416+08:00","gmt_modified":"2026-05-13T23:46:55.0652117+08:00","raw_data":"WikiEncrypted:M8uljGDGJ//mcfRJly0hh2/mWMVZAXEARazEIIgMSV+7zh4rlxI5/PWj1ISX6NLHyPgijvBuT/wC8NCYThAUwJrnmGp4KLCcmHN9oA9WCL3d1FqkQvfnfeIfa0tBvbEFxYgbGpY48/V/jEcXVQfOoEWBA9S67HWmJLHSoF+SsHJ3a1GjPLSP1vKHb2vTIHDZyWvAt4XGuEiLmeuRB7h1eSXJ2sLPGoyEd6YrfUGe6SAQSbxpptSSmjKx11wO6lMXANa/v4VQQSL+XklObl/rKBEf67cSbWbh7A4PYev8CmSnYW9wE+lrUkHj0DoujLM5ezbt0fblqK3MO4p2cy1sNmaSRZbSKt6clEsZmPNqW4l1Go3bSo3kq+HYalx6zxK/WxROFKzv03sJlKgTKlorRWL57idtLnsQC673Mx8RD/DhXQRt2FUeddCUEbQKY37dN2Jp5J6V6Yij6GDdl6K11KiQSM5xIvq7Kag1GN339kml3T6Rq1SMpfDJayNlpCQKv1Vs2uNxc4TFUTPI6rzHx0wGDQ4ZhiyIc8ODn1+9gzZ91ozI7zVFkr9uPBn4S9fEkuauRLE9fLxLnWZeUtPVKCHUbFYs+NNTW4F5UdEH5PXHiiTo9frcahBtJerZSZmq84EXQfskKLY9tROuESJZ8ty/4HylyV+dpnV7bu5Z353A4FIEzIznpSavX5NmQWtZVEgSZMMWhrdBCDOHO2GTTS2RIhRvlJyMCpDhOtKxprH+UpRPKsC1APT1BZG9qXl5Z/Wr2qFRGs4SJBudxMbTD91naXEtQFwymkPSZ9U8Y2l/W9njvWN6vV+Dy6bktVRWXz1gSJEDCR+JJTw1ke98sOBiIxmMCdvL+u0x0ivmRcWviIJSyKTcXl5EgGxYsXdvZGju04SwwtlImFYknxMfqYea2OwhhYw6MZshbvEKDoSq+kalX2VtO+78B1T/jOwwk8dgn+FbGjZ1m/dVRTJZeTznU8GnPlshWpcYnHC0tjnfKAcU4zSfB0gQkx17KiTduodw30/ramo4o3/ReUTa/pSTf2VVjUIRQVdC4yvUl14fwrcMg34O8PBzM2VdokUg2G+8ld8YhDLH8dWv26ZeV37JogKa7pcR9cosp6F4Nhdw9AwdCyWoG/uWWL838sjHfd5bcDm2P3KTwau4/ofs7QTqEZSScierhY4BP7/OxlFSY/kg+nFa+IXqjIFeR7RjVTkWdpAk+uXhJ7Vx4cFrt8QAUFXUcWrO7k/EuzF0PEpJ42SF9Y4zBYg2k2auRAt2xdfpIlCgk86hbkiABTUqVhrtaNc+AQIkIDGlIBc7EtAsMWQRiDOpa7kksmXNNYXfoOaNIVP1YHxVgcA56CmaznWAVWop94771WWqdGxo+Epznftj7v5M0M11vhoHdH7ft/Y2zZEn3FhKxoa4pmOksk1+a0YcltBKHP55l27ABmAX1N+C8mQG1T+u54OT9H3eExqNZpTNTlDgGkl3wZN5gwVxEe//i2S3b/81B8nMX8Gn9HZG4JCgFyBV1PJ9xOZ62Cbjj+JS+7lzBcPa1FrQCQ==","layer_level":1},{"id":"343eaf6f-27e9-4d65-aed0-ad8cb13e85df","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"调试技巧","description":"debugging-techniques","prompt":"为AI有声书生成平台创建调试技巧文档。详细说明前端调试方法(Vue DevTools使用、网络请求调试、性能分析工具)、后端调试方法(Node.js调试器、日志分析、错误追踪)和数据库调试方法(查询优化、索引分析、事务调试)。包括AI服务调试(LangGraph调试、LLM调用监控、模型输出分析)、媒体处理调试(FFmpeg参数调试、音频格式转换、视频生成问题排查)和第三方服务调试(API调用调试、SDK使用问题、服务可用性监控)。提供常见问题诊断方法、性能瓶颈分析和生产环境问题快速定位技巧。","parent_id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","order":4,"progress_status":"completed","dependent_files":"开发计划-第二期.md,docs/app-troubleshooting.md,docs/TTS成本分析报告.md","gmt_create":"2026-05-13T22:53:29.7653831+08:00","gmt_modified":"2026-05-13T23:47:35.0081537+08:00","raw_data":"WikiEncrypted:IGJnZREY6KPscHFIFvSUZI7P0lDNCyVn9mxbgFl2PoAyCROUkr8vvxaIh1uSMwjTV46gwFXjZJdQV7w37qXZ4PPM9UtEaQz9Mcc72YUBXKQAtKXVzAS0JPaAcYlD0AOHv8InsDI0ab0Njr5Xo1WN6AHz+Zht6rWRnZJkK9807VORVIZW3+afD8dJ9hF4Gu30bM+GMRhshl0vMOWgHEQ0zrNG2xFc7L40lG6T6pWowPrZw2pVl4RBGXRyuS/L2nmoyme4QL1JnBAHlIKvaxwJNZYpeAtW2glNiIYTWxhv4g4WHbAlDxPetEyLUT60elrWlWIzi/1WP0amaxO7kaG81JVv573YnzL5FJqyoZdPUh+3FQt/l+Z51o4dE2xDGu9F/ns7OymT76yTd19/dZoZDwj9dIwvtevqPNHlrdfeXPCCYCsTbIiOoO0pD1CSc91DO+Xe4T3lFsQ9yw+7HcECJln5t76MjRw4RDmP+8ES1SFON+yYfDaPEIk1SO19R1NXMwipHKgLlhOwrQJyl1n4pjlfJxRxyZhxeFoy/DwiDDGkemF4fFi2tzwU1zO+B1TgAn10isvPfHKOYif03MkfBunQvJWZyazvcTbakKkzbK00FK06rjxlXUcdyyFNOgUtNF+83EDsIUR8kxZg3/YT/OLQh11+VYoXPzGSV5eXevAamje/JFUCUS84B6aCGqk7rECfPjWCqcfNWPYuIwOElmMhlQGWo7HN6YZc3H6C+WQIczj1ghRmCy47DFFbIAPnJEIiSuRK6uvZuBwXwM3xyx/S8+G9S0Wmo8H03qpAVELb4cMClwzWBvOLljzJy1PgHFoQXKpHuYzT+Z1vt6VwrnufYeD0ThQeSCscdyBm0Mid+LmA7GOHckLk0YrwaoZZmu9F+TXNSsjBzCpJy7X/rqnAtpSiGFl3DSenKv14oHcSReTFPZ3+fXRUZ4lIsnOU8Iqece+MTs+OiLyTK0k6EE9ek9Bt0lrX36VmYO0qppo3s5xUQ5T8HZdiBV/rr0OrnDu4YUU+LQIBOVSDYkpRB0fqsIt4Q97YNjQTzztQ2bKCVUgxOXf/2l3ZFaySJV53wBTd/rA3nX3kAAQQ/9A09XFgsmTVYwH7vZMpTO+BVz32fmJDx3FyrKWR8K2Jv6cYFUo6KkDqu93NDkxA7tTAjnaL5gStlT26aqt6TlK41cnHqHslEotkGmFvscBE8CDhmpDRWi1yr0YSXhIjly9KJxt44GiiYuuuTnNoZ6KhiMg31jgvVQuth6lEvAtXIC6+zOgte2HB7dVKKHFv8DiJWN6+xnMW+gS2hRNBWGJ6By4=","layer_level":1},{"id":"d2e783b4-39c9-45ea-b5a1-1284e7fba1ec","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"部署与环境问题","description":"deployment-troubleshooting","prompt":"为AI有声书生成平台创建部署与环境问题排查文档。涵盖Docker容器化部署、Nginx反向代理配置、环境变量设置、SSL证书配置、数据库连接池问题等部署相关故障。提供容器启动失败、端口冲突、文件权限问题、网络连接异常的诊断和解决方法。包含自动化部署脚本调试、环境一致性检查、服务健康检查和回滚策略。详细说明生产环境与开发环境的差异处理。","parent_id":"09950a00-d436-4c56-8d5b-5f418928f264","order":4,"progress_status":"completed","dependent_files":"docker-nginx/docker-compose.yml,docs/DEPLOY.md,server/scripts/deploy-auto.sh,server/.env","gmt_create":"2026-05-13T22:53:34.3246003+08:00","gmt_modified":"2026-05-13T23:49:25.9524503+08:00","raw_data":"WikiEncrypted:0IKfLNOWe9mZfG1jVts3wxflhsbkeCnaxRQJswt1s6d5VOcqHK8cakRmyu1OKjh16kD0RhfKBYqFv41y7pp/dTK8VmWUlT29FeeLIjkdFIPv3pkk7747/14qdrqWevSU0eq30AhnQv969fwNb7bUeM0+gPk+YgQyoOLLpZPF/qW1fagF37Rx9bg5UCNKWzQlU/0VqjNUqSzIReA28oaoSGdD1JkP5gWVvn61ur/R54g4nLJurC2Sg5cTjqDFA8SuVzouKxmjRgzLun7ydMyyvimE81qlOlXwwMx5e4Cuy2REaPwS5m2ZsebwURIoAiTEGmgsi1PZjWkENnslpiT/pWI64ZBvynPKoa6G6SLWaTyRE4TO8x7JjmjhF37g9hD5eihgF5aSg5CyEijUY4+6ba6cMkGgrMnLV49SxqsGETZbcpIBIPXoyDMF5d4+jugAO6l9Ov+RA5MfWYy47QcvV8IXYo4loUcohAqEKgvPX+SNMxeu1gYjnN42CsrnDnvxg1vLw1RzDZPaado6ML5FQkkme3i8/0lco6VXB7fpvnlLs2oKKMDYaxGToAhI5uZK432ohl/Y4rE7h5HhXgAuokvFmUmb+GoWvwPkH54FRtANnYmNQym0FmcYaobjbGGyWSkxd6LgqiWcJ0cp3ycxALpNLW61tqc6RA6+mNNVnnxXEf2eRIRztiwzAHb5rD5sKCar6Aow81jGiXx0fbVZIf5aYSQ8olBYvqD5tPvuss4PCb9JcztdSDLPrLTKbZDGcQrjWaE2NoQOGv0OStSG7VNooGsQIFh9hWeLsT4DgFVZYGbpRP3m4W2QfG1mjXGMM2Oeo+Gcqkhr6Zm2cYEhgG2UNR/Vtrow0HJqD5lQVS6k+/92DnEyE85yK7b2D6vXsTeZGgZblRyJTvDb+NgVKWUutTrn4K36EXj5Fms1h7qzIuCiEZVmCI4QCZCVjbROnO27LI0jeM6Gq17TgOMa96XnsNPlwlcGJeATymJz1Lmu1qgut6X5nC2OQRiThxzwpwl3MNG8S5YXKlaXxi/sBPWL5wXz5cIwyVEoOHiJilyfesELP8bNYG82AOJIhbrfIZCHkblxB8qyPs5UrFDChtYEMDDnWOedSoUiTchCRiv6imOw2DaO62lzrMCuat8KUbibmG6+WxpfOyIkl9w1FrMsaC7/J5yce3O7gmBH4qnFjLcM5AJTb55yKINSdZbzZQddHLFvh6nT6yACO3PZtW4YqL8SLJ4xOYJsZmKIlEA=","layer_level":1},{"id":"e7ba7466-6b57-4a3d-a4d0-fab5b2dd7373","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据模型扩展","description":"data-model-extension","prompt":"为AI有声书生成平台创建数据模型扩展文档。详细说明如何扩展和修改数据模型,包括实体关系设计、字段定义和约束规则的修改方法。解释Prisma ORM的使用、迁移管理和版本控制策略。提供新表创建、索引优化和查询性能调优的实践指南。包含数据模型演进、向后兼容性和数据迁移的最佳实践。阐述数据验证、事务处理和并发控制的实现方法。","parent_id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","order":4,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts,server/prisma/migrations,server/src/modules/book-generator/book-generator.types.ts","gmt_create":"2026-05-13T22:53:58.1389415+08:00","gmt_modified":"2026-05-13T23:49:34.3351148+08:00","raw_data":"WikiEncrypted:klcgW2PbPxJambbKMzvFt9DAOdpR/94CprJ5WtNni3PsQz7f82LIjNL0T8FSPI52/pX1uHDj2Kad7D1+NuZAeHq8qKN9du8/jar5A/HzxYUtMO6ZYhCCVoj2xHWp63Fsq4QQXkfLHihjFuZwtHZIAKma3te5VmcAQU4vIi387QQaAZ37N1GMwiJFUOoXjfI2TZ7thTHY0ccgoEQNzfCC9NeC/aSCCInWq/ZQHFC7BfnYvC/y7N893E8emhRKrkp1qMCt+AgvGfskFygSRY9V4tRrx/pMBKxLCV7SfE7qKXX5af4qZEvtH9rRfpCeWsaIlSXT3azAwBzHHDN5PoO77qIcvsC3iU8eGYoBLWziDU6YsG2yWpyVaRMn9l3R/6Qus0GYCqH2WWwm8FheOfbJl1luC2uMXRsU0yBYXaTB1G2+nfVkAlbU/Kb2Q8GI7yGOoi+aPYtXq/C7OLtFVOeBLJW4JQHcooEqjYG6Tsv6zf64/qxyJovtyGsx5s65tPlprVk1leTEDYoCUBNdktXelG37r8t+DPkF5/xrZfCLcHR9C8JeT2A85xv4rPA6gN+ogewVVhZnzP+nunHm/BaWKlHu1DDGaxaweKseYO08BVKOTbQR1LBRPX8yJ+GJdJUUnbQNEIhPxePz2wEycCh19a83kUpnrIM2bh2Tiw5SnKbJo5AEcbzMNRaRvyiGPLbPm6KeQTXy4lzlkQaSU1d5S7pTHZMfuWvPJsmMM+UXrMd4cUAHxdMiAeU5g1jCpNcFwpbBMME0NNxrZ5UuRkWWKF1LRYjGarvcFd3juOcnfAwkFk9CmQun+KrajbNgjhRYNO7lvO+ldGMMqrWai3obejpwaZn8SlW6erIvJdJUnKtF2kQkYs1d4I/mspCIcn1AebRlnLBX3M/WfGDdBTYVM4zT0PW20R20aZ5qo135zcWLMdmi84sk3i1gpP7P/i58jd8O9Z0gbBVTxrEektYQpjt/MPM895AxFXehdh4+y08y2hxTUIPRBOUcB9q/l9/TxbCw7JUqekHBnZNJIBM0kqUOZdE81zbcEA5Jug5LWZ7/OAqTmKoYb8aDj1h0RNOeZssFOmRgTsIkdJFhFEOsXaAG7UdnRq7fMc2+uH6Pyuqu9g5eMSOsiWHu1i2wAGpLGL7hnJOYqmHGehhwlogtGg==","layer_level":1},{"id":"f7b6e663-d6cc-474c-979d-d16f5d382722","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容管理","description":"content-management","prompt":"为内容管理功能创建综合的使用指南。详细介绍收藏功能的实现机制,包括收藏夹管理、内容去重和批量操作功能。深入解释历史记录系统,包括播放历史追踪、搜索历史保存和清理策略。阐述评论系统的架构设计,包括评论发布、回复机制和内容审核流程。说明内容组织方式,包括分类标签、搜索索引和推荐算法。介绍用户行为分析功能,包括播放统计、偏好分析和个性化推荐。提供内容管理的最佳实践和用户体验优化建议。","parent_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","order":4,"progress_status":"completed","dependent_files":"server/src/modules/favorites/favorites.controller.ts,server/src/modules/history/history.controller.ts,server/src/modules/comments/comments.controller.ts","gmt_create":"2026-05-13T22:53:58.6161355+08:00","gmt_modified":"2026-05-14T00:37:28.4660468+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CF2QNPg3Cww8F3+JBf0C3VmdbLEEe6f6zoXoPqx8qxMKOhZLHX4H6nWDBSxR7UpOnt1SNtbABlcP/Z/E74GmVlJrIJ0IVm/YqZn2sxnrww0a0kp2+LdffzQvzwO+Sf9zCqVv3YMKWWtvY958ZFh/SFkXdd9+0+VXRovx5wYKfCMh2+v0E5k/1HhcC/SCq9CMYnQLaq6WxDghItLgETN25PgNAOpx5Auln0InSGvjpqDswOf8sD5WOilaW+CvMfnGObVD/oG9UClGo0tQSNEqq2oYea7H7dwgJBxx6hWQS8tdsHqDNb6w2p2uQ7LTLNPeLoEmpiUPs1xcVNzHQNE7x7UgKzaGz2r3I713uZ6hoqVDY1URRIvw5Gzj6TZ/G/b/WrXgzOHpMmfxee8DUV5Us/ZjwYxe2LTSy4ssrI8HiNcEdNbG3MN/McOjMYGxfmXfEkkmAqix9KkWWfwYb9kDcWOBydNn39+cWAnAgkig4nI5oGKsQe6fDTTR+0yWLjvl2d81QbWA+4bopWoGI+F6FxR8kyK3MKb39tEE+38/TpNO9CL/HLgmNBBKpC1WQgbnD6aO1lPLPMj3Xh34ehTOmqM2bf1Rg58ZjOAJgQ+oySIxV22yvb8RSMHtusO5K5UosJPX3jXBa4j1AiXmWtyevhl/c5p7YBnFLSp94Sx2aC1ImkQTfutluRWR/Haxn2EUw042JG/uw7w+sDhUBkjwbTSjN9rUu5QrjHVA6Q0wE6jXhJhorYklxDoJinlXw+o6AiMqeK8bgqQuOn54BSuInZEar7iBymRG4O8Yw1JdWoT9WeoP6qWP4MgDeGkfJkYffeUcrbcUEPSN3uH830IxNTkXjcPhUAEMMLH2K//h6wqmoFejonk4N+WaVv1iqGUlby5nF9Y+RcBzONCQBp9zruJcLnX8Gt8vaiv4todSKD92ds96kwaz0FKRdPaMJbaQ1GR9uwic0TSGAy13ZCfWLEp2b6bk1ILg6KRGrFhMtQU5yGcNmckwIdQnkhGoFQfKMrUNRE0WO5Kun0mZMzNR76e8LH48wdD5cE6KqNOMnhkIegnqknI1qCLxr8DMxfH2RyDcJv9WEv7Vf8p52k+S6Ox4KoLN9O3eeCeGTe7qmdzss8d+q06PCOFrC0OjeddXg+xamQje83ALcD1f4zhjk+AuwxA8HRtrSfa/pE1AoIZFdt8Z61ZK6yN/HDWBx+dYw6Zwey6f/qyknZaaDbDtg0qr0pKpoN9KKI3B4uwTTSWkmP1CoWxM8kgu8UEOu4736tjVS6hTE/sFqmeAZnOG4ncsj6NirXiX5ZaxC0LLu9MqJBMKo75J0u5M+eXE+GCgBWA==","layer_level":2},{"id":"ba177c93-dea1-465a-bfdb-4d4a5dd8e976","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"监控与日志","description":"monitoring-logging","prompt":"为AI有声书生成平台创建监控与日志系统文档。详细说明Sentry错误监控的配置和使用,包括错误捕获、异常分类、告警规则设置。解释Winston日志系统的配置,包括日志级别设置、格式化输出、文件轮转策略。阐述性能监控指标的收集和分析,包括API响应时间、数据库查询性能、内存使用情况。说明实时监控仪表板的搭建,包括关键指标可视化、趋势分析、异常检测。提供日志分析和故障排查的方法论,包括日志聚合、搜索过滤、关联分析等实用技巧。","parent_id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","order":4,"progress_status":"completed","dependent_files":"server/src/services/sentry.service.ts,server/src/services/logger.service.ts,server/src/middleware/errorHandler.ts","gmt_create":"2026-05-13T22:54:11.8257037+08:00","gmt_modified":"2026-05-14T00:37:25.932037+08:00","raw_data":"WikiEncrypted:HL3VqGjXq8A3aGeLxAjVPg+lnGgkT5PNghnzp51sgLDjuJwvzPZp6KDp64sXTqk/5Kv+l8CP0s93FbLMTArkbZizdvf1hTeGnHKkFOkrzNXXc/8NY/w89PIbfXskvuG1Mf7QoHDKadRh+XjZckZz+nPKT4aTL7w7T8HjX4DrPiFzX1hNnhmmIaTugMU52NOOY2rQUwZK5c6EljaVn/Z1aIfa5H7tNWjbw+Tlg+4ryF2VClwyzQMgj8e3m7yFOKSG4/gkVhW5GZ6+0UKb/p2RZ2GQE3uFJtfVvXzsapKsYP9GFNrbOtFEZ55ljfWUVJ4sHr9DkLs2UtT2ITWaE+yH68LnxRBSIhWL7SRnpOmAajrOLyI+OWNcbvd0R0/XQuWD2OOD9BCSh6P2QGlLJ/aySXrQ+VNCIQZ/ebOSGmqKi3XuNGW3EoWy0kcM0FJHLd+0QXFzQv7CAj0aRqMYC+J17mUSfYpfXMKtVzXmnIbKXvCwcI6kdoBS5qm+oyhLag4Nv6X0qYpnP94VMGeCefqdI4UJYI3+nLySpjBkzb4OTc/51YN/sVeGMa6580oaQmtkzWUtmiORYWlvIGkzDdhPrbHuNfNHaxiXMN7KEQTeks+SHKhtPCAKBcMigWBCU5epy9cO4vRyw9RgHButSmLMMUPoCRHyYZNgBzQILUWXZ+ImpEML6Y4vzLBMZq+UMxm2OrN9hLc41xcgPPClQDOSmB4umzd38kzbkQbCIfSpMY0hPmfgPoODwhYXp1fSdvclE63KJVbnxz+Y8zRA0WUGjvoBnEgBe4r8xOle6xKyQ0tXil6iqfGsz/S1SwRRQC0t1UNrehCjmjtcn9Szv+lb+4ROdr5ExxB8IKjl9Kd+LB4ssHVDd483+8ISsdDfzs/tBOalITPgzLpv1Z/DV8erBQNF7iCG9IeiT8c70R+ED6Hd9RKoBFhLir4YYlEWKHmEdd/64uoIxJqm3Ll9t2mHbj9REiiChtfSGAECepF6KjbqnBNT0gljnx/h/GO2VZHzRrrPILTfiNXq2rNZeS9pzBIWtzbJgHultHLX81Y1SM853aVzENIup8Ijt8Pp+/J3H5fPKcvZZDMxWwuD93LVGvGDBdB4Zjfs1gvHqcvqSjYVQ65OItT6KuZYnXd/o7iiYJ6PMRRkeRN6Dr7oqN4DW/eFB0hls3vu6SVpiBEamf9W5tuPCUEwEJKRW1XkQlDXmvNM7OrwM9ZOGpfVrs1p0OBNR6s7oRJWAgxaJ7zeXGa7yIed9IQ82ZqJaiO293vYurt8K5/95iJv2expTfb9cw==","layer_level":2},{"id":"8734375c-1841-4837-b6c7-a7df64a2c142","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"容错与错误处理","description":"fault-tolerance","prompt":"为容错与错误处理系统创建详细的技术文档。深入介绍故障检测机制、自动恢复策略、错误分类处理。详细解释failedChapters失败章节管理、completedChapters完成章节跟踪、progress进度保护等核心机制。说明阶段管理器(stage-manager)的工作原理、状态检查点、断点续传功能。提供错误日志记录、异常处理流程、重试机制实现。包含常见故障场景分析、预防措施建议和故障恢复最佳实践。","parent_id":"ed23c946-e41b-4585-8aa8-be7382625e28","order":4,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/fault-tolerance.ts,server/src/modules/book-generator/FAULT_TOLERANCE.md,server/src/modules/book-generator/stage-manager.ts","gmt_create":"2026-05-13T22:54:15.295844+08:00","gmt_modified":"2026-05-14T00:39:38.0670564+08:00","raw_data":"WikiEncrypted:WdIGZutiaF4Hbe6C63vvQRtmPFFkPsRCHfRLvQW0xs7irMJMCWpnt3uXT75VG4IQiMJERhbEruJsF09O8RI9HMzfN84VzMydN2EWccHMg0hiOQBpaOtV9uwDuuuEKmnUcg/yzc19vlo0u+qbk2DFYMZjCpHlAojmSOT1JtvzH4zuY1yKwU260IRvSJt3DeLDRxys4TCJHJVJS7gSTflzSUxuMxkeJhLY6Brs8RmX0yWnUYzW1i8wA5iKCn66j5n9t4p2/V4Ci+CqZCWEP3zg+2Qv8pdiPNsnW0TQd6hm48QnR4r1rClaIlrpYwmjPqOkL9wGZnOU8lY8GkXPsGXUwDTa/X6oz/rba91L/sG8OkGlN7egNnW0m6yXMHYAFXQ+dU7kMLl0eOUaB8jqNAYoX7DuM6j09IGpWplJS6NtLasVEIujBrzhXmqxsyUnsr1PQEVlQoil8uqpMflTayiL7Ft/QA9+WNtgq8prOg+p8lNmhpXsfIrckUlFe0BqMuVISe9b9ODruRsNoOZFM2oVLBX5A44K6eVtu0rwnlcyKMkZFvoc9e545UDQ6TfCKifye/p9oUus2PEMd9c5iPM6PLY45dGkFOEcHqz0gUFG49aPvdf5cJ+HGzoBN51Nd3ZFkA2LzJYCtQuGfHkBPctIcCQNyuf5NaV+XH4p9AwDCtIlFbWCfIkBzQUW3QgFUv632awLDDcFiLXMDjSRaRbQLlASjg1jIeJtSMomVemyfleZusWXo/ImQ7XijJl7Pe0qIIBAbazQpP3UfC+qtk+B3R/7Tz5uGm9MzofVe90pU6Okb77018WT+uy610Ef68YT5sVi0HrO/rgP8ze82Y51AHowB+eBYLktcgn+sYOTww4wdgOVKuVf5cfphcZ58my6+7Iz3qOn/CzaVtBrndV3HzIEEAuMZJTFBfh321Pue7YkDEw+gGHQRCsXdwS5/Ma7GDM7QK+CcFN1EMakNw4LfOxytNd1JdzW2LPuQaLlVUxSX3ktAavCz1XslzQbX7i4Yf+zxCl0KBV5+ElaxS9JIebPWnl6GvKRB0U3a+HQQuvIsr/9LfCDcrC20svSi2vK13IF4d50tXBJbl9uCzdTQF0Wq+E2EarE4mOQIL8qGY6QuQ0ZGd+K3ylwn7GQW3TcUtjj68/tXC8l87GGld8nJPjmCZAjgB73jodwqtn7Cro2mlz4NC6rlj6iNMkWsof5pnLLVb2uBqWpAiQDGxD5rM8yp4qkBqQztgzKUvvkjwQjDJ6alyYHgXx14ojdKPUWmv0+XccbNG0fXwEH4NhR4Q==","layer_level":2},{"id":"0c75ea65-983f-4cec-b319-22909ea4f242","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"用户偏好数据模型","description":"user-preference-model","prompt":"为AI有声书生成平台的用户偏好功能创建详细的用户偏好数据模型文档。深入解释UserPreference模型的字段定义,包括playSpeed播放速度、quality音频质量、theme主题设置、defaultVoiceId默认音色等个性化配置选项。详细说明用户偏好与用户(User)之间的一对一关系,解释偏好设置的继承和覆盖机制。说明各种偏好设置对用户体验的影响,包括播放器行为、TTS音色选择、界面主题等配置项的作用范围。提供用户偏好功能的API使用示例,包括获取偏好设置、更新播放速度、切换音色等操作的代码实现。解释用户偏好数据在个性化服务和用户体验优化中的应用价值。","parent_id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","order":4,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/modules/preferences/preferences.controller.ts,server/src/modules/preferences/preferences.service.ts","gmt_create":"2026-05-13T22:55:15.3910727+08:00","gmt_modified":"2026-05-14T00:38:54.3884988+08:00","raw_data":"WikiEncrypted:A2q6dsB1G5KaNgPAwP2ZpFObRdS27OK81omvOR6sxjgo7T9/HBAHxookVaTbyZokzXoQk4TovLfIrlV64yVfgNDzWYEiXrc4F5qoUYt927UzNCSkuPdYPe9lK1rnsAYRnGXd2IjX3XIVNbmaGl7uZKH5313OIyPszRKghykKzZZJ6SgQmvshDuptoUSyZILVn7YG8/wr2SppnkAMoXv2ZR8B0R3D6eC5bsrbl5c3Qn5CsedfRhMWEk62Sk6mXUNJ/k7ynhbcA2DNbSMhZ1BYth2VwjTW9w6h7HO9QPaTWYnykD3ObG3YkvDDbZaCRDQb5PlqkrwO1tXdYOenx1TnwtMGGyX7I7LMslt2wjRv0zHw8M38nyQAXu53Ek9RV/9hwTBaI4Aq/nvy/RjoOPSsSw1Cak2UnzKeq95Y0JPQlG3LLOspAZgO6kugUP+g0K7G3pljFkupsWJH4EiWCGQHfz6c0yc2VvwU6vGcJCjiDZCsTvGjsWjbzm4aYUxQjsRabFN+oVpspFhth3OttbwvsB6VQN9DMd1Kc8MpT1++2BygsBQLBTueCp/ZLqMrvW8WV3ftJjpGbGGrj787IlbXidS1S+s/Sv6KpipPPiIzZrSpmaaHWQQMw3TtVPyNzrVwTNmd/fVN+ODmAJ4vNTzh6e3WtY/OfHMwO7NdNA6zYeo4Gtiwhh7oUyyQ/v7jrVn5DBKSYPU8NR3zvBexxjHQUHkYvsl0Zk3lw44PD+vnQtCkit89xIiCGREFh3I/wtpLCeIrg06sF1DubNSkzBXGFG0E+JOwTyGOO6aQujFaiaxW+T/LR0UIPw0T9lnxHTBojsmEfNdlPPmnIGlnRV7LZCfts2it/koVfjMbgnYPh6AevkhF+iMWf6IeCHNg45JZiZflV2vnQXYVj/yYiKYRWE1G9s6ltMTvYUTpNwGT1jxbVw4dXw5mMGL9oGcHuS9lfY0yjpBQzEgBPZHie84qK8GWdjxuwNBKyJO+I2LvHy+zwAvKujnh9ZdahcoBT7LRsADiD8/9E8Tt6eq5RWkCvWWMjMm/3I0CKcRwctV51JRO/oq2c6l1yz0FaK0ERJpvZQrmY2GL1h+hhinpuv+sCPcFn2cH6Ig0mz4EFyXkyoYPWV7TuGiLwDTwGgp6Rwm9tskoZdOkNiRb1RitGTb4715yZeM9Vz4SUc6F2R6L1Fe24cBSOWHMktFQQrPH/7H7H6ri7xpdFT+SscjNRENKdwWPMNJblVcxXgcpKctLZE+UiSR1rHZDz7FBTpVrPsCcZQX6Ri5D4mGtqRh9EAXC/FXtBJTQBUgUlRxZdbVuSDXsc7j/qDCMSVNtPFYtTs9tKu+MEO7h5vtILQSDyQ4Qnk9wNwUiulZo4UNOwdCulxEQtPv1yYI8wD+UkpqFY+tYgw5CESax6cSlMHv3YgCToKlSbgiIxYF1M+SkzMmIQIwyNLvfxRE4cE6ctgN94N6TogyRC4AOjllT/Hw/PX7/rR2y/hzhNMfpqHiLFtNqR12az43gzyL9hxFebCdHnQPa","layer_level":2},{"id":"ae66d923-fa48-4fd2-94c7-21cd8a362f6b","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"音频播放系统","description":"audio-player","prompt":"为音频播放系统创建详细的技术文档。深入介绍音频播放控制机制、播放列表管理、进度记录与恢复。详细说明播放器状态管理、音频缓冲策略、网络音频处理。包含播放器服务的实现原理、前端状态同步机制、播放历史记录管理。提供具体的代码示例展示如何实现播放控制、如何管理播放列表、如何处理播放进度。文档应涵盖移动端播放适配、后台播放支持、播放统计收集等实际应用场景。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","order":4,"progress_status":"completed","dependent_files":"server/src/modules/player/player.controller.ts,server/src/modules/player/player.service.ts,server/src/modules/player/playlist.controller.ts,my-uniapp-vue3/src/store/audio.ts,my-uniapp-vue3/src/pages/player/index.vue","gmt_create":"2026-05-13T22:55:34.8144654+08:00","gmt_modified":"2026-05-14T00:59:58.9654956+08:00","raw_data":"WikiEncrypted:+SfECELBWQCxQ9QszYYbrLSxb+k/sNj0EKM1Hk3vqE/aAc9KUdS/2iKqet7a7puoxdBRVPFdBZuV0JkP0iDII3MgaDx/+cdncdXB3wsiXq5a5V44BpCbK9vX3ReHviXNtStDiUHOzF4VOjjq+Hxya2D6v9MFw+d2tcpwRFWEGcYiu2YfWXvALhzACNZR4bpbLwDfYIZkXzWO08VbP9YjNUmGSUr5RqVqEIFR6q4symMINOz/+QXc/5W1uaVheUNbUf2HFS1dmwNPLDOT8Y+tp66SSrMVLe3Tiq+Ei91AfGzIVEnli+uRQPol3wK1FsgeTyq78voGHARDxMIDtPECcucBw0fV0DVuyC7/GCwg+c6BdJxcXmRlmQ60Ei5N5htQf8CJ8QKT+qiVQ5EAOAufabELne1QRlsCBiDCTOI4pGJmzS4UcHgYJrqINppU9HKyt+NFx4zlgv6TPVO+S3F+xzZz5nFLRvPZYgAGvrKOWZXt1p/SoSMwGIYi80Qo8DaOkb3wLyvMjzdQwAi3X+F/0SdlnfmvUaWlYVMda+6whWUW383RbBdk/We9g92LjHfGw6t1Wfe/9JnHS3zL/ylOhF6Rjp5qglaSAn587dXBToLi2cnzOx+goji1WIWCErYISlBOgPVgJyl+wznWKrBGPooiD1xnOgXRCUo2an497F0hHXonzKbRmgmZb6PzF5g8fHyTA7WuGFOBXXnKrmErEJbPEoXMZ2D0emQqNFDHh10X04p0T1LyIU9LPrzqmQLtqmm9pKH2lJcC2pqJ8DP2XNNMddETIjwtAmIAlcsmOSfjQf5mPne0E5NRBEhppO8OdyKqRe1+8/VpXJtrkxwsCmaRJh7BdnbpMuhsrNfwgjLT82epkvjrVYCgMWArs6/QraTxfEQFRWF4QIfquY1yf3Hty9/pwx6ltBYQZScHmIjVdOvxP9wwngLZyEi/Pszhzgv3i2T6h5JPA3UP8xRQ1Dh/bIWPPSUqiDnJ2nUoPWAjcdiIh4jOUIwH+1ick6a+YxScjxM7UIkpw+7w0LkgVJa1Gifmv2L3tnGceTuHRRWaIgcGBcucGZCY8ymLfenozEJi8y9TFSrfgCyWvVavM9ZCI52TB3ayTRVxy1U4Xj3p5mRDUFMdvjdYqi615VMo3S/LM6+tPeT0mPAirgMub7kHVWlxBZDqMqNkdQ5LBlZ5vDP3SEWi67vnRa29eFk91OaObm0aXYtKZuivZwdRaPKa/Ml1mh9k8vZS4xRrGJWp6XZlXPxdUi4eoJysenwAnBCqQsSic8GYHwBMAQZ+zQCoxTKQN7zfGZOWxqGwPAzDxHq7Smi0le5zhC1rqYp5BfQZl2eheugOpqa5kGrgECPuoTo4EQNsMkscigGdHlc=","layer_level":3},{"id":"e9d1769e-6762-45a9-b568-a1a6def1407e","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"WebSocket服务","description":"websocket-service","prompt":"为AI有声书生成平台的WebSocket服务创建详细文档。深入介绍实时通信服务的实现架构,包括连接管理、消息路由、心跳检测、断线重连机制。详细说明WebSocket服务端的实现原理,连接池管理、消息广播、私信发送、房间管理。提供客户端WebSocket连接的集成示例,消息格式定义、事件处理、状态同步。包含实际的代码示例,展示如何建立持久连接、如何处理消息推送、如何实现播放进度同步。解释WebSocket在播放器状态同步、实时通知、多端协作等场景中的应用价值。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":4,"progress_status":"completed","dependent_files":"server/src/services/websocket.service.ts,my-uniapp-vue3/src/utils/websocket.ts","gmt_create":"2026-05-13T22:55:35.4423592+08:00","gmt_modified":"2026-05-14T01:01:12.6170665+08:00","raw_data":"WikiEncrypted:846PjIgkeMHsDVBj61Op97feH7rbvNGzVvyqR2xzorwrEhAdZ5R7EeWP9BO/EwxqEuWYcsY6sbR+nqsFEfxlvxYbUHJi+ofir2RyurJDTh1hs6s+vHocqZFsMyaGGc906tQdBYrZs3scCblYHWUMXuWAWSEUQSFEh/ATmIkWLZPOEV1KYsYIAzjI2vZeaZz7USrGvpdcT0fYxLxq5ru7vWZRn0fYrro5YDc4YATcRFEagje00jttIeoRNWl1vSTZ2ueae9/+kVvRu3RAgZ24SZNw3HleEva2E3TrznnCJJUQnh1IVS2GpXYLTsgnUOoy/j/nEEkupkS3SzhjcfnpkuwZKBgSpj5iyMfCALkucFqiIotmtlUSiwdydllnyoYVkPHp0jprVzdLlqj2jWrfo9Tm/tkezxXNNJpFnVOYBSuQRisP21xIDTS1NEo9ASBrmidDqzoiTaQTlEqQvv7WNoh/O7xTXyUTpgw9GAn1CtCNb5WCuXjPwSZitrM8eh7e7PGy8KWkHu/rsiSDsqm0facbZtotR/oGvA27pGVkE5CFXzDQ3heAEqsH+N2QUcCScVECJjxjCWH0xE8ozmtpa3jLR5OUjV9VuGlrxIWBU/HkdIXN4nx8MpoxgkzcfWTKmo1LwOrPHLoFBEsUnZeoaBajx2hAoWKPWIwMRDcxnrXkp9ibxkm/G/RVCVupzKSeK/nTIHjl1jvCn6IXTduhBVQtnmmu2NO5hPODAQ7Y2NOXNyEgTpCdiboXrN5GVZhmLfpTcHGRbG9ADEo61iJ5sGNYhZgJfdtPlOnOf2BawWgv0Tu6fQc6JfVohhOClUc2li0GacvDrfPaLemW8us8x5VWjL5xB7JKiN+3sc95uuZDI8Tl/y+FhzJMdVLzUdW4Zx3E+PdmFUVX+WXqnfLjFYeb4xE658TNiYUMihKX49HZKFvUbvorWkI+smYHlqgzzJpT3E0eatcrYJnUM/wrh9YSaOAplbVgx55rhIFuucy1S+lTIKdM2vrdaLszeqoSi9AU5eDnh6zn9ceqKLDZdoP64kzu+swRnz1IxKiSYsOXecqN0XCIn4k9aJaAMsOnyKnEPXNUzhR9BCWlxy+AR56x3hDxRgGGmD1l9Tw0bjQA6LewXHhsaFFtblcOX9qPz54PzpiYOhZCaNsdlt393iDIfIUnUWIgwxSIZgzTPUZDQfe7W0A24EtYKG1rzRUgGGEboqMwQqGqPgPwIlsIe5Rf6y9TuCzcMEefalPffSfu9I5h4JkCDnMrICONITtiOEHByOhwLCkBgPpnuthytD/6PgI0rC7G6U29UUu3Grc=","layer_level":3},{"id":"925ff574-148d-4f69-a036-5cfea0fc7c8a","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"阶段管理器","description":"stage-management","prompt":"为阶段管理器创建详细的技术文档。深入解释阶段管理的核心概念,包括生成阶段的划分、阶段间的依赖关系、阶段状态的跟踪机制。详细介绍各个生成阶段的任务分配、执行顺序、资源调度。解释阶段管理器如何协调不同模块的工作,如何处理阶段间的通信和数据传递。详细说明阶段优化策略、性能监控指标、故障恢复机制。提供具体的代码示例展示如何添加新的生成阶段、如何配置阶段参数、如何监控阶段执行进度。包含阶段管理的最佳实践和常见问题解决方案。","parent_id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","order":4,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/stage-manager.ts,server/src/modules/book-generator/book-generator-optimizations.ts","gmt_create":"2026-05-13T22:56:05.8910289+08:00","gmt_modified":"2026-05-14T01:10:07.7829226+08:00","raw_data":"WikiEncrypted:4sBrHgNi8BMcoKwlhGFMzrkDA1SIk3HlVz1xcLO8JHhbQUVt/JS7oNK8merMek5Ue8Y8ShzhlBcOVLaa3cDPg6giRoGS8C3yQqFSop6PTcL0FdGaHlQFpuEjpy3ChH05P6nF+1kaAV557lUlG9K4e2qGPbbaoQbqXHk3vjLpKDFzg3zjna7yV1My0L1zpSf3/aLR4SHw2sepQ52NHvTJc7rRqqvmnOSJ4tfwuuPJwQlqxIp6QOE0tBpbsk22/M2Cx7ehxglXdqxel4q22Po/pBJZOh7UHJ0WmfXjn5O7/NK3AV15tHALYBuR8vqDoJ/hqiBT/BKZKAyfCs5J9433wPw5lo9mMvnoObKPQS5M2UE8tSu2crZA5q3mpbR3lFwDr1iX94S+bdvgw6p2VrhhZlkU3Slzt1fSyxnNKtL1BDsBhh7u7QToAchMwWnE5QjaYz3rXVDT2CM2zThobEt2PWtfpu12jvfRlLFT1cNY+lmYSlgc5ojYAgWFFIiaDnD+1N/xOA8c2Zh9TifvtDnLH4JCeBd1pP8iWpF8X6fQS8o7AwKVtI/rp1yGaVnSZeAV4mCbRiKM5v35MQkPzgc/TQXdp4xTLoRbmPFyp87YKLVtvgqWig0RI1eNPTbakYD7IkQvGGLIrera04HAeNfya7SDYzL+YU9DElsFkuI0UL30SWs+RPo09LyYhygDkMAfVhTahz8pj3zwH/IwHjy0mfsY2uLyGaFCF7vu5OxjFyHAkMBoO2NPpBPpfMyqRVUOOqYYRjvkVIhOTjTWjJHOG9QPd3Y05Y4Cdgd27qTgC5PzvuFuqJyb8Zdid7DuGJN0c8cgPx1qCREHEoBMRn2fDLzzh1z40Jr/CgIsEA8fq0t9Xg2j1QZ/N69C9mF1RKtYvbWuqGu7ZUNcDjxDaveTPcgbEr65Hym4NsSnheLXFeLRnQJ/M3oW4i6R81j+C+DuxXVKcqVIF856WYQQH9m3O8PD9dCOLvKCLSNfdGxcN38FHTIjsdwQh70pfkEiNkQk7G2y40Ex4CM4HberZFevM+y6nwEBknYd+E0y6jcKuG3TpZC6+uUOk88QubOvXWLorLzX/vkSYuT0tCcr5vPbmxeSdFAS2CxNCJTYBCAVA2NN1KT1amPZiDHR+YtDdyHCNECA5za7YuuRFn5yNmDRp8/4vtBLrvD2SgVzPNw59INEkyIegYbUczyImT1TV7oyhAVcH8BJAwHosa9DFGWz/F/Yg0DJY1FZ/1AXsb10d7+QquCMmDGS1lTuMDFzEfRwuUGvxt68R+pDTxHai22YcafpcIQ2kMlVX7JyNYoBhrzbWFvkEaGbx17gKviUIYzN6x1jPqSj9nMp4X0fgkNVvQ==","layer_level":4},{"id":"b1b6916b-d908-4bc6-a5ba-6446047c5add","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"性能监控中间件","description":"performance-middleware","prompt":"为AI有声书生成平台的性能监控中间件创建详细文档。深入介绍请求性能指标的收集机制,包括响应时间、内存使用、CPU负载等关键指标的计算方法。详细说明性能数据的存储和分析策略,包括实时监控、历史趋势分析、性能瓶颈识别等功能。提供性能配置参数和优化建议,包括采样率设置、指标聚合、告警阈值等。包含实际的性能监控示例,展示如何启用性能跟踪、如何查看性能报告、如何根据监控数据进行性能优化。解释性能中间件与其他中间件的协作关系,以及在生产环境中的部署和维护策略。","parent_id":"b8a9084b-781b-4146-acc9-565f7e350662","order":4,"progress_status":"completed","dependent_files":"server/src/middleware/performance.ts","gmt_create":"2026-05-13T22:56:17.5608978+08:00","gmt_modified":"2026-05-14T01:11:02.3131412+08:00","raw_data":"WikiEncrypted:9uOBpMbLX4DyZqW4us3Wm2V2w9KMCXK4ySE+mAe6B0toocLU2pJ5NZUPS8R8oGHZCQqd8X11rU34EtzA9Xr9VWxFnfjwH4Za3tBrgg45QymDZg9BBoXvAEU4XTAN+coEq4tDHfxG/WKWTmxdjM22aHBz8UkeUAsSrB+F8QMY54KFb5AMiWRnQ1zSC4cbBtnTFmdiQGWya3o15wineXDqI0mqeoGGcTseHanwtVGq9hoZqiUY+nXltVnHmbJD/5WA66E8j3s637F7KBxnuIExWWs8cypn3aGqH2UVyWi8NjOLi1UyxGnC7jMzC0rDlRLFu+2xNCtW3Kfb8AxVwlifIAK9eDv8qIGIe7ieWWRcdBBIKdpA3h/CwdPoykVygqRR/JawV3i1PQaHvl5N1gWAfIVd6lI/nLmk7EdBK+qzrLgMADqwdL+so8hjn6p9B6pTb9xlZorsjmcMJJvYVhld7j/bh0trRwCJjA+XAH70lHANeUBKj4bY7bsaXgu6QN0hsHTsbtm5Rk9HBQnqUxE58E1zoC2SPC57FdLQKqk6VruWFk9fOouowF8n4G9EdOhoROE9xHdFepUGHLKzOw6WWx3fAeejJTcI/+ztaZrUIrhgduxbtCwVIAPbmsVEdhU1TmbFoMDnjuiMPGrQQ48ZKAPUo5q0cqLTA1o/vePM9aEGpJ5wV6/1ocPe0lb0+V/hDPFaePjedbZwDFF0QYQNG/MBtYNQXsH+sNJ8jbVthX8Z+euUu5RLOtE4D4VbdV9p8BlLfoPobLp4zdWJw2MHUfH8Jh8OByJJ+4SKGTHM7jjmPlXS0n86i56uy9tF3eIppobK71GlP/IaR8HH/g0fzaXLbX6yh0VMrATM96q+Hsps4kNHBHoaEv/UOdJIC5Y5hc2ELd5rI5V+WfRfMljEVfDKrWmI3kpG3ulzb8puYf+apHVPNIB1BjvKQA0/5UEhlDlXCMgpNEc/4aOvs9Xp1SfYBcv3mw04qRvEZOBvZUpyKhCEHzJXE3k+cVPOyWekJS3HS7JHrBWHJS0Ea6iE1r6N0YOcO3S+a5S9XcMFVXnbn4hEb0g1pmHiAmeHboAJV5dR2f+nm0z9Ix/VaaAFRishyJBmYO2Nl+knvHwhTJZOtP85iJPiBrLTy9q3UbnABF6UQyjaAeT6vE0jJa3J13m134Glr7Z1BreV3ldzFbnecmv63VdTssV5/73BuFMCMeAw3SiXOQyXBfFvnvU9v45By7dF3Hzg0y8fJVSuQNnbVSuZ4Fc8YDEuJLzIn5n2","layer_level":4},{"id":"ce72b8df-136a-45bc-b2d2-e65c57736303","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据库设计","description":"database-design","prompt":"为AI有声书生成平台创建数据库设计文档。详细说明MongoDB的集合设计、文档结构和字段定义。包括用户集合(用户基本信息、权限状态、会员信息)、音频集合(音频元数据、文件信息、播放统计)、TTS记录集合(生成参数、音色配置、处理状态)、会员集合(订阅状态、使用统计、支付记录)等核心数据模型。解释实体间的关系映射、索引设计和查询优化策略。提供数据模型的生命周期管理、数据迁移方案和版本演进策略。包含数据安全、备份恢复和性能监控的实施建议。","order":5,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/prisma/migrations,server/src/models","gmt_create":"2026-05-13T22:52:24.7107928+08:00","gmt_modified":"2026-05-13T23:01:28.1402238+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkBwdhOAmcMQTz+AJLOFORhNFeFTAN7xitXLxeRr3T1sKrh0z/6NFLuxfhi+XJSCnWvWcmanue+Yy39lJQGTLEXfnNbsXDrTXgcPXM0Ma5cfQRBrgow5qfS1mBHfHOqLxCxvcbAhYk1CfPjBiV0uFOa9xtxg6EG4KNYFPQoYfF+imaOcX2X8aaq41Frd4vnKTs7O+CVQ1o2BRQ56/m2z/DOz3goths9m99WnuCw+ccAIZ3xKqG/s1xigkANZXawVE+C5ycFXNzXWef2uJuv/pm3aE0zuKw74D19WFfW1+6nRbYt0pxDz7vMFs/C4fWb036I9RuXvMtVOBlah7gxKnxStRr4h+uaHS2hJVGgzIi1IUwGmHxyM79/cFEVeb19Y30uljf8BVcwFxa5bbazN4WMDpNsVT3OLBRYzKNPG/1zr/Oet7RbO3ACgM3N/j1tm4S8u0Onvt1GD6n4J4u23ACAbOrTs0hbotRM8w38670Q8ZwGy782BuYVeMydWW9wh2A7Dn8BZ68duOJSTCIsdA7Xoq2dpWDJizwasd8aOt3Nk914NAk21ltr/DHVaUfcCcg9oZaJbUmrjF8yobkJ6K7rPDc9PYESM5LsVGfYUGBQndr3xP9i88xLCE/7vU67KNCPDl8Gh+Od6kvh1Jz0jcDp71GxTGXEuJFDk20XIvaRrcfIy1a8MbumfAJu0j/nJRVhOCHH070L/hhtadVs5cAxwk2HT/88C+MMEmAITqEtXjDvkuXi4MEd7q6p35Hrrx/ti4c9reYTKDubKZXjmDAm0fw7vHQ1z+s0NF2VLcrb/44BibrLaAIuraluIKsM5v9vaFupSrbB1x9zCgtr34VnmHpprcfNRmQ1LPVZX3Va9VVFrgqbUIYYL6n43vHloY1b1cUAAnLAnHWvOv6iHJ3xuZ+KtC5mt+pPyovWRuPKxqpHI3PZOsBo9SbPGjGCsPDyWR0BVldaeiJ4VHEuB88zqr9VC+XVp8hz06YXITLqZvdk5tl7Bjeutl7I5cOI7t4fyUKma+eL7odqE21sZ3XLa9Nojg7tQrtet+NvN4tskKXPrgyGlzmtJvjxwCHoGQI3OPWu3rOzcNCi56dBUhbQmZw3hZqrWXZI+M6kbvWmprO2UPTqZBlYZr84UEk2IWl2CxaUg4JK8JADPSEIeBr7NLHqLh/TlhWWhbldbSmMxAA8hB0z7v8AbBg831jI/bk0NAnyVfW9ieko5xd1Cu5CeCV3qV1wsQ07cZatR05zTdCSiBcHPZIxmQvH162G/WWUITNYENZu83wZsR0zHnPz8b6+zVVcCap9DIXJLk1bhri14DWd+R068T8a51mK6dHjK81d/ZQDrfruI0pUW7tcWruqoIW00GAG9svXgU/lUl"},{"id":"b70a2980-3b36-4f74-96d2-e0cfdd5478d6","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"开发路线图","description":"development-roadmap","prompt":"为AI有声书生成平台创建详细的开发路线图内容。展示项目从MVP阶段到V1.0再到V1.5的完整发展规划。详细说明MVP阶段(2周)已完成的核心功能,包括项目初始化、用户登录、TTS核心功能、音频播放器、历史记录和基础会员系统。介绍V1.0阶段(1个月)的规划功能,如智能简介生成、更多音色选择、分享功能和管理后台。阐述V1.5阶段(2-3个月)的长期规划,包括批量生成功能、音频编辑能力和多格式导出支持。说明每个阶段的里程碑目标和预期交付成果。提供项目优先级排序和资源分配策略。","parent_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","order":5,"progress_status":"completed","dependent_files":"README.md,FEATURE_CHECKLIST.md,开发计划-第二期.md","gmt_create":"2026-05-13T22:52:48.2193516+08:00","gmt_modified":"2026-05-13T23:50:07.9842274+08:00","raw_data":"WikiEncrypted:F3QgleoEfoy16cQggYe9C+A8upAesy9ngKVGYmtb6iO3uWpGuHzlbUtdeMwXNsKOFuHp6Yde7BRyl7sw75hTtZLfvpS3bfZ9l7qBCVABi1nq6JICnc8lvyb5gk/UMh3ZCV/LL1Pf90dcGqkRVE2zbo+OULpE/FFZgW9EM5JUmjDpswecsDAZsQX1r0jPZRcWb13cvwGa4Xd60mU/e86cgUAJ1Z1ifqLrT3uAJD+Pzxvkkfq75tTA85kFbLH7aag2jXhgya33jadT+MZhDYKu1UA+dZBKbUmwSuXdD9C6jwfJprGwzwFBNNGybwm5qlUAmf3Q08HzRKvDAsv2txewhnaTCyTfEyjbqBJI8skY7rrHWLbLtg9uawALLk7ZVp8o4q0ky9+4MHOJ6wr4UuyfPMSe8wemDX7PJ3wRAapPaK1taero3NEzVniDou6dE8x5jBXFtuyBV11dSJHbzAoTJ3EoJ2EZ4SzM4KVJ/r4aJzwcqLkMLy6AZFtvbL5Jvs61VkgNBrbJ+VzOEzVlXmEilwbWVfSax1PMQuUkVxPbeLJviNVcT25/rEatp5qck1T4RtSLypQC3x6D5O48GU8el+qrAqiT2X4maylzFBnRI0UQ7mjxO7Id7BpS3xBJL1BdFotrnxXf0HYwu38AdsS51lPhsy16O05//Tqxdk0A2riRh4MGI5XHm0yfnpOZMIKVuJGlPaut1lL2/zYaIP6t67Z3nLR/x10wfsgca4U1cj0LjEWqnXCCwMRp5TP4cO4B+ZhuXadUbNVf4h4T0rE2x64vnvWcxPWKHMKEqVfD/aBoylAKHuT7ydp3Pkn4LaqGpFIqW0AG7nBXGg3xanPJkNWIykXebEdxlWKHkG24Y6z/U9xdujvbfXJ0Wr15FenOeubPc0CIaDSCytMB/A6iK7wdHqoEtGhFfMi0QpjJanx/zaN5U26cF2a3l3iP9MdHuKIiQVncNW4ghBWE60jXtQzq3s/Zklx8a5eeW+0xhKvqbHD84LN/6If4iMWPMgDP5tjs2rXO9OduCbS8OoWwonYcomeSCBjrDb6ps+H6M1EwS8iDXjMmIC2a9s2wmqYnO0/P4R3UfDervTBvvxAs3pJi99B1kYv2hvMa6j/4g7BT8tFFT+pI6eEo84QFj7r09pUVwJv3JWABzu4AQ+6DcgMjvbQWJWO+c+ZkPG+G6FPEnSJxbMMwW2xqbJUbzA4AyUVxNY8wCBQLx7GBfXJIMJlKluGjDGhaztDERyxV/VP+iW4fqK0C+WVJzz1lGo2ogJgvYweQbsZY8JJjxAlgR68L5hY8pzkNUPcULlNwXX//PLh/LLRz8A0pk/NQ1+9258aJpveMSBjxQ3W/ds1bYw==","layer_level":1},{"id":"abca1a7b-42a3-4a19-ba37-6e30da86e151","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"订阅付费系统","description":"subscription-payment","prompt":"为订阅付费系统创建综合性技术文档。详细介绍会员套餐设计、计费规则实现、支付流程集成。深入解释支付宝、微信支付等第三方支付网关接入、回调处理机制、订单状态管理。包含订阅周期计算、自动续费机制、退款处理流程。提供完整的业务逻辑说明、数据模型设计、API接口文档。解释财务对账机制、发票开具流程、税务处理策略。包含风险控制措施、欺诈检测、合规性要求。提供部署配置指南、监控告警设置、故障恢复方案。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":5,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts,server/src/modules/payment/payment.controller.ts,server/src/modules/payment/payment.service.ts,docs/支付集成指南.md,docs/订阅系统使用说明.md","gmt_create":"2026-05-13T22:52:57.3017116+08:00","gmt_modified":"2026-05-13T23:51:39.8623666+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqClhQVd1juao6KDt3aKdKACOzEQVVOmug6hDaJVjbk9BosE60u3i9/R3qXt1cU5Fi2niiX7LmFoAalz8ZC/zxzZEXaux6pAPbdULys2dJA34SlhhwGFN8j4mYVNuH4lj59iSVF+EHDnKMYjsNq4Led03OJ6Ga81dt8YtUFQhBVNAugbzexor94iNeGNNa8tfE5fCL6xmFKhgS1G1ErmRuiBBmNyFKMUJMkRNxJrMIijJAFQk7fqHhQQKft7P5s2TTHikaHVtiBzyDDZ84Phcntt+ghy0Zhqpp3Y3/onmWxc2SIs8AHaUcfoIYrJC7pY4l7UTWmpTwmYWQzB+rYv8Y7UWYPwImuTVIHZy4mhe8El3udUxOgeLJDMpMjKwXWJtDPZkcLGda3R5saNQUKjRlNUCJEB5zymMRFLVH2X6RUiSko/AVnj+FmfjHOUFNxiFOm2JdBODGXGDdSGxV9tEOLKA9yLRhydC9Cri+cHgOy21geW0ehptzBlgCk6PRrWSiMPaNYBMYpVpPgy0RiCejUlzk0KiQFjHKXYvsWZMq/3oPvf4DVvlQdIxr2csES27Wd2a3edBpbhohruJq2ZQTXNQ//mjOMiOzxum/x+30LhPCMZ+Y8qCP6DreD0a6vLQ1w5c1c7tnqSTYy/xtY0BOO1ETZoVrTWaK7TfHzIcTzb47Cqsl8djVQdwn7/O9Hmxj2Y2IH0JtpivpMASlLXM4nykQTTrbTik/lAVQuxckmiNbOWNGkp1tf/Bv0af92/U2fBtkVKtH0QmYSKWXU7khajEv7ljxm61fGpYVDQjQVjPwjHFbw7VpOU4tBHslTaY75MeWrse27LkAJHuEgLrbaYNOBqFzWTSNj8IWak/NVnmbMHMZu0KL0kNL1WGiF8RL7rk2FFDl6XDwhF4leHBj3EIRMrJT49aWcpMDoHN8W830B7I9my9pcJqZs2VkdY2wnVL5DjGjF0Oko96sJXGxOQPEu4zFTkk0dteGZO/umkzfJR51igILU/O+dZWPW+1ivO8hweZmtkV0tvgBtE0AtwUUJ9P2Ho0MnQPFEzlsjc9QiIEcYJK55waNnXwpgvXtK4ql80UR+dxcO068THfHGGi88IyKLlT/NVykghHTFFam9POEcLxwL6wH+SZgeYR8TvpXUS3KiZRreCVwFEdDmqDz6ZHJZpl7zgsxDFlRTuNclpPIrgapDysTKgILkjFwoG30PNHFmiB/h5iLAAco0dxyC8FTZs24HMoedzXjHBpKSqntjq5eb9IlrDEYg1tgbnYl0tJtzCEi/Jnb7KsJZbcmn7Iq3S7qoWTqQCqDq0JK9URwlxxnS2Nl8IGCIAzZFSlSK/eIbGHbFRwWO4DFAva6qFMUYXX8m324FOZJWQqPhnFWgz8IETIk38mMTN0p+I8+AQ5SeuP53sj7RuKzOY8RzyyxswnGmpc3ehMwRWPQBpJGJqeuTS7Q5Q+BqYV7MxcxnPxJ32LqhP1mZnO6g84y/ITmsSJMpVkcsTHb917z78LhycHERkSXAlxyQsDw+8JjCQHcpb0rcUanu1wqr4=","layer_level":1},{"id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"交互数据模型","description":"interaction-data-model","prompt":"为AI有声书生成平台创建交互数据模型详细文档。深入解释Favorite模型、Comment模型、PlayRecord模型、SearchHistory模型等用户交互行为的数据设计。详细说明收藏管理、评论系统、播放记录、搜索历史等功能的数据结构和关联关系。解释用户行为数据的收集、存储和分析机制,包括播放进度、评分反馈、搜索偏好等数据的用途。提供用户互动功能的实现示例,包括内容收藏、评论发表、播放历史记录等常见操作的API使用方法。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","order":5,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/src/models/index.ts","gmt_create":"2026-05-13T22:53:10.2734576+08:00","gmt_modified":"2026-05-13T23:50:56.8338922+08:00","raw_data":"WikiEncrypted:nBJhxUtob+Ed4xp/EVXyZI0S2O6zxjlOKzJ3VACUz3lHb618u1RR5L69LyFweE1thmtw57TJ77SAb5aDqI2EImz+kXXpqjCRX+mqBJ3Q0pxteSZqdW2lLZm+KddVjJw+hjAuvv3JLa3t8UBIXOq5MnN1XwdDzfVB3ywhofzd4DgEupyEZ7gGYuYKR1AySt31Tvwelem3S/3ROL7NZ3OR2hc9U3hy7CZoTBOcGsmO3g8TiXWWskFP2rPYPiKjvnU45P+ywOShUbWO9XRDkg/bstlRIoma39wcDPmiMzB86S0YyXJdKEzhdkYPZDn37TUUcP6euSyli6z8AHQZz7xktSuh7/G2enb2BXYNE5hgxrWDHH406FgsDo8/JnCQL5aFg33MCjyVkgPddhhpK3Od7TDoIk+mXqo9yDhckswCVy04zwYWGpGZTCgChGPE1GsuNMOeD0nk39MMakqB3bDhnqkEkrXJFmfrQIvgnmxqTsAFZaAssvxuoQj+s65uYbWGicUx1F/Cm+kqSbvFLQH5H9OpkHyk5L9lY/LeiKYdigzM+2YlGBtf6sbvg9PvuDISGqqihqLYTh+e+RA9kI5naWaktT6KRw64ggGgyZth0jiLGwGeFodCZ/OikxyjzxbpsWO4NJbeAhz9v+GlAEMktCS2ca0HJZj1A86jQ0+hSVQEUMjkthebGlnq6/uTBQhn51bsiSD3Sj2bFzFzda9Si60/lckwVxkWpLQPeN4OtboWMaJSg1wUOr+Mmd+51FZkCpSTBe4Th8lv24UmrUa0chG9O4ZKP+q5QjEgdUcdyfADqd56Zcz4uGSvWys98IldTI89SlZxy1i8WhJJrwO/zUvwehUfBzhLP4/NTGQ84OEEfGKUQuqKehwZxdAImN6Yiv9gJYJTj9YQZ68swwnrhHerIlCYFOh+GE5I53KZCo9+gjrAZ4uB4/amFfWw9ymAu+nMnWtp7AlMK70WjUMVkmLQqNWssO8IFDAtJg/r4PlNfSrjm0beIaDiJlbc1ffUye2Jy9zgzKHdyZWKezHZ0i6B/L2ztzF+WFNxYdasGWFrey0m5bbg4MXfFAVYmGB7gjn7v0MYbOygtFxD64turAfz5XldHbrfLNxoOtcjxCchx8HzTHIFOHvoajtDkULW6r07u6pofSpuEkCNwmxAFfKM6JqtkulR/TSJG0PdD34bBxKDhUzVEpl4O2Yzq/CcyyqK62fuMShn9CK0Pb4v1GepORUeLLdAB84Oxp8tTuNQttbZWqhPiSoqGOg0hCOt","layer_level":1},{"id":"870aff23-afe5-4cb9-8c63-edb45d50769c","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"构建配置","description":"build-configuration","prompt":"为AI有声书生成平台的构建配置创建综合文档。详细介绍Vite构建工具的配置选项、插件使用和优化策略。解释uniapp编译过程、多平台打包和资源优化方案。提供开发环境配置、生产环境优化和热更新机制。包含代码分割策略、资源压缩配置和CDN集成方案。阐述构建性能优化、调试工具配置和部署准备工作。","parent_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","order":5,"progress_status":"completed","dependent_files":"my-uniapp-vue3/vite.config.ts,my-uniapp-vue3/package.json,my-uniapp-vue3/index.html","gmt_create":"2026-05-13T22:53:14.6221736+08:00","gmt_modified":"2026-05-14T00:02:21.0374368+08:00","raw_data":"WikiEncrypted:ZHd6gDb1oAMJeik+Vv5fPivWWxPOpIXhoUfW7J05QiL8UU/0SnmTDTmQJvKLz4LmKoGoJ3Y554ZE8mMfoTUli9hiBQcq3NSphSXV5jcGwXalhN57+N2ntnjDs4h99FSJBcpZEwNgRnGcAXgycpYx/WW+OhGJMWiSxUBg/9KjxlmjwBpeNlMO0jriYz10esOP3N01WCh2uyZ7AWDE281sQetNHPo6q7Nwb/EuSfTtnBJN/GZX47jp51n3qVngSp8LFT/c0sjlpLeob4XZG7A8MC7SIn1w9A1rznACVEHq0OWkl/fh35SJ8AmkLGhMst+v5W8Dvqt7HHmC+gv+OMMoKczK0znBupd0MMn9l1UYwz2o1dklVp4awPYh+zQP7oxhfiXoDvYdWZSIZ8wTVuZ/3FaV/7cb5uWHmGFbjS9L0oOSfc1AnaEzKm/gTbdLvPtar8KPrN53G8R+pqxed2IWNg7TiiPORzGHUGx8exO+gwNJ2Ut/PrNJ7MvRFwb4YGZh7zeQrM8a8D8AaSyDnhPeJU3RhTUmZvM/swg+u6EYnnEOFyWKxbr5lGy//TIR34dqkGri2hDyUj7nPIByidFh4ckQaQy9l9iGmMd53e90xL16GOZBS4AQ6WD63Lyc7ISuh/gyapW1Xxgtx9PJ/gCZUshgpijM9vEv9m7sENMn/gFCXmU1dmSnmS/BEzfC/hpUrbzlRxiTw13VX4ZeAnyps40FBXLveXZW8//iFNEUO/tsjIELW9hdFLBumnlFo8uAkO2UBW9zTcFFd/FvrXKIcjeJ3o1IEwYVd7FirAZQRn+4LDTyB31u+1jBwyO1FBylwEIPJyQIzx+56FxieCvpaT5gmARp2MECLhc+Rs2iurjimHeX4952lTDXVkQjcuNLZWhLEFhT65DDtGyj9/eakwn44IQXRNOO0XE/DlK/FmYtYko+Ggxn93jCZvvb4qFe7pcl+FbWAWfeNpoJHI+A6xpEsNPZ1vhpihii9Gc83fZ/bHFvOxwYPSAjD63qvJl4W1BojSgPhqC89cTrgBVUSKRFVxaK7xK9Znu1NhL+kc4=","layer_level":1},{"id":"1ec5bdc9-e69b-4c6f-9d6a-5e7888da50b6","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"错误处理与日志","description":"error-handling-logging","prompt":"为AI有声书生成平台的错误处理与日志系统创建综合文档。详细说明全局错误处理机制的设计和实现,包括错误分类、错误传播和响应格式化策略。深入解释日志系统的架构和配置,包括日志级别、日志格式和日志轮转机制。阐述Sentry错误监控的集成和配置,包括错误捕获、聚合和告警机制。介绍请求日志的记录策略、性能监控和审计日志的实现。提供错误处理的最佳实践,包括用户友好的错误信息、调试信息的保护和错误恢复策略。包含具体的配置示例和故障排查指南。","parent_id":"0644fa6d-da66-411e-b766-c810e7e56553","order":5,"progress_status":"completed","dependent_files":"server/src/middleware/errorHandler.ts,server/src/services/logger.service.ts,server/src/services/sentry.service.ts,server/src/services/log.service.ts,server/src/services/requestLogger.ts","gmt_create":"2026-05-13T22:53:25.8619772+08:00","gmt_modified":"2026-05-13T23:53:09.6910848+08:00","raw_data":"WikiEncrypted:Jt2SeH9cQITjBGdB/YEfX4sgRORd5jbiZKBQSNeIQCR41yjhoJvSo2/UTXT/juheFCLH6jKf2NP/5h5OIfjvJ/FMDQXuUQV4Dt4/8QEbPXoMu2sb5V7dzYCfVvNbj2HKhwN2+eYqYxz+OieK+4gL1xUYCDDj+I3doFqKJpIG+jaJ38Xen38302xYBKNagGKtAUQD5XAbgt6ks1pLxCCzq8fPpZzqIEk3S2dITkSS3JYYCosQ9R/PzizMwbKtFvtmxNFdFmh4x22gDgFm6TSKB/pcMZ+nLpFY+P9n6RPSfzeMKBGoPlRHdxlCpYzveXvoMHCB7InsOfCSnaUgByTxTVa6Esg11KGeA7HLeJBxlpFaiXfdOZwU9NEsm6zdZQXfugOkNQv7qLcB8OYCVT39AkD8JDxjth6hiwWn0efzV3zK3vsUM/0+mQkgjnZefgGmlNT4iwnl9dgweGq/PWp3BAUIgfJx9koMV0v6Jx/Rb22CBJwOmvasVK8Hp0dBgzxn2ngIbsqIfL5E9+kkRtqOIPdbbuGsi8+icou2nRExJCGUD0Vf5EXOuEV2qiZOLHLDAWAUR+9sQ0gHGyLRfls5lA5ksSDFFA+Pq+esXVTRnayDesHz8zELCtdCbcmbrWi7rezd5T5RRyBcY4jWcLUGUUQu7RdBgOZ/rl5rj4PjAnORzXOr8ghyr/Pg67FmRw+vvqgFdOsFpyKvsFvuENZr4Od7c7c2N1YwyiX3qQvc3KlzG3ppzkVxxMO2TiKeWLMXEsE6Anz7Kw5m547NGiX5Y3e4lDdqj+LcQFUaufbjwfjE5HisDCXmqtT0j9cz3FdHSIMIekj9+ER2QVHySXheV0EWXbqkSvgrYHKSYspNz54LsUkDiOD7aI4enWzBQmFJ6K/S6s+4Ej6DwZHuZd8KS3A62CoVomDmsyV0vhMMV5+EBE6raaukaZSHEtnqi/GldDgVmEI8b9rUwIXwZ9+JLUg+dux/VgCTqvwNWzb1Zj+JLgn0ac8DkP77pA0dFIuc8wK8vYojNPBX23lwFjdJZubKruLmRGiydg8D+hdj5QsHQZ0Hx6uueHbxWOo5CHOF/wBOzi10bX1+PtMVwxPsOXOkseqFdAtiqWcIaXmgpvIcYqAHO85AWJBAEdkwKY2/6ROibip6j2Bd5dsECD2AUyMgY3e8E4Y3ucM2RSOX/AFz7ataUL/g+pfqyVHsLNUmT7dRe69CNJDk1WogQLdIiWRBVgflUKcjSKIscXsfaWXiTFCdDd0UCJ20jOYFhcYIxx5HFjmoxMrSk/TYH0j1A7b5JDEaGRw5vCnL8VFzFx5LmxQdb7jaBTuKzsbgBEUDprYJieP3eF5KKUFblzSEEwAo9nfDEz12h9OKJxPFAxgyxP5Iybkxy3RDGZ8CHJAs8u0T4uXiJMb/uCcpHDjnFgNV+KnadGtsUpOB+Y5ddLd2aKm3D3d/tps6cIw4nkgYsrxfvMUHvb1rxl4gcwgfZOCmbJ1ZG65QqCGqGEfnSjBsJxA8V6Rkt6aqirdFw8DWy8oLJxJHfXkyGsAjFGHCPViWOgVdxhjjfbjH9S0UO40=","layer_level":1},{"id":"701079e2-4e5e-446e-ab66-c5148c3b706e","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"AI内容生成","description":"ai-content-generation","prompt":"为AI内容生成功能创建深入的技术文档。详细解释LangGraph工作流的设计架构,包括节点连接、状态管理和执行流程控制。深入介绍书籍生成的完整流程,从主题输入、大纲生成到章节内容创作的全过程。阐述AI内容创作的技术实现,包括提示词工程、多轮对话和内容质量控制。说明生成内容的审核机制,包括敏感内容过滤、重复检测和质量评估。介绍批量生成和异步处理能力,包括队列管理、进度跟踪和错误恢复。提供AI内容生成的API接口和使用示例。","parent_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","order":5,"progress_status":"completed","dependent_files":"server/src/modules/book-generator/book-generator.controller.ts,server/src/modules/book-generator/book-generator.service.ts,server/src/modules/book-generator/graph.ts","gmt_create":"2026-05-13T22:53:58.6161355+08:00","gmt_modified":"2026-05-14T00:41:07.340311+08:00","raw_data":"WikiEncrypted:zvBBiubNp9DOI7xoIXa4K4gCwfRIxGt4B0V/y0IQKMfauDQrXJy9a/uUQTgNSII5u22CJjMzJhSl3LyzlgWPx5OngDJPz+6u5VYhFytQrkR1oeRs3AJmP2gFLp9qBcoD5FHuL0PNDsWpFgu3J8vCoLFG0HWfrX3v9yklZFwhCYUtPK4PWwMbTdWl199Z7GnEH3KHv1HOh/re/uXQTpiC7XoAXOrv1mKsOG+mYOYt9e2yRC9yUat/RR9f5tl0n5MtzrNS60dBzdLUepq/93YXua1FyliDTDly9BSQEfIqddh2WTK22WYzge+4bIYKo106jBtcpwnHUDL+h2UkvN6LYoMr62qgoWOudStdi8znoJ30s2xCNRpmuBqG0aQtRk0VXFFWFRFSYfnSl1QMMicZY27KZ86O68fAFPG791SncGZtXZsv/sAtJ8yiXB3Rp4GNOBOfdS19DRfGecn12NiNo163EfIcMPTlw7nHX2XhOA3U4z5F/0STOcw62tRv7evl1DIgVfSBwnzuACUH01RB6hBaN+h6TlMbTdr2IwD295/l6pGr20TIdjHnrbRhKK7tyLozs4DngHu8gsNx3kE0KTguKAcZUri9pjAn85qzxcGeTETWy72G4ua/TRaaxJj2UDd4no8RJF11X9YNrwfN2PcvVdRdI7nCJf3WdwA7FzkX9DGQhv3XJxqbcrHdCEuJv3W3kIpiEnk2HyZGCG/gQzgSW818B8JY4znGhu92o2qCkNFE47THKRK/kTCjcz97scHOHGdotlwFwdQhMrzwx1WT5C55j9qb3DqmB/KIfgL58mWK5ne1r8Fnwi7sFl73irAb4ICyM6qm6eBFJTfFPovnVWuoF4M4bXx9oAdKF5W4rFE1ez1M+9vVM2lk1PAHoOe5egkjMASSscUmawNCERuwXSJFF+Jt9j8CFpzxM8Sqy+NmQ8ckeBd+7tnJSQYAxYfqThLxNl0GZQtII//Yry9upgia/m+e7MPbpT+Mx7ikfbdy4qdVUur+0tECUe89Q5GScEBpz3P9vyabQQmoD1Dmlu4wBQt26zjcmbF6O3ZsP4pp/NBZisi65z9sOhSenYUL5X/upIPslnQEZvrXwfjb136NM8MjvgnITwynKwkAaKUS4ZhAlsquQPv4p6R+wC9B4+jMMvfXSuo2RDjOb14PFo2Bpy4fvfBSopw7vSQXDocEgpg+lP0ZZQ+EfBZglGcdDWJc7rWiuH6HeNR8ank9zL7ugTnOL4mHdley2MQg33SVVSJeejAD6B79oIVAQ0eSmZV9dl+turxM8Ij97lXmEGDaSMCJoDfyQa9+jEnnnU7K6XR//fHlHcLKIPHHxhdnAnm/l6Z4PSbLXjIHCqylf3OOVebw1KdM7RuZ6KmYULpEki/Ln6VXOuGHJn6y","layer_level":2},{"id":"cef80e9c-d6b0-40f8-81e6-2de24af301b9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"订阅付费系统","description":"subscription-payment","prompt":"为订阅付费系统创建全面的技术文档。详细介绍套餐设计与定价策略、支付流程集成、使用统计与计费。深入说明会员等级管理、订阅状态控制、支付渠道集成(支付宝、微信支付)。详细解释计费规则实现、使用量统计、退款处理机制。提供具体的代码示例展示如何创建订阅订单、如何处理支付回调、如何管理会员状态。包含支付安全策略、风控机制、账单管理等实际应用场景。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","order":5,"progress_status":"completed","dependent_files":"server/src/modules/subscription/subscription.controller.ts,server/src/modules/subscription/subscription.service.ts,server/src/modules/payment/payment.controller.ts,server/src/modules/payment/payment.service.ts,server/src/modules/member/member.controller.ts","gmt_create":"2026-05-13T22:55:34.8149792+08:00","gmt_modified":"2026-05-14T01:01:37.2657575+08:00","raw_data":"WikiEncrypted:/qtkhP4ZGxGP/T1P8fibqClhQVd1juao6KDt3aKdKACOzEQVVOmug6hDaJVjbk9BosE60u3i9/R3qXt1cU5Fi2niiX7LmFoAalz8ZC/zxzZEXaux6pAPbdULys2dJA34SlhhwGFN8j4mYVNuH4lj59iSVF+EHDnKMYjsNq4Led03OJ6Ga81dt8YtUFQhBVNAugbzexor94iNeGNNa8tfE5fCL6xmFKhgS1G1ErmRuiBBmNyFKMUJMkRNxJrMIijJAFQk7fqHhQQKft7P5s2TTHikaHVtiBzyDDZ84Phcntt+ghy0Zhqpp3Y3/onmWxc2SIs8AHaUcfoIYrJC7pY4l7UTWmpTwmYWQzB+rYv8Y7UWYPwImuTVIHZy4mhe8El3Hf0IeEADaK3o9R+Gs2rHgV+N9Dnkpg9CG+QXe5ntOT6R4xZF0IizqfVbCXBIBGW/WuMVF4TcXleTZV/jvjRCDXl4et+5jDSs6akjNX3FN5bIqbkjcRPJ3FT98AMgw9HgK0lIzkQrLAxEMIRnSZhbG4oQwsV3ruNkzspYYRYOl3Pi4BPEzb1x3ma0eLtyP+/6KBhPUPjHtJbFZ4//XfHuGkq0objl8Lxd3UpOt1A1uBAXdGaSALxlhQCNf/IRmcv5WQ+JdHoxgVGK+nSR4bUhHaCKLVxrCyRJ39R2hxGja32XK23RtVDHkp3kQXgEuU2CEe26kevLe3pu4iuM8KIFS6h2UbdceJ2+YmC3/qoZFwBzZWdDODJUG38A/+YWh/ljHEaHcwwuwdKhgP2cIPiY8XGCIXbF2yfXe3QqWyTOUJGQg7ffzhIkeRkUUgAZEB3IdARVPSgnmzLgLNmlkJtHY3bFDdjpk3y77VDiUtvnXob3gmlUjt+2jj/VF0OYdR9cTvmtxqRqCu0et08fg0XAtlnew/8z67JqUHrLONNy1Da8xcGYRWEvaWlw3NCTbuR/ASAeMjYIc5jnaTDDWD0YMSaqYovH7U5HoYCrxMAh/j8Jsx2NSHefUIsksO1wrpf1e/JRPgfP/AcfYmbOXnOUaLWKSGkEbbqArOZo8yzNdMykBfdDYOGjYGs2hYyrOYZXtLM9yB83FVv53ToCQcrvuCi0CpNW7Ej/jDVpduqZJ11E4fqkWlAzV8Bs+rmZd6ldRHxkKRdtFasNVAqCrvdV/Dl9MNahWKFKEYsWhAiu+WHVPJ70vdrmXbd396a2njr62wj2a9zxulGVdPiBVW4miSy1kR3E6dqLh0+CWG0wKu4aYkLZyTpbSIksBUnptvEOI4fqmIV4flOWrweKQ1S0KzvoK97JMjMyI2bGvNjxeLfFi72QHXWhulbr7NQPZXdSjLSHEHstPqe+sZj7HsBCHgQ1xklTkeT7giNZfTr6CuuwIVUuXQ+wBoR5AzOYIxxvXtk+wr4rLUKtQUbwgalKKw==","layer_level":3},{"id":"b8a9084b-781b-4146-acc9-565f7e350662","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"中间件系统","description":"middleware-system","prompt":"为AI有声书生成平台的中间件系统创建综合文档。详细介绍Koa.js中间件的设计模式和实现原理,包括中间件执行顺序、上下文传递、错误处理机制。深入说明各类中间件的功能特性,认证中间件的JWT令牌验证、错误处理中间件的异常捕获、安全中间件的防护策略、限流中间件的流量控制、性能中间件的监控指标。提供中间件配置参数、自定义中间件开发指南、中间件组合使用最佳实践。包含实际的代码示例,展示如何创建自定义中间件、如何优化中间件性能、如何调试中间件问题。解释中间件系统在整个请求生命周期中的作用和价值。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":5,"progress_status":"completed","dependent_files":"server/src/middleware/auth.ts,server/src/middleware/errorHandler.ts,server/src/middleware/security.ts,server/src/middleware/rate-limiter.ts,server/src/middleware/performance.ts","gmt_create":"2026-05-13T22:55:35.4423592+08:00","gmt_modified":"2026-05-14T01:02:03.5757033+08:00","raw_data":"WikiEncrypted:KoBWq/Q7Adld3nvKT6YAXjKdZAYQrA7SwAk3imSAn5czRzM1RFJHvJopnvDVIY9YlgKz2xX5cBJ28fyjSlM+cR8beNDp47rUSmVpRPwGIamWpUniP9kT/qYoiic9h8HE9l4cDkM0OJez1qyAoMA7DGXlkpZmS7NBHyJ0vJObHEVGn8a7NVFEIiot8f3pb6hBeaiQss+buXb3ZBlqeYNPu6JH7UXUCcM76ddsC/hoyAfAn4gPh8ssjbnPKky7b5daF2sHO/oegXHw7+pxnRTJKWD97lre4CeWArBMzc51BqWCNisZb/qhNTxLid+JO3ty3DLILg7FYRnbmMpKKMGuyHKdd5zu3BOK7OD+T7sS/i5Gn5b5MJ4uVZ/mCzKZu2F19rseeWb032NE3ckvmdtDEv7kWttqVITfbZ4TtcOiDMv3DHBhCnCFn6UV+uwvHImEundZHgjY9GL/FDXcd3vzLTmWMbXkYHW8hWwR25hTlHdHfZJ8oYiJW42F2F/i3qxbXu28jGw2EO8KIg7NesLmuO7dp34RNqodMGythVVkaIC3FjW2/E0IP3QJbKBrFMKTGQCXFVLfG3VU1L3f2cmnh5PUxCPl8zxD7bgrVbrfjiToU3XvMfpBaqNT2wVKw/HcbzqLmX6U0c6J2TzwLY0XyV3vbQUj2Yt36ujVin3W+HZanc/NujHfpxKeOJYUW03p2fI6M/+futuliwG1gxMroyVgiRFo3KZ5+flhxylitBXedCFsC4/aQr+dgWJ7xmHWWvTdA84EEztAqsVVkHBsUKnL2YuTbqAfhiYQdQQdzS4AFEnH+1uWf6XuegJ7R1/YPGMmrCFJ/usC9jWYrnR0RiIL1W0JoIbEWDgzU8X7sJUTu+FT0tHHspKMHNArKccfV8nQxWhC8B8cLcX10Ja3RAXr59tOp59c5Qv6IOQI8dgEnznvNEiZpQ38XCLoCU2s0ozJjfkqhZhaixuCNT8sWOAnfLqOC4EI5I6WYqelyAmlTlM/3Ms39E0+6rbvfO+KN/xMI6IRXiG9hfaDwhvCIP3FebdYOP+OT4TbyYC14irCwJhgmFeo1hbm+0ZDSCjUTM0DhbpHXK/MlVmg71VzoeoStAx1rZ588dGEB4okvQzy3Kx0L2f3Qp9WNfw5p+6juuO7gavTv7DmAPt1PpRy6pRyp8w5wPlCIYJ9wZkyPPo1QZyjflnXEMLt2jw+zrcuYyicmPEHD/43eEJfeblQF7dwnpFUjPUs6bqTeD43hPFITaNy186nJXiEpV778ivoj8ECQKNylUEfaiVBBf96FnPlmDZAYT4tjsZ6GyIMfLlNwhBN2vkaCoH+1DDe+SA+O6dNzADoih97+LzJ7PbMMOjOBdVlI1TKGUzd9CNN9bjV6ofdr7jwB+Qsxxjm2RtFsS57hi6uiJ1y+u7yxBHT9+VBxZXxOYjSwelPLrtMfLW+UqXG9biahHW6lmn1FRNCscKCnRhKlB3bgqxPXt2C+ZZAR6Gi4yxDOBT1EcrjRIBCjIk51+MiXPxbC6Gh0O7WxAv0mQo4HXI9bApwjUq3OuSf4wUR0v/NMqJ91M9TFpeuUw35VVQJgs8XLLFz+DUmmo2R1gT4l8kPO1fL1SMxARpGbap5ZkyGdF6b0j3Qs28=","layer_level":3},{"id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"前端架构","description":"frontend-architecture","prompt":"为AI有声书生成平台的前端架构创建详细文档。介绍uniapp+Vue3+TypeScript的前端技术栈选择和架构设计。详细说明页面路由配置、组件层次结构、状态管理模式(Pinia)和全局状态管理策略。解释跨平台适配的实现方案,包括H5和微信小程序的差异化处理。提供组件设计原则、UI组件库使用规范和样式管理策略。包含前端构建配置、开发调试工具和性能优化方案。阐述与后端API的交互模式、错误处理机制和用户体验优化策略。","order":6,"progress_status":"completed","dependent_files":"my-uniapp-vue3/src,my-uniapp-vue3/package.json,my-uniapp-vue3/vite.config.ts","gmt_create":"2026-05-13T22:52:24.7113067+08:00","gmt_modified":"2026-05-13T23:02:31.140899+08:00","raw_data":"WikiEncrypted:rJ/rIw0gVau8jPGqKFBAsMR2XDSFypkKHZQ6YBOgiEB18etPNKW/AKXxDO5P260N8cfR8zM/FPLMKEziA2ENANhI1pYO3cislWW7qhHZ7gIlv4tdlm/nLQr56grAPkmZOTbzxV2iPz7yVidVESkcpQDYDnopoeGJOVmt/biUetP5VsW4l6HA5RHrUTH1XYEaiLbVsMm6wk319LFzT3s1Ryh+DeZ/yvh5mUtizAgyv3XdVkFkmw99ejlUXw8ij0aPK/XwrRb5xUduz0R22uIqdu1wMBoGqoZToZyGAdASSpwNxkLBYrJYRpbKJEFn9bpm9siDBe4aPHxtcAFOeqGyoBxwKb3Se7y4j4sJjwNKSWBcGd6k011VRauCVJ4bC/gN9inMSGWzU5mmSOCbEgyoR5Rl249Pwlm26tqOpsfVbSkqSwsAJN2cCWVfSKoRDB+eR7XaujO8cR6f8NWEXpzdidxSjQYOZGU43Su8E17/+jQhECN5ZPRFdNswAadRCYr87rie05I+/Oo2FE/y2eafLv+cmKSeULZlAMs8GFcI0rWiACCRwoN/uQsa8+MBhOnn/vIbtPtG20na3gqY7d4OJDmg2/v2eLjWgsVlFpQsNCGegNiQ1KZFNr28Rq/sh+k6lzdHGlece9vlVzJxKVSNXA5UBBccy8fiwtJ5XyW87GM3p4hj07g7lnDS/ki624OIC39NiM8gZe/cJ/NO9RRqmZLbcke3XiEaGdSmK0ITwav4rrD2K8LAZh4Zpl2IY0JRRYVNdc6hP9m29Z06N5Rak6DUE70nwqpT5DvK8EA01lKKnN27OkPpNGPxoOJEiWxeuBaAHnEfrxFEQrwcv4TNu+aBPwyOERo5tF9rYLK6FqI8kelXeDJOYB8X78/iPUBmUypHHdCAvLNjHzqyjvKJJwLjiOYTEx14ss2osGcD6XRY9hKWph9lG+ul1n9hkjfTIBjz0ZUdVZoiKglX3gW1yI0qYCO0rZP6i4UmN/7Xi1M+cL1YHkzdOfz8iTf6svgDl3ACyqnCkZZomxwZtrAVD80HE8ixEZRlKLmLmCiqPuwcsNYmnsbmIlIsx6zoJUSGnz6XMxEdJvrlNw/nQkZxcp4EeE63zkELU1BWPZv99FwZ7QCcv8QI12kcv0wcw1p0STq48qcxUDNr7+jlx6f/GTUzT293/RbWsE9wAFd+Ma3QiIQxGqPqZ/YVm40hKkG+Gde+B9gsWkBr/rhwpS8n4FXSL8EiUvFwuKYc+hSlK/bUMUAmTwTB95yjR8du12Nd"},{"id":"96a4f32c-e94c-4d2b-b1a2-05d464dc2392","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容管理系统","description":"content-management","prompt":"为内容管理系统创建详细技术文档。深入介绍收藏功能实现、历史记录管理、评论系统架构。详细说明搜索功能设计、索引策略、排序算法。包含内容分类管理、标签系统、推荐算法实现。解释用户行为追踪、数据分析、个性化推荐机制。提供完整的API接口文档、数据模型说明、性能优化策略。包含内容审核流程、违规处理机制、版权保护措施。解释缓存策略、CDN集成、静态资源管理。提供扩展开发指南、自定义功能实现、监控指标配置。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":6,"progress_status":"completed","dependent_files":"server/src/modules/favorites/favorites.controller.ts,server/src/modules/favorites/favorites.service.ts,server/src/modules/history/history.controller.ts,server/src/modules/history/history.service.ts,server/src/modules/comments/comments.controller.ts,server/src/modules/comments/comments.service.ts,server/src/modules/search/search.controller.ts,server/src/modules/search/search.service.ts","gmt_create":"2026-05-13T22:52:57.3017116+08:00","gmt_modified":"2026-05-13T23:54:26.9745308+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CF2QNPg3Cww8F3+JBf0C3VmdbLEEe6f6zoXoPqx8qxMKOXAkbxbHSyLsNPlQno6Op0+eSDsMRXl/wPsSONeXeuXzmd7YKXCr6LdQfwGyFdnVU4BHb8P2EcYsireqPmS7yPcd7241ga0PlJQOR1WWb4iYcWe/6DHK5/yRYe4UgSY6Nx4mLqJ4kR2zWFrnsf4NVz8tbsVjmvEafo/gGVk+n7xmIxi1fculMNuKox/nicWHZ5zOIutN5exi3FR+XycVnLl+AyGiWhEwhh2kOwRZ7C2YqQ7dI/+cIL6UYQ567Azr0OPTddk26inDUqLMLn4jDNUSfFyKBkd7i1l0a4gWenCFmf9xGdeW54CD4dXrqggZNiRcHRL79ayP1vhrfFovUuQD4f6CMN7o3JXg4TNGUO7akcQfl4bsPJeLDHa28dUr2BiYOTj8aOmgXKbOJapwMjfNfD+GWlQZUghanqg0kr6Rg8kJGvUFLtA8Oi/WNdz2oWqKg1PLhWGA24eNudMCAmrPT8xqE06XVx4FyDPUpHKK4OmNcNzPLLPfhZWraBcaeJ4lNHOr3ZnMSJX9eLd//XZ8DIIXKl1S6pgtfWV264fBmMZONM6bfNykngPEyhHQICHoN0OHv8Eo9THC3UL9dNAthAtcSaAi0slG1RFzEkYoMCcSIyfW0tEcYWngZuED4g2fuMkY0c0V6SwrapO3neq/t0YI41Z1ZAdEIsZzhSrQVRgDy3tJn9lhxPb5ZHocbA06u27VA4QqI4mKXTypAFeTUOCngNFVh0jEOx7IpcM1daOQNmu3gaKYCdtLRW+rKEzb6sBo5EdJfogFuWVy8G/lUvNvtDnSVA85mr5AXMl+a+OKBbrnxl96jaxIlXYUJkGp+KfMaIXEhWrfPwfygPLlNg87SsaN1L6NikeEhcKwCvL9ZKPJmgmjv6pmCXFM3CrXhYwP4np2xDrEzGzW/0ZD/ncxJA9tu0LDSVM1n/4/gGcykSFZWCpGjL/UFdtJor19inudVq8SoDtmWKcN6dni/Kt3ojCwzuQQYGD7CT1bUXcT7h7+akVTFPrZCRgjJNZdz9c+I4Z/VkFxd3MY1M9gsQFXlw7REDbF7/euVLQQD/Y5htCfottLBGM6eKdeLw7/udePUo3KRgVNtBPeK3PmLc2jm6W4G59Wa/e8C0CKi0guNUaFXvyKFwsmmX3iLKzJf4i2zmk2y4yQ1EvbmepfbcQD5bwVIxrRIQQJ7swlZkk+VcCAxls8Ba0tDXghIBG4i2jGXrtPBgzZASSzETymGvSKImtRqj/IsTW7teXyiykr90j5Nh3xz9v3NKtv10HA1IyF8TjSB/JjW8p5J3iywvm7Dk4sdCwMn0yllvLclfI9NIu/EQZA89aRr8dgp6fvDnNUADaBH/fNh5KirA6EmrfAPA0+eq186vvSVAy3gYMGkRkCf+P9dgBpfiyxKiyzhEJi+VkOiErw+2d1UqSl+K295oPiDH0a2gnR5WC0bbgECWzdXLakmnj8LYUt27mqLQCVsy3lX3YDp9W4ysZGaP0Vlz9CJDtyUR48vkzDt4cjaKv4RFIRjFl2lz44DNuzRmtbCWHpnT2+8gvi3iqOQpcZ9TsIvM8nIecvyi7y0r3qn1o2yg0oG7/rYfPGRRSZH6kHB7VQ9vPqllVeoF/XIFob9mWnEO2E02cs5+Yt5Acqo3PEtg7s87GhMbo/gbBXhYiaBYTIhDvPzNquWXQ==","layer_level":1},{"id":"6573e07d-680c-4960-9ab6-7e5f5365c438","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"数据库索引与关系","description":"database-indexes-relationships","prompt":"为AI有声书生成平台创建数据库索引与关系详细文档。深入解释各种索引策略的设计原理,包括唯一索引、复合索引、全文索引等在不同场景下的应用。详细说明实体间的一对一、一对多、多对多关系映射,包括外键约束、级联删除等关系完整性保证机制。解释查询性能优化策略,包括索引选择、查询计划分析、慢查询优化等技术手段。提供数据库设计的最佳实践,包括规范化设计、反规范化优化、分区策略等高级技术的应用场景和实现方法。","parent_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","order":6,"progress_status":"completed","dependent_files":"server/prisma/schema.prisma,server/prisma/migrations","gmt_create":"2026-05-13T22:53:10.2739727+08:00","gmt_modified":"2026-05-13T23:55:40.69335+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkOSvoAManKHYs9hb9vYzqUuCh+Oax0m9DDqRbfDTnf5kohO7Obzad1+86/SFoC2H8SKJw8rT+sdhUlQ/2giiCmq5d3G6F7JjAXOQQn0FFHkWel0wORICGOMqCFEcz/I9Y8479ZxnYuev/Jiby5aob5CF7ugsek2lqHg32DfvTdBkboXWok7um4A7jUgb0pZxabwcPb76wwqxvjYnADs/h2B7qq2EvvQ4rK6edGQEA5Jn/GIGAdeXGJboYDNfwRuDrsnSElMTjQ2Rh2iTnfsYvi6DLXoKNy1ddT4V99ENjMN6vba7of1bXv2pDq10pT6i/HCLiFbqyJwriuayAc66z5bJPIWQ4UFJ/8OG4vvGSlVf0MtOgzifg0Tx70ku8oqrzDe+0R7tTMlEry8RqlKJ/HgcWAySUWeZBoLQOg1zlBHRQeMJ2OZkXCLe3QJO1SWoanl42FOVrE4wxkGVlayIiuBDya2QU5eQ6crGaZZAIDhonCQzVxaTm+10M2e0n79oG4LqV2WiVMScKPAzvcMgj2r6hI0DOHNp2oefMCvPAIvJqchD+dc+xN9/F2Lv0T6sFNDBrNBlSVJDXKt12ccxutZZ0yEJ1EX43qir+Fm+aKbZDVhJ5sBE16BH7SueYX7B1L5S+wlyHrA+TtbWwtSw0pngfR9fRVreZjhXR+5chycfC42U0F5iTDFsiyhf6LoWnTHl5lvVHYYnNQ9Y+BY7jtRtNO3g//Yn1QOVYztcOvatLMQofruoyIxrZqBeo7PhAPE22mexwYlDWHxVMevaYXme9G6smI+L2aHeJpuaO1sTC5gnK/VyO6NA/H6RydNEg+8+DV9yDmppvEbVIQTkQSRdDyRS+SCDMNXcSiy4+vhAhYUlRmqqJN9dWO2axpH1lUbjStabUGicJ7RgnG2wljypJuuYiqalhDcKjrPFzCoUb1x/iMacmHiPyYdf0OZKj3SlqfJbIik07znT1SxAyeXzk6RbdrwmV1CAdvSyeNZcTK9tmJhh4wqgK0E340OxeCl7ajiGvharumeH2SwhKh0VGrYgp/3QzDkGwut7LvfIA6DAm5q3e5AS4nBYKw3MTZ2kvdCT4mOOVF042SWdDjM8Oz2tEOX0grzpe6OXj6kpXPAwTvZrRtblpa08PfWOu5tD2aNN8mvHvSb/XQH8FebuG17vt7Zl3J1gVlTltAGjPpOwubdKMdGTCcZJ6/fiByk2fP7pou7i8EaTRzE/+PDQQcrq0FkS2EnENaGqSUVV/8VephMCNs85TbIXVsvVQqRUwg1CQWg9LyQo9HSNezu7h3Re6QH0dFl1A/9lNLIeJOeNYf1wTOwx93yT+XPqfg==","layer_level":1},{"id":"9fa4da1b-9a6c-40b3-9dcf-5c279bb0f6ce","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"内容发布系统","description":"content-publish","prompt":"为内容发布系统创建详细的技术文档。深入介绍内容发布流程、专辑管理机制、内容审核与发布。详细说明发布策略配置、内容格式验证、多平台发布适配。包含专辑创建与管理、内容分类组织、发布状态跟踪。提供具体的代码示例展示如何提交发布申请、如何进行内容审核、如何管理发布状态。文档应涵盖内容版权保护、发布权限控制、发布统计分析等实际应用场景。","parent_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","order":6,"progress_status":"completed","dependent_files":"server/src/modules/publish/publish.controller.ts,server/src/modules/publish/publish.service.ts,server/src/modules/publish/publish.types.ts,server/src/modules/albums/albums.controller.ts,server/src/modules/albums/albums.service.ts","gmt_create":"2026-05-13T22:55:34.8149792+08:00","gmt_modified":"2026-05-14T01:02:50.1196362+08:00","raw_data":"WikiEncrypted:y7hjn2ShdVj88YDbsO7CF9uo47Y4frqsTyhDsJ+ZdBTzXhotMFyNpLi7l5Bk2/6xBRXWRRDYZDh/9p3tU0bkW/AuF6SuF/cNCmmFmmyBTnD/g+chctiRBioN5XLKlNAx44jMKTvfmnfZgeFxzBjN28GPBzdf2mey6tkT3VhNe+TQ24uMSmAvt9gEhnbDvUKsRG6MOXvYoZjg67lu06IDbps9/OY+5hwHpWcUaeaHBqjNdOkIGxIh7Egac4Wc/Cchl++Cj1PaTGX2EryT/BFSj77PteuYT0FLmIAc/2IE0ca/yfs9CC4rmaFdzJuyb3sFUeYVM2WNk7YK2waQheiUW4E7eAfD6jkDoOPPi1m0a0W2r3ZlBBY55omAU8DDTlS3KweSWRsCrHp4rQWSy1UXvKDuDwjRmjiESdvv+N1PiUpfK5u2u/2bcluXKag6PR5d6Ug7+FLwejlQ9vKSh8ZumG/dbn1DjYMQZ7LP+CenlZjSAauxsnPG30lA4GiNA8eEfD8PskCsD22yBzsgSBTnjl6kJxLefBHP+Ypzfay4vSmY16z8ycblIphOG7QgdK0/IOX8OktzjjRAqXr+7axMnsW7IHlci9MBMD5Km7EysKoSL12Q7RdUHh9bXLSDPBT6D0aKUONaU740Mw0jH2M6n79Va5Rz7rXecq3jFnzukiByoeuDfcnFOgMXafra8kt4ZxKlqMT9Ly+i35CtDg2vWgzT1R3uzaRl3sEwpqH/HoMwGywh3jJqZLPPDREtR+KQdKkOsXyYSnu35hMHbJEuIoeRDP1U3EdX0SM08bcofZbeL0dNgenlEFBP94CIuQzFAd4W+hI+kzDDrVr4e8Y6tV2YQxF9qTQY/C3ecJTfNI8ot7MuZSIJQDl02Uzhbc46DR53Cp1Ctdpm8aEcP7INEVo/iFuEyC1hWN2XpI+7zdMx9UR40ITJTj0RP0klXAHgCIblDJ8XSekHm3BboNvNSl6IY2m1VBFOtB9eGBr330yvXdiXAogwoR3Vnf47ICxqWum7j0aHshDEOT+Mh/MoFGGJ8VduIIM127LnBZQ4uW5GlXgVi8zJKDSyCUuehq9g9aL3d91YkWkyGHjsp8g4bZbRpGUmz5Jb8V+U3fySFD1gwbVlBbZb+HkLWG0HBtNe3pFZnyh76ZwXR1FUCHiNmrxhKA9YdoUl+V/7vAJ3Jyj+/4SFzdRpAfy8Svn7yMa6vKGsa1CKRIpHGiG3b515Ce74tAI2zLbXXEAgtlA9kAEaLLeeyNuftXTJQK3W/hKB10K1TNu/tTAVT+kz5ThjTsBF7bEBDbU1m4no63krNZ792phtCujvnRhA5GsaHgu1+qbleNHMGhN78zoxRNG8pQ==","layer_level":3},{"id":"f0c961e5-1905-4574-8f76-f7c51312ae54","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"类型定义系统","description":"type-definition-system","prompt":"为AI有声书生成平台的类型定义系统创建详细文档。深入介绍TypeScript类型系统在全栈开发中的应用,包括服务器端类型定义、前端类型定义、通用类型接口。详细说明数据模型类型、API响应类型、业务实体类型、枚举类型的设计原则。提供类型别名、接口继承、泛型约束的实际应用示例。包含类型安全的最佳实践,如何避免类型错误、如何进行类型推导、如何优化类型检查性能。解释类型定义系统在代码提示、编译时检查、重构安全性方面的重要作用。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":6,"progress_status":"completed","dependent_files":"server/src/types/index.ts,my-uniapp-vue3/src/types/index.ts,my-uniapp-vue3/src/types/video-generator.ts","gmt_create":"2026-05-13T22:55:35.4423592+08:00","gmt_modified":"2026-05-14T01:03:01.14209+08:00","raw_data":"WikiEncrypted:v7nU24v6M2kx2DIzA70PyrBkfChN6meLi8ja07U4DNEUswsk/jsqzMD09A+X26K5TaaG4x6MYPKXpblZ1QOVh/1TnyomDdJsoI9Npkc5oalROzKpxk8vANxHipZ58kMvf4ZdB5LiMzFMnp4F+PrL8YD5yGdWvbKB5zS/tEnqRxX3wfC+k0+1nSmon3r/fMTmB3NQA+UV5A1C08ulexnOZ7l1Z0P8xpORbU0sJo71XPcWc9aFUykSnxfTcEqQa1ely90NmFth9RAx5R8GFNMD08/jU1fz7qu0YaHGsIBBmVKR5kgMFyTzbKrlLQiO+5QevnAy0vBfgvZ0+xSwnI6b/cgoKwiNJ9sNvN+C+V1FSK28X0w3Vl5v7ORyJWXVuAHwnMOk8WG4GsB8kgrm6cLiH264aJMjGBg6idEA8mtOHnlkAlG4M4dXWsFv9na5DBtwdDtQ1tiCkFYEl6nCoC15r7pEZ0YLh5bFwsfz3A6tZmEfumgiOoHpiDebv6fIxNODlho9oJsCU3/J9EMdE5wTXLPfjyDOawTEe0cIEnUmjA7qEeeFx80WX1IHFDEqF+UosRDxIhT8g8nN4XaxKr+jYtnHK9h6jFNMM0AwZtCdm6eN/0gCJG+3KGPCY2V2cZ3fC8A99Jf7oDrqS8wqIYfhL+G7UnrVPF61WyPG1OzbZuP1NU9D24fhozr1D5Vd+I/1GrUHOtc3Ig4srwcv/xxC5VjLo8gLpJDRjZx+MkSbfrFtyEP94aqUjS2O+8v/KnpT5voex6bGot6fZww/wbJmZ4QyugBVTmWVYtkdGmZkbX5qn2wWF70zg2dmOOrGskE8kQFJYf/Wt1l4lOWnerko/y/Py0s7k6ip3WOxhe2mTTbuKl73N5QyzYzN63UbGroOLrNpvBWvvBH75X0Y7yDfsrEqUvSxxQ2xls7FixpPcLTatcQuOrtrawYt7RGBlrwjke+wOJqlcFeQCkTlJAh3qeodHt/YADF0L4BTx/SQy7Nte/8//B63+DzMmCVCsAZ5jzGt42G7Rtl2s+1LjsEZLcQUHZM7X1WEvuaBYET4Zn9pJoPHioJ71k8f5MqnRDVVZEtWQa4BH5sl8GIl6gcVudpLcOJrKVxIEJsnnRUmx7ek0Ap563/yBPY6ukKAUGIlv6p1VugiQoSgbwGtkvopt2pGV8UQFkWT27znZeCJvF4wTb77uyZ5Llgmr4w42FE4vRuj3rf9UxPv8qrXc9KGdECOSfoN1Xg8ki473FkTwdocomJxiIcaSwoVlYGNcJ9RHBbtVbSX5sQmE0cqwCNQL73FsMi81bdA39A9bpNY9stC6+VIH+c7eUyiVWzvg8Du","layer_level":3},{"id":"0644fa6d-da66-411e-b766-c810e7e56553","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"后端架构","description":"backend-architecture","prompt":"为AI有声书生成平台的后端架构创建综合文档。详细说明Koa.js框架的架构设计、中间件体系和路由组织。解释控制器层、服务层、数据访问层的职责分离和依赖注入模式。介绍中间件的设计理念,包括认证中间件、错误处理中间件、性能监控中间件等核心中间件的实现。提供配置管理策略、环境变量处理和第三方服务集成方案。包含API版本控制、请求验证、响应格式化和安全防护措施。阐述日志记录、异常处理和监控告警的实现机制。","order":7,"progress_status":"completed","dependent_files":"server/src,server/src/app.ts,server/src/middleware,server/src/config","gmt_create":"2026-05-13T22:52:24.7113067+08:00","gmt_modified":"2026-05-13T23:03:41.2732475+08:00","raw_data":"WikiEncrypted:N3UbzwGjCC3xD6BrTM0cq8Y9ccVoDb9n1FwE8c3MNy31fwp7itn1eN/9SBNHQuzqn4Z/E95mV5akFaXhbd+x3BnBuCLUIn4H/fhyxJNwP64N/QTuN2Ife7i1SeLh3F4EVcsMuEa4U/bSPVpdbeXt8dOblPkTPabbQWrJKw8UFOiYpBXFHWSE6aLWgLz2Tr70hrWbOEfSYjufZqwIK6/61Sokib8/QIj2AHQp5MPqbYkgI09vcz+N/KMD4SaI2kbYlrW5T4LvzMFAuG/Ke8wmuJW/grszy/p897ckADq6rGqi9W41E88knvQ3JVHRoGMFrPJif/cw05ka2CZVhC8QlXnjjIMk30Op487lpcOePG5MFH2YnPcCfoeq6sosjGHyIrKN+ddx/3+TPbB0BFwDSSLhGZSzIm4MrSh943adLG79xCkJ1ZKyW8XzxotSMsjR/fVVQa7K2eMmlMpChjOAfG0UDENbdX340nt7UH5E0MFHK/UNUerXJcv4itYr4maTE2MxqoLgZURZR72Jw0wykeDq2QBieQmLEIBEAr4GzzdapiajezYUeaAlVGkUWQc9ZkRARhfITrZ9hjGwAVHoCA9qOBSQcElCDb1gBLqsNFuVynCm6VPjfkiRtXxa9aT+6pCVbugg8JoaDfxPHDkVi4MgvoxXf+OxCSV9krQ0G8IXVv2PYIb/Mubn0aqqKvKF3n0fnm3KlnPP6ivH2yAMZqB85HVE6VrxE0u8NDA/L6WqxCR8s2Pyu1gpIHtP+CL3NWjgFBLDIlyAWL+9GeWyAriQECiDPL2tyg2rQB9r4MWuL1djFrH2SbAo1dt/fx8Laa7HSNqqa+qTY4uldUU0myNmYlfWD6tGDXcYvUbC74vXZyydd07B/NjzLMqcdMzTsggBSWJoEFKnnAJLaKdSiTeuL/kDib11zEVufDTtREZq3QSDNf59vi5F/7o8q6WeCn2ZqyfubximyMfE+L51TlIyEuX1I2cd4sFNXfalNeVaBuGBvREbPkoZwH7oaUo9EXeFhnQ6M065PVwz2fgu8ovp19HfgBYyUNvCEVTHES3icUjznmQY/JWlez/2PwIMkSePzKImk7m7PjPhgPaiLKsxcBq43dPNWO+AmA7vfAZZKofp05azC3/bywpBDbykhiwCqydG18x4MgNNHxnJPIfyVfAsZFQoqoWQDhXMAnslXDK8z+B0ph1WUSnEEX2iPdLJzjqwUa2MKQdvkcVWgpypO08X2jhyQOI4tjfM7x++RFifIILmpH18chXHEDftVly3cCg6jyY9bPtC6Bi7Ag=="},{"id":"33e6266d-c33e-4eba-87d0-aec3373141a9","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"媒体处理服务","description":"media-processing","prompt":"为媒体处理服务创建综合性技术文档。详细介绍音频编辑功能实现、模板管理系统、批量处理机制。深入解释音频格式转换、采样率调整、音量标准化算法。包含音频增强技术、降噪处理、混响效果实现。提供完整的处理流程说明、参数配置指南、质量评估标准。解释并发处理架构、资源调度策略、内存优化方案。包含批处理队列管理、进度跟踪机制、错误恢复策略。提供性能基准测试、成本分析报告、扩展开发指导。","parent_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","order":7,"progress_status":"completed","dependent_files":"server/src/modules/audio/audio.controller.ts,server/src/modules/audio/audio.service.ts,server/src/modules/audioedit/audioedit.controller.ts,server/src/modules/audioedit/audioedit.service.ts,server/src/modules/templates/templates.controller.ts,server/src/modules/templates/templates.service.ts","gmt_create":"2026-05-13T22:52:57.3022203+08:00","gmt_modified":"2026-05-13T23:57:59.481572+08:00","raw_data":"WikiEncrypted:YfQK7cGsmLf+7Mh75xR10jlLmPGBfbKX0k3LH8jJ3HK6RcLC+yuU5yA7dD8DGR2P8jRGrwClWBon8PFIU55T++emb9D1NoGKpy0TT4gFqOtEs4orWCf56pTKJqYDWSR4zf9iNPoSk2wTg+kBB/ZY4Jx678DgKL0yVMHVdpjqtiM1DrhMfTz6zC+UvK9RHkZN+xbTvIPnt84QQAf4om6Au/OBI/aVD8ZFsJu2Glbx2IUrfUOMURhxJ8neMAhHbkGj/gOYAg86bNvxJ7hdyXrP7a6x7rOSKxCY4mdAJNHZfADRaYT9kVSX2MAiNyCcr2O+E1zp8oSPD8dM4b61gZQesJ6xXu1j9DdmrACI8jsnBitdoWBjrHt9+09AkD9PPNTR4zKrNYoPZplXbBvRl1s48jI/3i9yrPWb+tp5dibg54OPDm41qmrjGdO5O7BiUv6ccrzkirhvtXT9ONe4lQq7SSqmqiURwtVjnje8Fs1HTSwuTO52quK0dMCtq+piwoKTv3gAx/J+B8PdBeLPaI2NigIlmEmlMquH27a1Dh9mi4rarjk8L2uXOeBwSf9cQdBkw6f1IAm1e2FiIJlNDDi25NZxO14A4iLXBa6Yiy8RQAhLiAkRWlqa3/hTQh62bZL2Iw81bhrOHk3diU8IyGpbPG8jEqs4Fi0FqEfnsycaKzh67FBQ5UPRsphciYrzYYUe7Y+liwvvDyyKemTdEx3q4wbUihIwdNCTWR/OdJNVgQoAPGaGByn79mc6Mx8iIqewafeCc3/RD/mEm7Hco8JeaGYXNCkBi3oCx6FFylZ/en3ctlqbcDFQiVgPJyshqX295Us6vGkBkJZLLiaSK01X0vJyTaujvigz0MIZ1xa3uqjnPvv22T42qsETx4xAbiDxjXNpey0Z5Qakup62Smcq4Q3YA2g7qmEYVir/iYXHU0zvLkPhIHl1ozRgeXNZtDZkYqPT3OYnCMm0PMrTceOKyg+TYCN34dKXonovPbaq5kWhfEB53hRK4kGcyuJd6kXGnoUA0WsbGjw6/fTVt0Rmkg504TSSR00gsrFXlSweoIJX73ZyGvB9adk12nxUHlm1ANw/WzHYH/Y+lq9cEHXatUBXC66xL1ARU8UUg62xfIDGa+/X0ehqDrOU/pjC20oFERk/8TbIr5KoGc8rP0Z8DjO1JyGGd7bNsRj7pdxzgazeTNiThHO1/Ftnh1l1xN+XIw9bGVZTkEePpjjbh076lZY6+hM4eRJb2uYX37HYamzSzNZJPSIFBk7pg7/0YZPihZD80O0xceX6rKuH1qBjVivQ2yL9iFz01TQEgHEIHOeJPN3cj7769WIk8SBW4854sY3VxOufAlDWYh2KoyqHJVooVoAVeTZyS8lW0XEbObzzVXPfdYXgxx+1Gi8feJkHFHM8A883o8opO0n8IWW2sfe+57YTNnNJk8IGMsoPOlpa0eWY9S9g4pWzQYHM7S+BIDQkZ+zcrY3PWdnUGSQa7lUyEJEAyU2KCYnEbi+2llHeGZFHU1OYtYOG6GAuxV6iGmVRWt/cOWmurjn3Z7k38wXF5lYrrvMhOMIJCB/DDYw=","layer_level":1},{"id":"2ba064e1-26a6-4a3a-b9d6-5133e5ded75e","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"配置管理系统","description":"configuration-management","prompt":"为AI有声书生成平台的配置管理系统创建综合文档。详细介绍多环境配置的管理策略,包括开发环境、测试环境、生产环境的配置差异。深入说明配置文件的组织结构,环境变量读取、配置验证、默认值设置、配置热更新机制。提供AI模型配置、数据库连接配置、第三方服务配置的具体实现。包含配置安全的最佳实践,敏感信息加密、配置文件权限控制、配置版本管理。解释配置管理系统在系统部署、环境切换、参数调整中的重要作用。","parent_id":"5128296a-f271-4be8-938a-fab632166600","order":7,"progress_status":"completed","dependent_files":"server/src/config/index.ts,server/src/config/models.json,server/src/config/models-validator.ts,server/prisma/config.ts","gmt_create":"2026-05-13T22:55:35.4428989+08:00","gmt_modified":"2026-05-14T01:03:47.8623626+08:00","raw_data":"WikiEncrypted:aC5ZtUyEKPSxjzg//aVllPgfgMGT84WysP5aU7jVGgMDPSKvWZp7xsAQzGtWF2TBp7VWit72FHY2N4ydJCsX3BOj0II94c5YeA7axu72khKa4UY+EvrniRSruYY1GAvX349XG2PJ+JdKCy9kpx9u+ESD2qlSbfCX7tzCjZsy5udxvuS8W9sEBxcU1Rz8IObXkfNVlWR1iqhcLeJaOTmqB+Wp1SvrvHgWA05wBV9E5dxv4KUpfTWfynuGUH0zLo+qf7C2LbYv8cT9aJcdu+aQFcPamn0iWTQo5HWW8fceR4rO3tHM0zl15Tv8W+9l0NfnanlT5udUOXlrjeDDlVwAWC5GlVh5B3GfKSnoZW6feNFv4gImq0vIgKf7VI0NPXIgRs09FxD05BgoZrE2lt4z5ZRca/vxPWW69bRSRmFx43pGygSgo1xTYUQkFHBfNg58fFXtIGQdUBZlX7qpSsPcF0TBrynHE3PTkdsd37qppYTJHJx/YMtQQDgxGjvCmKSNFjABHE+np8kN497cJTdTGe9ONnxfiIJv7ldbG70btIVP3+z/aR4MXoLN/8gL4tnYE0FdRevoK/+0FGUIUD25TE875y2iL+wO+LoSTGqvKWqUtltdGbS9Rp8WUjjKSGjOg0l+u4fn3W7NXNHutfzut4WVML0xbMwcZ+tqIMRC3n/xMfbgw7ho3RT+JH1ch9sQ14bkON4VJTuSUy237S5JNqs9IDb+BRukiKQ6dmV1l/uMMAw0HF+miKMKtnTnmtiqAlCQXsTRAkqta9BwAuMbBZpoNpUlPfwQ+8FSBD9u+NZ6qIYT4E2ePRKFQ4Y1ooRWxxcGjRtWiCQFokLbCftMRTZJaSEKZafm7nLv39X341V6RNobW6Qlt1TCR29o2G1T2h0kmaLuX0o6fTkis/1tr1j3VuQ4ikwVdzRu9FZuyEmJ0JZOTGp9U4BrXnzWv49z7cSWvgzsc2iEBV5Nz8pRj7e8siDqXXotBTjiGRctrkPaeSOEvJNycIR9Fy7pCl++T53mQikonm2tSDNXVILA0K1Xq9afqgY7U3mEYXRztuUF4W9OFsS1G2zBQs+KBAl6C5niGKmtXx+Z5zvOPkwyKQVDIFSUQZpXCZVIuXGSwPuOLF9uLPBNoFwha5NWEiXOX2nbCdZrSC+z8sxv9p52knU9C2wuwWLnjc8QfADjILVCMTwpXmQfiHO9URqMuOnXc4P0kza+gsJI9iQEeRrtQ4mA3Nn3Uux91ph2Yd/H24Io9dsFu9d13yYtfMtzo5yRA0V3OYzETfEqbQcshYvSSzDD+6vhiVZC1t/kX8v0wVk=","layer_level":3},{"id":"a7644116-2431-48f0-8cb7-2bac60b02c86","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"部署运维","description":"deployment-operations","prompt":"为AI有声书生成平台创建部署运维文档。详细说明开发环境、测试环境和生产环境的部署配置。包括Docker容器化部署方案、Nginx反向代理配置、MySQL数据库部署和Redis缓存配置。提供完整的部署脚本说明、环境变量配置和依赖服务安装指南。解释CI/CD流水线设计、自动化部署流程和回滚策略。包含监控告警配置、日志收集分析和性能优化方案。提供故障排查指南、备份恢复策略和安全加固措施。","order":8,"progress_status":"completed","dependent_files":"docker-nginx,docs/DEPLOY.md,deploy.sh,deploy-prod.sh","gmt_create":"2026-05-13T22:52:24.7113067+08:00","gmt_modified":"2026-05-13T23:03:22.3553817+08:00","raw_data":"WikiEncrypted:0IKfLNOWe9mZfG1jVts3w2XbjO+yyEmY3ONOjrL5GjA3YcCk7HFAQ1etKc5i1P7UH3oVY8Um0qaAPkZpvBj4kW+pT2WiwuXVEuit5nBOnQUrSzJXCFN23yj3N8zyCuJUEzlXgrqCW5euWpOt715Ouf2nX4QCcchQfTRIrbRucKZ8ZYM5n00f5b2hSMOe8haOD4nSBc81QKFO92OQgR4zcW2hkhp77PhR6afjCjbTZRpUgLr53pwQWJrHoXGK2r+4cdJeJjUqE0tDXCiO8C9jAxmenCx7t5+7AYlrU04/PrxkXov26VAOTQRTA+YEQdgLpoL/iluYj0MxIZtD1faXDhcRGWW2MHR8Gw8gFaV16PGyrLY09nHkLOqbLRl+hl5MhojRwxosYGBU/epasSE6JYdLbwq0rDcVuQk0g2+LYN4+ETftdvKQ1esWXZHPb3GOCYH+KMW7CsyASPPuJS+JUDcYDhFUeTF7XqZhFxzH3krcQ5RDv5Fhvexd+83UhloK7X+4H5AZ08RuNs/nEgxfpqDcZqNSKl/ynOBzV7Spiri+y6Rkvk5Xt+EKWC5kB49Rs4Ye1cRkL7ydwSXOtY408xvPB79X4pGMP1ie5YokYUGgjqvETp0tQm1fjxEg5ZLF3O0XHLnyoc26owYsVM3zWyceBKNdA0+D5UGdRoQK9OR1lG0ilsKGn8gqbzFCpbYVBxKlprph6AjGTj9CpS48RjC+sI43I/wDWXYJWhMjavwZ1pGxc6DVuYDDBaADLZA6L5/sMGZuAZXoPUqUZb+gFyzdLl8XdSgyasw999V8w/zfl54HZQrzB43zzAE/iotd7RiTfjBZsRKCir4co0Ca4CiCAD/bIcT4bfSzYvQ7A4aFQcDXPeNjPKG3aJPn5dzeJd9KDD3JxnddA+ZSUfTkVy+oehr2NW6jXrwoNC8YN4H+VJpR6Icg41XRUkwloJl9SbmAurkjyDyBmXBoubk/SC6ddIogoEM3Mlmdr5Z7ej5+87Le2XYQd3+KfbEKVrK2N8VPKWAjpCKwygPwz9DoUF6FuT5kfYMAN1NTmgbmtCpy8Wue+P9eoBheWe/cUZqYW7lAc1lbmQMOLKescMUmjGaAKwzMqEtGcKtBuphW/Y/OrBSMaWvixMDxu2ouQ+aN9VbJSRpqFPOUFeqGRmwt5+Ce60GtKbLA3gZnHS4Lspo="},{"id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"开发指南","description":"development-guide","prompt":"为AI有声书生成平台创建开发指南文档。提供代码规范标准、开发流程规范和团队协作最佳实践。详细说明项目的开发计划管理、功能迭代策略和质量保证体系。包括代码审查流程、单元测试要求、集成测试策略和性能测试标准。提供新功能开发模板、bug修复流程和文档更新规范。解释项目的版本管理策略、分支管理模型和发布周期安排。包含开发工具配置、调试技巧和性能分析方法。","order":9,"progress_status":"completed","dependent_files":"开发计划-第二期.md,优化开发计划.md,.plans,FEATURE_CHECKLIST.md","gmt_create":"2026-05-13T22:52:24.7113067+08:00","gmt_modified":"2026-05-13T23:04:54.6920547+08:00","raw_data":"WikiEncrypted:F3QgleoEfoy16cQggYe9C/ucQxiwh0okVA48AmODs5RKNS8ZgNngqmnHSFcG/1UaJxx+3dUn+EkMTpYUsOg40maJ6AtrtSa9XlT72mN423V4yOye7JUGuOgpq+ZQzCpNeDH/55pKDBIj0jCIYH6z0hFSiImfPbYzAwLH1I9gfkkpCLQIbNYELqzzJ88yQ6KnYPidZFL/eNDIQ1tmc6rQDXkQ2hJ9Y1V5+k6yhtrPEbiIFVdS+Vsn1sjj2YYCXkIcz/8bxBX9b8i/F7oAffjpos/WGqwHcm0/d3Gvh3KtTtHOF6oeUGzajK0MEeR78Ri8AiwyoLuyD5cIBdpslteR0tCBXHHH1MmcoJzOj6i+SOzOsxsBpOYM1oBQ+R2ftckG6yhx3kTv6yrOdVijgOTdqgVxH/GykE+ol5fPiABb+SRe7qNyM26aSAXNY3yliyi8NVnRY7rTen5KYSiAFqTIv66OEPxuK8v+RIpm6PfN/GdJub4Jdd4mD7gN+hJRPdX+R59jkQqe8J8G2cJH+sKSS8PefYucvqJPFJmeCfPpKw+fYVTWCQcnD1+sSdwdJs29lp+fUAKZwRc3HoEJCLH+mwkpcce3aRIGK2kWfrYTDXWilj4PhnDd1T5sfOd/YSjI73pK5VxNFqcW9cvv2l4DLZqeU9DvFVsauoqzfeI800xVTKCn+mHRAQeqs2t4ZmBkj/eht3m7qqUCmB8ijPs2MZT6XnG2YSP94NI/39vBjS0fwhqgiQuOwuml2F5uzc4fx6/n5Mej/P4n9dmK5Fy9ncz7P5ugi4ri/tP7gMU/ERHOw4w7FEcA4g6rtjPbnxoU/L3F/Bw8hV0fKE0bWv2vNwjgxp59shCVG1P1eVVRtdZHdjDTdqdFIDjRnq5GCyRhD3THeFO3r/tzVtrQmSdllptIaXXGn3oEsOuVOkdHUPBuV61eF8s3Z+xzn+G/lIOyLKOCvM75LAAgNuaOpyVLPlZlA+pVOvbkWRF2oyLCChcTpskV2jMVGWfxFC9QPbNtTE7m/TL07KM2xZ9WOgrku3MRPpxdeVe/3C+jBxIJHMeml/bVhrxzgDhfoxhJ8VtC6ebZyCj9mp/8DCZjaRQB7Iu17eZMV7oaCgVBpWQXgLFz0CE0iGQRHnOHBLsTVanfvsCSbwtGEwT87izya1LdG60sMYFivwrKRPGFy1gYaT6IW4Vss4qfc9kdUTaqKv0N"},{"id":"09950a00-d436-4c56-8d5b-5f418928f264","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"故障排除","description":"troubleshooting","prompt":"为AI有声书生成平台创建故障排除文档。整理常见问题的诊断方法和解决方案,包括TTS服务异常、音频生成失败、播放器问题、数据库连接错误等典型故障场景。提供详细的日志分析方法、错误码含义解释和根因分析流程。包含性能问题的排查步骤、内存泄漏检测和CPU占用分析。提供网络连接问题、第三方服务集成故障和系统资源不足的解决方案。建立问题反馈机制、紧急响应流程和预防性维护策略。","order":10,"progress_status":"completed","dependent_files":"docs/app-troubleshooting.md,docs/TTS成本分析报告.md,server/logs","gmt_create":"2026-05-13T22:52:24.7118276+08:00","gmt_modified":"2026-05-13T23:06:26.4672486+08:00","raw_data":"WikiEncrypted:CaKOW8OSSWs4aEYk06Hu0hGGy7zXJE5t3XZJK+9x87Wqy/1Xzi+22LbOfczFZkieMj5WEpLZAHMOxW2WrQJBBEdxXoYG7k5LtqOKgYKtIHQryLH4k5fYH1Wb1d33/UWuioGlRZlliq5N2ZkN1IuPxP/2rBA1ek1ARe/xlH/q4I0MW0DezzObl2xBOfzoLw486kcCkLt4eFlTouNEyfTU5M8+QQE9ZtJ2cmg2hqO7ggrdE5QOa+rbWPmAgbzz2i10K94uzd/ePAXIXgMHSMhmmcwpl1IJQ/c3zqYerqLMW98j8LoeeKNMrzIT8uiWoKeGnyUDelwYdcX5rO/JBm/SAsB5+DkcztytE7PF9J9QHgQ4dyq5E5yFFeFc8f3r5vkeVveNNkmEZoUP63JboPFAOeyKluwX0ovTYR1VhPEDA42GLoRwBvQxyLAiv5q78CIwCkH1VNrJijXXvnepQRyu0JAh5dY7TsfT1ODxsiud9eeIK3hXLJ3/9xqWGZWsgE0vKn8UsYHLP1hTPyd7clcWhv/9updwROlGyfCJwp0O1dxULP44A6shvECiFdAG0HMvVwMSu6iammL2RFduspWInsTSyzgldSCw8BlyeI+el0xhI/i5c5BPYcuVFuvyRpdsU02/dMOZFV/X8PnKBItW56VqoB1HVjgRYa1HTNDt0ZPd3x+YBygxRbvJU1cszXzPki2b2pPMqJnqA0zyd/HLZbTINdGhrY8gfTXCDy5oJ3CjuA8Fsv9WAFc4q+Av6tH3DjlVUmvEitmNiWoo/4eFzYIuhW8ogN5waeCKSp7Bso/2VgJ6QZCfE+evEEVE2s44Gx3UTKBSg95Nm4xJV37FlnZt5TCAycWUio94huje2DEDm/sKEpkSnOXpyvyc263LSLr6UFiXFf4qZoHFiFZiU/2Z8qc250P2peQGpQuA1CCWDEfv2vxNuHLdw3W5duZFEd1v8+KNgm1PIiHHZGAqpJ3H290HgmJQg/qBWr9aEfxJyCG2RJmlwIy9ZnSPjRRrlsf9wjL6iWgzPHkquw3claj4NFr8cygTTGL4NjWdF2CaUQMuQOR4tCmw+zXS4+H8DD8QL3Itb4ebVCNdt3epBp7frCM0htmeZ+svVXGRx7gBJNAO2hdm/+X9ibR5Yc3mLVBiYypUsym7hWantTUf2pEWWXw2+LHe+botXdjghDbxkyowm9pCTHfeJ4G7Sgl6fWFSO2vpxhoa57yQyvwIKyfX0yuqFJgeqrc22AeTBEteSzGBDWzuOW/ovSeCNv0w"},{"id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"扩展开发","description":"extension-development","prompt":"为AI有声书生成平台创建扩展开发文档。详细说明如何开发新的业务模块、集成第三方服务和定制现有功能。提供插件开发框架、API扩展接口和配置管理机制。解释如何添加新的TTS音色提供商、集成新的AI模型和扩展播放器功能。包含自定义中间件开发、业务逻辑扩展和数据模型扩展的方法。提供扩展开发的最佳实践、性能考虑和兼容性保证。阐述插件系统的架构设计、加载机制和生命周期管理。","order":11,"progress_status":"completed","dependent_files":"server/src/modules,server/src/services,server/src/config/models.json","gmt_create":"2026-05-13T22:52:24.7123418+08:00","gmt_modified":"2026-05-13T23:06:06.6760186+08:00","raw_data":"WikiEncrypted:9tFZPEMPWdLFkkE2XbXYMu38+LmF7cxBGtahEOMSIojOTMoaE/0vg7rsG3K5L5EQwVbodPm3HXNNwKwrYurfvIuXk8KPiHYgRVdKgUM0RHZoAlOoHBy334SEaX/ErHUm/1eiAi7E8TYy+JH5Jg1IdipDqL+dLLS6+Er3FuCR2ioiOzVG1c2DoSQ+C4HreXV3+lDiVjxz2dT+jyco++3U7+8UD4XVrZ9PA2fT0e5hGt6xgNQ/We7CdJ+uqX37wjCQQux27KUe6D5zbkW2tVs8nLTfw21XEzo4W9Odpqt2sdJTv1aG/kEpBTyYkVHLYbLkR5b9CtGS5UQh1AT+oc8PFkGLMbLftgdG9sAxOHxauaydmgFGmwTIP5wNnFB8foRLk5BGn8+bsX1uheB8n2tdE9qjWAvlSaLLGNoWU4UmBeLX6FtKybk6MN/zovAj1n3HRVB1vmFSSEuYrxW0cnpts4hnaarPPMTSsoZvKkpQ/EN+k/naTbOa3U3Qh7iffJGHI9JUGTsUlVP9vld3Z6yS9cby1ugMnzv2DZa1zNBNMJ2N041X0MjIBBcKnCX/JcypFQtihTHerkj/BjRbaGUNvcfmZbax6TccaIRQEbM97sFo93OypqFidWVBgMhzeMnhGvDAvJ40B3D9GGGG0KDz3oENTmm2Yz0jW5m4KRS4jGzWqgIlS6Sa0OGRxvyosUcuk9na1WeH2MpBTCJl7UAqU6PVo4fw7VRjvaD84OAI1ogh/FI4P3rrcvACSkp6frabbl9izcVtQnf1lzAGS9sFmU0/pSLNOF/EDQ2ZsklBRBl5bDTqqSYw21SkoyDLcS3x84O33F/Ee2+dpDYetSsi5DaNoXMgkOeEGzuALB1t5zpTsC0pzN8W/SVyoYNO7ty3Q3jqMzmtr7//3cQWy9nK/Lh3+YuCN8vmbd1H1k6fK3AMMiuq6xrobyT5E7fKhphaB18Bq5NwNGKdhhBcOcC8iK0XKkwW8o/HqkDBDnFtFJRY7A0XYpNPIZ4weHskv14S0LTX0XBKYKmsK34y3A4o1ZFJypxQ11WRytxNCerjHdFS1HR8sxDTIYU4TFbcPW+C3coo4LMnbQhMKhd02pk3zq0pKv4tX8zOWs9SMgcN6irYNsqxLownhRH4xxOeV1kPVFTIeecVc0Vzy9smeq81rYNgg+aKvyma5qWVr8/smXvgqRor5Av0UKbpTsqlm5VhItAznbQ/bj37qQod4PuucxaXVsOJ7JUztC4P0NHWWUc="}],"wiki_items":[{"catalog_id":"ba88fffe-9a9d-4a80-b89a-4acf73742d7d","title":"项目概述","description":"project-overview","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"3bc252fe-a643-4c0d-be8d-e132c98004fc","gmt_create":"2026-05-13T22:57:55.6644141+08:00","gmt_modified":"2026-05-13T22:57:55.6767925+08:00"},{"catalog_id":"e13a1c8e-8a78-40e2-9147-fd3872c58b3b","title":"系统架构","description":"system-architecture","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"de8b85c5-21be-462f-9092-4efb87410c78","gmt_create":"2026-05-13T22:58:20.2119674+08:00","gmt_modified":"2026-05-13T22:58:20.2197591+08:00"},{"catalog_id":"e82b11d7-1e27-4b1d-9f57-ecafa5c12858","title":"快速开始","description":"getting-started","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"700c19f8-6523-44e0-bd85-ad735ada6a78","gmt_create":"2026-05-13T22:58:38.9764078+08:00","gmt_modified":"2026-05-13T22:58:38.9821608+08:00"},{"catalog_id":"66a19e75-b7b7-4cbe-a71c-b26390d0654d","title":"API接口文档","description":"api-documentation","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c690f262-fc9c-47b2-bbe8-aa9aa9be07c2","gmt_create":"2026-05-13T23:00:05.1039699+08:00","gmt_modified":"2026-05-13T23:00:05.1097021+08:00"},{"catalog_id":"37c704b4-0d1b-41a5-98ae-cd74b238f8f4","title":"核心模块","description":"core-modules","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"4a149bfb-4024-46af-836c-eab112dae4a0","gmt_create":"2026-05-13T23:01:16.6865442+08:00","gmt_modified":"2026-05-13T23:01:16.6982539+08:00"},{"catalog_id":"ce72b8df-136a-45bc-b2d2-e65c57736303","title":"数据库设计","description":"database-design","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b393a8f7-d2f0-488e-8df0-2bf0ac031b7c","gmt_create":"2026-05-13T23:01:28.1311925+08:00","gmt_modified":"2026-05-13T23:01:28.1402238+08:00"},{"catalog_id":"fde5e7ff-95bd-4a37-a6a9-d98b6855a28f","title":"前端架构","description":"frontend-architecture","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b314bb6e-d0a1-418c-81d3-13ebdd91e32c","gmt_create":"2026-05-13T23:02:31.1299783+08:00","gmt_modified":"2026-05-13T23:02:31.140899+08:00"},{"catalog_id":"a7644116-2431-48f0-8cb7-2bac60b02c86","title":"部署运维","description":"deployment-operations","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"62e1f4ce-1906-4e75-8694-15e41a0d1582","gmt_create":"2026-05-13T23:03:22.3475375+08:00","gmt_modified":"2026-05-13T23:03:22.3558994+08:00"},{"catalog_id":"0644fa6d-da66-411e-b766-c810e7e56553","title":"后端架构","description":"backend-architecture","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"14358845-360e-4029-8007-ffd48f387987","gmt_create":"2026-05-13T23:03:41.2614869+08:00","gmt_modified":"2026-05-13T23:03:41.2732475+08:00"},{"catalog_id":"2d4c97b3-3dc4-410b-b7f9-01c0f32833c3","title":"开发指南","description":"development-guide","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"03e20955-ce46-4245-b5b7-84f1d226e799","gmt_create":"2026-05-13T23:04:54.6715151+08:00","gmt_modified":"2026-05-13T23:04:54.6925905+08:00"},{"catalog_id":"f93a009b-aaed-43f6-bc54-56c4f2c91658","title":"扩展开发","description":"extension-development","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b4223fac-95b7-40c6-b0e2-2285bacfd216","gmt_create":"2026-05-13T23:06:06.6671829+08:00","gmt_modified":"2026-05-13T23:06:06.6760186+08:00"},{"catalog_id":"09950a00-d436-4c56-8d5b-5f418928f264","title":"故障排除","description":"troubleshooting","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"5e70b01c-bef1-4792-b56c-05af73088b76","gmt_create":"2026-05-13T23:06:26.456197+08:00","gmt_modified":"2026-05-13T23:06:26.4677638+08:00"},{"catalog_id":"5b089fba-66e2-4631-9b8a-b2b4fbe7d07e","title":"项目简介","description":"project-introduction","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ad5af0bf-bafb-4145-be86-483a17d63d17","gmt_create":"2026-05-13T23:06:33.4372325+08:00","gmt_modified":"2026-05-13T23:06:33.4431185+08:00"},{"catalog_id":"af9b5856-71b5-46e2-a939-462593c1cdd7","title":"整体架构设计","description":"overall-architecture","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"dc68c61e-f219-4b94-9ebe-da0045aad84b","gmt_create":"2026-05-13T23:07:29.014058+08:00","gmt_modified":"2026-05-13T23:07:29.0221214+08:00"},{"catalog_id":"7b7f6884-3f7f-41aa-8795-9f01536ffded","title":"认证API","description":"authentication-api","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"75ec6d9c-ae73-4e1f-ba5d-320529d439c5","gmt_create":"2026-05-13T23:08:07.9328064+08:00","gmt_modified":"2026-05-13T23:08:07.9379842+08:00"},{"catalog_id":"597b3480-ce60-4173-8918-c26cdabb70ff","title":"用户认证系统","description":"user-authentication","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"f303a924-dcac-41b1-b301-5c7090f0b80b","gmt_create":"2026-05-13T23:08:35.5087199+08:00","gmt_modified":"2026-05-13T23:08:35.524492+08:00"},{"catalog_id":"7a52bc56-e6e6-49f4-92f0-e3931ea723ee","title":"数据模型概览","description":"data-model-overview","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"56de08f4-709d-4c92-9409-74bc670beedc","gmt_create":"2026-05-13T23:09:37.4563737+08:00","gmt_modified":"2026-05-13T23:09:37.468652+08:00"},{"catalog_id":"590b5d4c-aab9-4b24-8462-76e193e8471d","title":"前端概览","description":"frontend-overview","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"049079c2-2bb1-414c-938f-41d56a112a05","gmt_create":"2026-05-13T23:10:20.7559807+08:00","gmt_modified":"2026-05-13T23:10:20.7691368+08:00"},{"catalog_id":"1c1f00d5-7b06-4742-a079-a54952e00fe5","title":"环境搭建","description":"environment-setup","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"2f922543-bf0f-47a5-b9b1-a5d2bfaebb27","gmt_create":"2026-05-13T23:11:04.9669671+08:00","gmt_modified":"2026-05-13T23:11:04.9874898+08:00"},{"catalog_id":"a0549fa6-a329-4c90-98ed-e4ec972a0599","title":"代码规范","description":"coding-standards","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d2182420-56d2-4167-8304-a94f0a605f64","gmt_create":"2026-05-13T23:12:15.811303+08:00","gmt_modified":"2026-05-13T23:12:15.8187491+08:00"},{"catalog_id":"3c79df1d-8591-4c7e-b0e5-49f8d24e24c1","title":"控制器层设计","description":"controller-layer","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"48536b5c-d4d0-4075-9414-caa4d92a7ce6","gmt_create":"2026-05-13T23:12:32.2496994+08:00","gmt_modified":"2026-05-13T23:12:32.2608725+08:00"},{"catalog_id":"236993d5-5618-486f-8f90-e83cec39ebd7","title":"前端问题排查","description":"frontend-troubleshooting","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"56dccf90-623c-4437-8da3-52558ed09ad4","gmt_create":"2026-05-13T23:12:44.6693326+08:00","gmt_modified":"2026-05-13T23:12:44.677255+08:00"},{"catalog_id":"2f161f25-b81c-4b49-af30-4b9c816a3272","title":"核心功能特性","description":"core-features","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"8e3ecf95-b320-4ffc-abda-d064f9342d72","gmt_create":"2026-05-13T23:14:51.7136717+08:00","gmt_modified":"2026-05-13T23:14:51.7183579+08:00"},{"catalog_id":"581e4a89-928b-4456-a248-87b013d82d80","title":"技术选型","description":"technology-stack","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"0309a241-0698-4548-a152-32a2146eca86","gmt_create":"2026-05-13T23:14:53.33469+08:00","gmt_modified":"2026-05-13T23:14:53.3820175+08:00"},{"catalog_id":"0a11cd32-b03b-439a-91f1-0caa792aa4ff","title":"插件开发","description":"plugin-development","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ecceb5e1-76e4-44f5-a012-d166276d1f80","gmt_create":"2026-05-13T23:15:02.9421289+08:00","gmt_modified":"2026-05-13T23:15:02.962369+08:00"},{"catalog_id":"56a87613-98ab-47bb-a173-5228193aee92","title":"用户数据模型","description":"user-data-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"82e08f95-791e-4271-93ff-4ad488cb8bc9","gmt_create":"2026-05-13T23:17:23.890279+08:00","gmt_modified":"2026-05-13T23:17:23.8995043+08:00"},{"catalog_id":"70f2feb2-3fa9-4ef2-b525-3330b3b13e8b","title":"TTS语音合成API","description":"tts-api","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"5ba8cf65-bc80-4ca1-b9e4-b83fa4896ea3","gmt_create":"2026-05-13T23:17:42.7220101+08:00","gmt_modified":"2026-05-13T23:17:42.7290843+08:00"},{"catalog_id":"ed23c946-e41b-4585-8aa8-be7382625e28","title":"AI内容生成引擎","description":"ai-content-generation","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"9d2354e2-730e-49b4-81bb-0a162d0691c9","gmt_create":"2026-05-13T23:17:44.4943904+08:00","gmt_modified":"2026-05-13T23:17:44.5115293+08:00"},{"catalog_id":"cbe1816b-e3d3-4261-9666-5a11470f6f31","title":"页面路由","description":"page-routing","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"0aba6a93-ea1a-4e65-8c80-ab315d656e66","gmt_create":"2026-05-13T23:19:10.7873483+08:00","gmt_modified":"2026-05-13T23:19:10.7956884+08:00"},{"catalog_id":"835f5060-ce15-4255-b59a-589143e351d7","title":"容器化部署","description":"containerization","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"55a41c65-03b8-4d94-b389-eda79aa9d766","gmt_create":"2026-05-13T23:19:43.0714702+08:00","gmt_modified":"2026-05-13T23:19:43.0809588+08:00"},{"catalog_id":"79074143-59d7-4de8-87cc-c1cca95c6eb7","title":"服务层实现","description":"service-layer","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"46adac19-7183-4187-822b-47ff2eb0e88c","gmt_create":"2026-05-13T23:20:11.3034499+08:00","gmt_modified":"2026-05-13T23:20:11.3133889+08:00"},{"catalog_id":"f26df6a9-3af6-4a88-8585-0c818ff1d908","title":"开发流程","description":"development-process","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e8d19dd5-b9f3-4b25-b955-449963fa4555","gmt_create":"2026-05-13T23:21:30.2075778+08:00","gmt_modified":"2026-05-13T23:21:30.2208452+08:00"},{"catalog_id":"fdcc2824-64e1-4341-baad-35e843263754","title":"后端服务排查","description":"backend-troubleshooting","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"9a7a36bf-af3c-4b4a-9bf4-f1c7945caceb","gmt_create":"2026-05-13T23:22:00.0394435+08:00","gmt_modified":"2026-05-13T23:22:00.0529586+08:00"},{"catalog_id":"ca2b10f3-513c-4fab-8860-e971fd23b17d","title":"第三方集成","description":"third-party-integration","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"f8e5f7bf-536c-4471-9247-713b9bae6f28","gmt_create":"2026-05-13T23:22:46.7816688+08:00","gmt_modified":"2026-05-13T23:22:46.7996257+08:00"},{"catalog_id":"8b117a6f-5bc3-4058-a480-8adfec2a4bbf","title":"技术栈介绍","description":"technology-stack","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"25e976c3-5ed2-4cb6-9f9d-0b6618d38195","gmt_create":"2026-05-13T23:23:13.5613783+08:00","gmt_modified":"2026-05-13T23:23:13.5698284+08:00"},{"catalog_id":"b3ceaffa-9f80-4cdb-a205-b0d69baceb09","title":"模块架构","description":"module-architecture","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"39b6f533-499e-4660-bfa6-23941ca9b4cb","gmt_create":"2026-05-13T23:23:58.1839547+08:00","gmt_modified":"2026-05-13T23:23:58.1912699+08:00"},{"catalog_id":"7d509b19-221b-4dd9-90ba-3c61fc246084","title":"音频管理API","description":"audio-management-api","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"fc45b727-df10-4b34-adc1-52dfa581adde","gmt_create":"2026-05-13T23:24:57.4107097+08:00","gmt_modified":"2026-05-13T23:24:57.4164235+08:00"},{"catalog_id":"e95b9689-9c54-471c-8889-c927cfca7973","title":"TTS语音合成服务","description":"tts-synthesis","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"706faa7a-bb9f-4fa2-b8ac-d566742148c5","gmt_create":"2026-05-13T23:25:02.0708601+08:00","gmt_modified":"2026-05-13T23:25:02.0799987+08:00"},{"catalog_id":"44b7fefa-24b0-4882-a5cb-b1eb5db75bac","title":"内容数据模型","description":"content-data-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"8b0b07ca-b297-4f1b-aa66-6a8551dd11ba","gmt_create":"2026-05-13T23:26:27.8385504+08:00","gmt_modified":"2026-05-13T23:26:27.8443888+08:00"},{"catalog_id":"2c378c6c-03ea-4edb-b220-6948e511e14d","title":"组件开发","description":"component-development","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e7a98f62-ec4e-48ec-981d-caa4f11c2351","gmt_create":"2026-05-13T23:26:52.5047574+08:00","gmt_modified":"2026-05-13T23:26:52.5145862+08:00"},{"catalog_id":"eda52619-624a-498e-86bc-1303d27ced14","title":"生产部署","description":"production-deployment","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"7850bff3-e204-45cf-bedc-bef42da5022e","gmt_create":"2026-05-13T23:27:04.2024103+08:00","gmt_modified":"2026-05-13T23:27:04.2286673+08:00"},{"catalog_id":"fdae3d8d-2f86-4dba-9fcd-ee05fb741875","title":"测试策略","description":"testing-strategy","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c725afe7-f16e-4163-944c-c02686bd23ef","gmt_create":"2026-05-13T23:28:50.3189157+08:00","gmt_modified":"2026-05-13T23:28:50.3261946+08:00"},{"catalog_id":"fca111e4-4eef-4abb-a276-faf0948ae0b1","title":"中间件体系","description":"middleware-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"4b7db111-847c-4ca8-855a-ebe4c386b0c0","gmt_create":"2026-05-13T23:29:15.4608677+08:00","gmt_modified":"2026-05-13T23:29:15.4697141+08:00"},{"catalog_id":"eff0f686-8555-4e83-8234-80e1a152aa83","title":"AI与TTS故障排查","description":"ai-tts-troubleshooting","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"10a25ee5-f7d0-4c06-85ac-bb2a549eebef","gmt_create":"2026-05-13T23:29:26.3672257+08:00","gmt_modified":"2026-05-13T23:29:26.3790555+08:00"},{"catalog_id":"07f95fb8-8379-420e-a0e2-c98e7bb0553b","title":"功能定制","description":"feature-customization","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"1a8f88c4-5ad4-4665-b4fb-a26d69cde0b2","gmt_create":"2026-05-13T23:30:30.0349766+08:00","gmt_modified":"2026-05-13T23:30:30.0622679+08:00"},{"catalog_id":"42793a95-7040-457e-9757-e724e738a3d9","title":"项目结构说明","description":"project-structure","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"19858231-aa86-4c6b-8028-b78ab9aa069c","gmt_create":"2026-05-13T23:30:51.5868011+08:00","gmt_modified":"2026-05-13T23:30:51.5942035+08:00"},{"catalog_id":"30f8663c-e9e6-4140-acf3-f88986a4fd1d","title":"数据流设计","description":"data-flow","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"9e11be5e-4f79-4804-b088-2fe748f56481","gmt_create":"2026-05-13T23:31:37.8055061+08:00","gmt_modified":"2026-05-13T23:31:37.8164806+08:00"},{"catalog_id":"4fe37a48-bce7-4153-ac03-4fb140250232","title":"会员服务API","description":"membership-api","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"73659296-9967-4a7e-a1a1-3103d23905c2","gmt_create":"2026-05-13T23:33:33.8307018+08:00","gmt_modified":"2026-05-13T23:33:33.8393135+08:00"},{"catalog_id":"83d0b783-d35d-4a8a-a303-9cc9b9c2d4ca","title":"媒体数据模型","description":"media-data-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d1753a3b-6a93-42a6-9d31-428b7b3b07af","gmt_create":"2026-05-13T23:33:55.7788931+08:00","gmt_modified":"2026-05-13T23:33:55.7862407+08:00"},{"catalog_id":"fd4d5a14-c8f5-44b3-951a-f5e7efdace6d","title":"视频生成系统","description":"video-generation","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6f12da23-71ec-4e31-afd2-3e2898fec50f","gmt_create":"2026-05-13T23:35:04.7959961+08:00","gmt_modified":"2026-05-13T23:35:04.8070764+08:00"},{"catalog_id":"b27a5135-2645-464a-b994-73765c6bb94b","title":"监控告警","description":"monitoring-alerting","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6e26121a-8cb1-4686-84db-d34678a3d9d4","gmt_create":"2026-05-13T23:35:55.4413616+08:00","gmt_modified":"2026-05-13T23:35:55.4494016+08:00"},{"catalog_id":"638703da-12a6-41ba-b546-fa02c98d53c6","title":"状态管理","description":"state-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"09437497-d787-4c14-8ae6-91dfa5f3d174","gmt_create":"2026-05-13T23:36:29.2219551+08:00","gmt_modified":"2026-05-13T23:36:29.2298577+08:00"},{"catalog_id":"7a9fc067-450a-4af7-8205-c294b5cbd83d","title":"配置管理","description":"configuration-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"af02acd3-9c63-473d-a629-9546126c5e0f","gmt_create":"2026-05-13T23:36:56.942362+08:00","gmt_modified":"2026-05-13T23:36:56.950144+08:00"},{"catalog_id":"bbef6b94-bcd1-419f-8b1d-0da2e773748d","title":"性能监控与优化","description":"performance-monitoring","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"5bca4d3d-47e1-48a7-8b31-8a6a7dc92bbc","gmt_create":"2026-05-13T23:38:51.3288452+08:00","gmt_modified":"2026-05-13T23:38:51.3433345+08:00"},{"catalog_id":"57158259-de0c-4633-93b1-ce451a9ab085","title":"中间件扩展","description":"middleware-extension","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"8750cd90-0cf8-43e2-b2ce-5a5a8f52b29e","gmt_create":"2026-05-13T23:39:03.5543655+08:00","gmt_modified":"2026-05-13T23:39:03.5675944+08:00"},{"catalog_id":"da6e72cb-b3cc-4791-88c1-0cebaef3cf53","title":"快速开始指南","description":"quick-start","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b19e4c0a-872e-44d8-a544-de3f6676aac6","gmt_create":"2026-05-13T23:40:31.2984458+08:00","gmt_modified":"2026-05-13T23:40:31.3078556+08:00"},{"catalog_id":"6e3eff71-fc77-491e-8a54-0b54355e2dd6","title":"部署架构","description":"deployment-architecture","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6fba9e57-5708-4dc6-a35f-40cdceccc6ab","gmt_create":"2026-05-13T23:40:53.1781629+08:00","gmt_modified":"2026-05-13T23:40:53.1848745+08:00"},{"catalog_id":"45b4c607-1e92-486b-93d0-15d125f34f0f","title":"分享功能API","description":"sharing-api","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"0f770246-74aa-453f-af53-34ff2baf2791","gmt_create":"2026-05-13T23:42:36.6527865+08:00","gmt_modified":"2026-05-13T23:42:36.6590082+08:00"},{"catalog_id":"a42809fa-0b14-4b54-aa3e-9502d0bd2bbf","title":"音频播放器系统","description":"audio-player","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"90617d49-1f6b-4cbd-9010-719a87517585","gmt_create":"2026-05-13T23:42:38.3025584+08:00","gmt_modified":"2026-05-13T23:42:38.3088434+08:00"},{"catalog_id":"aaf4b31c-af75-4cc4-99a5-d5e6f829f80b","title":"业务数据模型","description":"business-data-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"48b89bbb-0a77-433d-b4a8-bf18035f8630","gmt_create":"2026-05-13T23:44:05.7974927+08:00","gmt_modified":"2026-05-13T23:44:05.8087408+08:00"},{"catalog_id":"abf93eb7-8581-4231-a1cc-6de0ab53af8f","title":"API集成","description":"api-integration","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"544a286e-22a9-49fb-b1a2-2d6696a0a734","gmt_create":"2026-05-13T23:44:44.1645311+08:00","gmt_modified":"2026-05-13T23:44:44.1744678+08:00"},{"catalog_id":"3a3cccba-bb4b-4d9b-9b41-12c2f654b296","title":"备份恢复","description":"backup-recovery","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"99b26776-e32a-4101-807d-d17d0ed4a4c8","gmt_create":"2026-05-13T23:45:37.2409118+08:00","gmt_modified":"2026-05-13T23:45:37.2529302+08:00"},{"catalog_id":"833f5b98-75ad-438f-be94-d80ef28ec6d5","title":"数据访问层","description":"data-access-layer","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"7e94d847-379b-4c5d-9716-146513b1500d","gmt_create":"2026-05-13T23:46:55.0474942+08:00","gmt_modified":"2026-05-13T23:46:55.0652117+08:00"},{"catalog_id":"343eaf6f-27e9-4d65-aed0-ad8cb13e85df","title":"调试技巧","description":"debugging-techniques","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"9f6d6c8a-c17f-4ff8-ade5-c42ec1d49afb","gmt_create":"2026-05-13T23:47:34.9962251+08:00","gmt_modified":"2026-05-13T23:47:35.0081537+08:00"},{"catalog_id":"20181a87-cede-42c4-922c-37170950b0cc","title":"版本管理","description":"version-control","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"0b1c1ce6-cb10-44bc-b508-9a6db90ae167","gmt_create":"2026-05-13T23:48:47.7003315+08:00","gmt_modified":"2026-05-13T23:48:47.7077938+08:00"},{"catalog_id":"d2e783b4-39c9-45ea-b5a1-1284e7fba1ec","title":"部署与环境问题","description":"deployment-troubleshooting","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b65b281b-72f4-488c-9d20-7759ebdc6288","gmt_create":"2026-05-13T23:49:25.9419257+08:00","gmt_modified":"2026-05-13T23:49:25.9529574+08:00"},{"catalog_id":"e7ba7466-6b57-4a3d-a4d0-fab5b2dd7373","title":"数据模型扩展","description":"data-model-extension","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"7ebe0630-9b6f-4081-aea8-8fc490fb30e4","gmt_create":"2026-05-13T23:49:34.327724+08:00","gmt_modified":"2026-05-13T23:49:34.3351148+08:00"},{"catalog_id":"b70a2980-3b36-4f74-96d2-e0cfdd5478d6","title":"开发路线图","description":"development-roadmap","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"785b12ca-5bcc-49a9-9b94-ff7bebc8bfbc","gmt_create":"2026-05-13T23:50:07.9748323+08:00","gmt_modified":"2026-05-13T23:50:07.9842274+08:00"},{"catalog_id":"d8d758d2-f1f6-428b-b9d9-ce57ebc2889a","title":"交互数据模型","description":"interaction-data-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"45888154-69ce-42bd-9323-99016db91888","gmt_create":"2026-05-13T23:50:56.8254766+08:00","gmt_modified":"2026-05-13T23:50:56.8338922+08:00"},{"catalog_id":"abca1a7b-42a3-4a19-ba37-6e30da86e151","title":"订阅付费系统","description":"subscription-payment","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a3cbaf21-03e0-4bc6-8740-4771f76373d6","gmt_create":"2026-05-13T23:51:39.8553064+08:00","gmt_modified":"2026-05-13T23:51:39.8623666+08:00"},{"catalog_id":"1ec5bdc9-e69b-4c6f-9d6a-5e7888da50b6","title":"错误处理与日志","description":"error-handling-logging","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a3d3a4e3-f6ef-4200-8ecb-586694a8b75b","gmt_create":"2026-05-13T23:53:09.68368+08:00","gmt_modified":"2026-05-13T23:53:09.6916157+08:00"},{"catalog_id":"96a4f32c-e94c-4d2b-b1a2-05d464dc2392","title":"内容管理系统","description":"content-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6b2fbe5e-dd49-47c3-88e3-7fe27e9842c2","gmt_create":"2026-05-13T23:54:26.9630568+08:00","gmt_modified":"2026-05-13T23:54:26.9745308+08:00"},{"catalog_id":"6573e07d-680c-4960-9ab6-7e5f5365c438","title":"数据库索引与关系","description":"database-indexes-relationships","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"04c8f019-dfd6-481b-8fa6-a3b9f1f8d3a3","gmt_create":"2026-05-13T23:55:40.6755215+08:00","gmt_modified":"2026-05-13T23:55:40.69335+08:00"},{"catalog_id":"33e6266d-c33e-4eba-87d0-aec3373141a9","title":"媒体处理服务","description":"media-processing","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d040a1f2-def0-4aba-a1a5-0a76c492d230","gmt_create":"2026-05-13T23:57:59.4726498+08:00","gmt_modified":"2026-05-13T23:57:59.481572+08:00"},{"catalog_id":"76bbde7c-fcc9-4efd-873b-1495905dd874","title":"核心业务模块","description":"core-business-modules","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"641b1bc4-98ed-49f1-80f7-7d31fc0b072d","gmt_create":"2026-05-13T23:58:38.5891404+08:00","gmt_modified":"2026-05-13T23:58:38.5995977+08:00"},{"catalog_id":"f8addd1e-e5b0-48d6-ad52-cc573fabb848","title":"文本转音频","description":"text-to-audio","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"283f7b48-b34d-40bd-97f1-cf7791e462e9","gmt_create":"2026-05-14T00:00:19.6115572+08:00","gmt_modified":"2026-05-14T00:00:19.6252276+08:00"},{"catalog_id":"ed9d05a6-cec6-4e6f-bc21-9063204749ea","title":"容器化部署","description":"containerization-setup","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e41a5a3e-983d-439e-9c91-c32272b5ace6","gmt_create":"2026-05-14T00:00:57.8946033+08:00","gmt_modified":"2026-05-14T00:00:57.9036323+08:00"},{"catalog_id":"870aff23-afe5-4cb9-8c63-edb45d50769c","title":"构建配置","description":"build-configuration","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b6f29416-1cdd-4da2-8581-2d00326d4619","gmt_create":"2026-05-14T00:02:21.0290424+08:00","gmt_modified":"2026-05-14T00:02:21.0379536+08:00"},{"catalog_id":"7dae98a3-fac8-4065-bae4-499eb2cad302","title":"LangGraph工作流设计","description":"workflow-design","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"37dec110-7b7e-43f7-9d6f-911fa9a5c534","gmt_create":"2026-05-14T00:02:43.791184+08:00","gmt_modified":"2026-05-14T00:02:43.7976057+08:00"},{"catalog_id":"6674894b-62b7-472b-9af7-78c44de5dc96","title":"音色提供商集成","description":"tts-provider-integration","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"299d22f7-9ffb-4c57-a9fa-8b932e4b75d4","gmt_create":"2026-05-14T00:02:45.5092815+08:00","gmt_modified":"2026-05-14T00:02:45.5166746+08:00"},{"catalog_id":"f8fd1bad-dcd1-435a-a4ac-0686a31badc3","title":"收藏管理","description":"favorites-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ae181f5a-165b-4ac9-b0fd-fc80f62927c0","gmt_create":"2026-05-14T00:04:00.7161532+08:00","gmt_modified":"2026-05-14T00:04:00.7224481+08:00"},{"catalog_id":"dfaf0510-8701-40a6-b5b5-b3087732c2a7","title":"会员管理","description":"subscription-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"3ee3e5cf-6e64-42f8-9af0-ec5664f76801","gmt_create":"2026-05-14T00:04:56.0636117+08:00","gmt_modified":"2026-05-14T00:04:56.0783137+08:00"},{"catalog_id":"8285755c-f31f-425f-8283-60af70942c99","title":"音频编辑功能","description":"audio-editing","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"fba1882a-9324-411f-b26c-f4fac959500f","gmt_create":"2026-05-14T00:04:57.3304157+08:00","gmt_modified":"2026-05-14T00:04:57.3367655+08:00"},{"catalog_id":"d1c81692-1005-4d96-a1b7-20e2b8d890b5","title":"书籍模型(Book)","description":"book-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c072c612-ccba-4b2b-b8db-951b0fab83ab","gmt_create":"2026-05-14T00:05:49.7688591+08:00","gmt_modified":"2026-05-14T00:05:49.7751154+08:00"},{"catalog_id":"d9411afe-1768-46ee-9c45-83f8f4e97634","title":"用户基本信息","description":"user-basic-info","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d268ec7e-408b-4c2b-b629-4d277bd2b5b5","gmt_create":"2026-05-14T00:06:53.3887094+08:00","gmt_modified":"2026-05-14T00:06:53.3955757+08:00"},{"catalog_id":"77168476-ffb6-4aa9-8be5-4db36e4549ba","title":"用户与订阅模型","description":"user-subscription-models","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"28024e10-8956-46f0-a49f-025e994ecac3","gmt_create":"2026-05-14T00:07:17.239337+08:00","gmt_modified":"2026-05-14T00:07:17.2504321+08:00"},{"catalog_id":"f0b892dd-e0e6-46e4-81a0-51d41f86862d","title":"通用组件","description":"common-components","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e2971b62-c863-484c-9ffa-6d0d7eec7e26","gmt_create":"2026-05-14T00:08:23.5750509+08:00","gmt_modified":"2026-05-14T00:08:23.584649+08:00"},{"catalog_id":"b13cd866-da7c-4ebd-a068-44c717555113","title":"音频记录模型","description":"audio-record-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d715b540-4919-459b-ada5-49306fbedf8a","gmt_create":"2026-05-14T00:08:41.2033715+08:00","gmt_modified":"2026-05-14T00:08:41.2091586+08:00"},{"catalog_id":"834654bb-375b-484a-b19e-f12e303c67d2","title":"收藏数据模型","description":"favorite-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a0a19e47-6ecb-43c1-828b-21eff2141db4","gmt_create":"2026-05-14T00:09:02.8996855+08:00","gmt_modified":"2026-05-14T00:09:02.9053921+08:00"},{"catalog_id":"5128296a-f271-4be8-938a-fab632166600","title":"服务基础设施","description":"service-infrastructure","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"23c19089-3936-41dd-8dd3-1beca91f3f6d","gmt_create":"2026-05-14T00:10:56.765472+08:00","gmt_modified":"2026-05-14T00:10:56.7846913+08:00"},{"catalog_id":"f9f88651-f0b7-4adb-83c6-38914476047c","title":"音色选择","description":"voice-selection","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6c25634b-abe2-4ebf-8b8b-0d5a92b2460c","gmt_create":"2026-05-14T00:11:17.481139+08:00","gmt_modified":"2026-05-14T00:11:17.4947241+08:00"},{"catalog_id":"ffb05bc7-ca99-4532-9685-6d6480a0ab25","title":"Nginx反向代理","description":"nginx-reverse-proxy","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"fb4e4836-f3f1-4af4-a3d3-ad2bbcdba8d7","gmt_create":"2026-05-14T00:11:36.6106351+08:00","gmt_modified":"2026-05-14T00:11:36.6179842+08:00"},{"catalog_id":"db4ce39d-51ca-4627-a387-349fadfdbd57","title":"音频处理算法","description":"audio-processing","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"f91a3bef-275c-4922-8d2c-3816a4cbe1a8","gmt_create":"2026-05-14T00:12:37.6081246+08:00","gmt_modified":"2026-05-14T00:12:37.620197+08:00"},{"catalog_id":"60a4d55f-2abd-472f-b698-a810d4529780","title":"生成策略系统","description":"generation-strategies","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e5b8f805-8e7c-4661-b906-52eaf65e7214","gmt_create":"2026-05-14T00:13:06.9765399+08:00","gmt_modified":"2026-05-14T00:13:06.9902553+08:00"},{"catalog_id":"471e78c0-be45-4764-86a7-44633ddf2085","title":"支付集成","description":"payment-integration","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"f6d2ad4b-1451-42b8-a736-1e374517f586","gmt_create":"2026-05-14T00:14:03.2486187+08:00","gmt_modified":"2026-05-14T00:14:03.2612246+08:00"},{"catalog_id":"ae2fa02e-857b-4408-a18c-80eff10aceb8","title":"模板管理系统","description":"template-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e28cfc85-e133-4b8d-ab61-1063089c76e3","gmt_create":"2026-05-14T00:14:21.9623751+08:00","gmt_modified":"2026-05-14T00:14:21.9758315+08:00"},{"catalog_id":"0a6941ad-e606-4599-a7c4-e81ddf0f9bfa","title":"历史记录管理","description":"history-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"15ef82d6-c4c1-4aeb-9821-bc0c8a0936b6","gmt_create":"2026-05-14T00:14:55.8399733+08:00","gmt_modified":"2026-05-14T00:14:55.8486453+08:00"},{"catalog_id":"df4c547f-f227-409d-aab6-4d98ecd25fd1","title":"订单与积分模型","description":"order-token-models","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"4175e765-6abb-444a-be1c-0d91638401bc","gmt_create":"2026-05-14T00:16:32.1909458+08:00","gmt_modified":"2026-05-14T00:16:32.1998477+08:00"},{"catalog_id":"5c51d8c5-f076-4ce6-b4ae-e0ce713e133a","title":"章节模型(BookChapter)","description":"book-chapter-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"1c2f92f1-ce36-4662-983a-045a1ba2391f","gmt_create":"2026-05-14T00:16:41.383453+08:00","gmt_modified":"2026-05-14T00:16:41.3918258+08:00"},{"catalog_id":"333038ec-0e37-40e5-9565-4bfaf8129115","title":"用户偏好设置","description":"user-preferences","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d5e6cc3d-9e71-4410-95fb-c79a521986c6","gmt_create":"2026-05-14T00:17:08.2763471+08:00","gmt_modified":"2026-05-14T00:17:08.2894862+08:00"},{"catalog_id":"ef1d3eec-7d6f-4955-bdbe-19fb453c95b8","title":"组件开发规范","description":"component-development-guide","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b3fff1d3-2935-4bb2-a777-0d4e0d7c18c5","gmt_create":"2026-05-14T00:18:15.455043+08:00","gmt_modified":"2026-05-14T00:18:15.471653+08:00"},{"catalog_id":"43ed758f-dc3b-40a2-9b60-5213a6f2c91f","title":"视频项目模型","description":"video-project-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"749533e6-0fa8-4f41-a4e2-50f7db371716","gmt_create":"2026-05-14T00:18:57.7560346+08:00","gmt_modified":"2026-05-14T00:18:57.7680194+08:00"},{"catalog_id":"1e2fc134-e011-4a5e-8a8a-d18e1d796de3","title":"评论数据模型","description":"comment-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"76e66878-da48-4c59-84cb-6d5f0457a397","gmt_create":"2026-05-14T00:19:57.7467085+08:00","gmt_modified":"2026-05-14T00:19:57.7572901+08:00"},{"catalog_id":"99f0d2f9-6002-45fb-bbc7-ab1c5a85e43b","title":"数据访问层","description":"data-access-layer","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e7ed5b5d-ef5f-4013-a3e8-d7f1f3b7745e","gmt_create":"2026-05-14T00:20:24.9369962+08:00","gmt_modified":"2026-05-14T00:20:24.9481385+08:00"},{"catalog_id":"799fc461-f668-4e92-b2b6-6261e1edd374","title":"音频播放器","description":"audio-player","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6ae83620-3e71-4623-8698-3eb9183ccebe","gmt_create":"2026-05-14T00:21:01.5628913+08:00","gmt_modified":"2026-05-14T00:21:01.5817094+08:00"},{"catalog_id":"55a4465b-651b-4e36-8eec-00d26e7dd1b9","title":"多环境部署","description":"multi-environment-deployment","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ef5c1ae4-0792-4c51-903a-7152dea4aa80","gmt_create":"2026-05-14T00:21:33.8503243+08:00","gmt_modified":"2026-05-14T00:21:33.8613842+08:00"},{"catalog_id":"d9ed6db9-4701-4538-92a4-ca45cb1e90c3","title":"TTS API接口","description":"tts-api-endpoints","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c7f89c59-bcd1-4c33-8f5d-9cdf6f387dde","gmt_create":"2026-05-14T00:22:13.3906689+08:00","gmt_modified":"2026-05-14T00:22:13.399751+08:00"},{"catalog_id":"4195e43f-be71-4897-a6aa-4df85a7db7cb","title":"节点实现架构","description":"node-implementations","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"80852cad-96f6-4ae3-8706-542b9704f60b","gmt_create":"2026-05-14T00:23:17.1849249+08:00","gmt_modified":"2026-05-14T00:23:17.1972984+08:00"},{"catalog_id":"6d8775c0-7039-4764-9bf8-bd7283726b15","title":"批量处理机制","description":"batch-processing","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"3d63bd25-a266-4e2e-baa6-abe8de22e145","gmt_create":"2026-05-14T00:24:20.3979924+08:00","gmt_modified":"2026-05-14T00:24:20.4086+08:00"},{"catalog_id":"1870afb7-5863-4dc8-b445-ff91f0d2dee3","title":"评论系统","description":"comments-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"cd1791ae-dc24-4268-919d-a6d399a2acac","gmt_create":"2026-05-14T00:25:07.2978156+08:00","gmt_modified":"2026-05-14T00:25:07.3198158+08:00"},{"catalog_id":"c0aa6d73-da3b-482e-a348-402ab92462fb","title":"计费与配额","description":"token-billing","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"60313d15-6c2b-4761-a9b2-3a23b18e95a1","gmt_create":"2026-05-14T00:25:28.7977899+08:00","gmt_modified":"2026-05-14T00:25:28.8109834+08:00"},{"catalog_id":"2b861a3c-6e7a-4d27-9e27-9a93fc2ea17f","title":"内容关系模型","description":"content-relations","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"39141cc8-3a23-42a1-991b-3443d1672101","gmt_create":"2026-05-14T00:26:10.9939139+08:00","gmt_modified":"2026-05-14T00:26:11.003438+08:00"},{"catalog_id":"6166a690-c496-45cc-89f0-c86d7c1749bd","title":"用户会员信息","description":"user-membership","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"16bed754-65b0-4134-b2e9-30754b4a7ca2","gmt_create":"2026-05-14T00:26:47.9409997+08:00","gmt_modified":"2026-05-14T00:26:47.9510166+08:00"},{"catalog_id":"802b0130-0209-492b-b03d-82d9c8fc11da","title":"使用统计模型","description":"usage-statistics-models","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"16e3e7cd-b409-4100-9a1e-644a304f1a65","gmt_create":"2026-05-14T00:27:02.5816575+08:00","gmt_modified":"2026-05-14T00:27:02.5906107+08:00"},{"catalog_id":"9cfd09d8-87d7-404e-aa45-064fec4449fa","title":"UI样式管理","description":"ui-styling-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c4af11e7-3d67-4b98-a906-40c8904b7216","gmt_create":"2026-05-14T00:27:59.550677+08:00","gmt_modified":"2026-05-14T00:27:59.5629683+08:00"},{"catalog_id":"51bb35e7-8df0-4211-b5d4-10a7cb097df4","title":"视频素材模型","description":"video-material-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"24e5a58c-1622-45bc-af85-713ed5b98261","gmt_create":"2026-05-14T00:28:46.3752592+08:00","gmt_modified":"2026-05-14T00:28:46.383212+08:00"},{"catalog_id":"b300e644-ff87-4d87-8eb6-e0f949a50512","title":"播放记录数据模型","description":"playrecord-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"17b9a4b3-6a1d-43e2-88ee-c3110af1fa99","gmt_create":"2026-05-14T00:28:50.7422739+08:00","gmt_modified":"2026-05-14T00:28:50.7497367+08:00"},{"catalog_id":"16b7b286-b875-42ef-9ece-f48e8803efa3","title":"通信模式","description":"communication-patterns","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"eb8a0b9a-795e-4cb4-b27a-5a1f795992f7","gmt_create":"2026-05-14T00:30:12.2776276+08:00","gmt_modified":"2026-05-14T00:30:12.2922336+08:00"},{"catalog_id":"a039ba68-0f9d-4f92-a4a4-d02242720fc0","title":"会员订阅系统","description":"subscription-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"555eec22-9a5e-453c-a87c-d544067c7426","gmt_create":"2026-05-14T00:31:04.2150087+08:00","gmt_modified":"2026-05-14T00:31:04.2275903+08:00"},{"catalog_id":"c6710b31-fa09-46c7-b791-a9da9ff203ca","title":"数据库部署","description":"database-deployment","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"3afcc987-9b67-4aab-b6a2-bd7cc0055508","gmt_create":"2026-05-14T00:31:32.0170226+08:00","gmt_modified":"2026-05-14T00:31:32.0221195+08:00"},{"catalog_id":"fdefc3d4-c7e5-4f37-bd9d-b5630a0b63c0","title":"性能监控与优化","description":"tts-performance-monitoring","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ac90e0c5-0e75-4103-be89-5809bc12ef30","gmt_create":"2026-05-14T00:31:49.3065084+08:00","gmt_modified":"2026-05-14T00:31:49.3155075+08:00"},{"catalog_id":"5606b9a1-b8c2-4001-a15f-5367ad708bca","title":"提示词工程与模板","description":"prompt-engineering","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a0db819c-77cd-456f-9a9e-abc9ec69ce5d","gmt_create":"2026-05-14T00:33:20.4570482+08:00","gmt_modified":"2026-05-14T00:33:20.4702343+08:00"},{"catalog_id":"124125ab-4b61-42f0-984e-e3ce7c03de41","title":"媒体格式支持","description":"media-format-support","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6d72b0cb-4100-4d8b-8013-0f84df7693f9","gmt_create":"2026-05-14T00:33:55.2466592+08:00","gmt_modified":"2026-05-14T00:33:55.2551365+08:00"},{"catalog_id":"bc210a3d-ba75-420a-96cb-9bf4dfac6fdb","title":"财务结算","description":"financial-settlement","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"0adecb3c-73d7-422f-80d7-986f30b73af0","gmt_create":"2026-05-14T00:34:02.7202745+08:00","gmt_modified":"2026-05-14T00:34:02.7278626+08:00"},{"catalog_id":"5e59f7b3-f3a8-487e-a52b-da168071fdc4","title":"搜索功能","description":"search-functionality","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a9270ae5-6644-4417-afb1-a2be1c1ed430","gmt_create":"2026-05-14T00:34:44.0366679+08:00","gmt_modified":"2026-05-14T00:34:44.0456015+08:00"},{"catalog_id":"f0abbcd6-39da-4ad1-ac05-70b757768f38","title":"用户关联关系","description":"user-relations","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"337d7a4e-c681-492d-9a59-bc33458187f3","gmt_create":"2026-05-14T00:35:51.4382254+08:00","gmt_modified":"2026-05-14T00:35:51.4466405+08:00"},{"catalog_id":"8975bfad-32df-4387-ab03-3180483459a8","title":"搜索历史数据模型","description":"searchhistory-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ee656366-dc46-42ff-ac43-ed58b22fb2dd","gmt_create":"2026-05-14T00:35:55.5577597+08:00","gmt_modified":"2026-05-14T00:35:55.5691001+08:00"},{"catalog_id":"3bfcbcab-8559-479d-b383-e38eeb690906","title":"发布任务模型","description":"publish-task-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"4c798893-6c35-4813-b1bf-70c1fcadf1cc","gmt_create":"2026-05-14T00:37:02.2241074+08:00","gmt_modified":"2026-05-14T00:37:02.2311914+08:00"},{"catalog_id":"ba177c93-dea1-465a-bfdb-4d4a5dd8e976","title":"监控与日志","description":"monitoring-logging","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c08371a1-5fef-4957-9bde-8f30030cdb3d","gmt_create":"2026-05-14T00:37:25.9199652+08:00","gmt_modified":"2026-05-14T00:37:25.932037+08:00"},{"catalog_id":"f7b6e663-d6cc-474c-979d-d16f5d382722","title":"内容管理","description":"content-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"472bb482-2a45-4c2b-951d-54a2996f2bb1","gmt_create":"2026-05-14T00:37:28.4529954+08:00","gmt_modified":"2026-05-14T00:37:28.4660468+08:00"},{"catalog_id":"0c75ea65-983f-4cec-b319-22909ea4f242","title":"用户偏好数据模型","description":"user-preference-model","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a652cae2-2087-4b80-8645-97c1ddf02fb3","gmt_create":"2026-05-14T00:38:54.3805441+08:00","gmt_modified":"2026-05-14T00:38:54.3890127+08:00"},{"catalog_id":"8734375c-1841-4837-b6c7-a7df64a2c142","title":"容错与错误处理","description":"fault-tolerance","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c5f7db68-d6c1-4368-b68d-6ad77ad9e6ad","gmt_create":"2026-05-14T00:39:38.050443+08:00","gmt_modified":"2026-05-14T00:39:38.0670564+08:00"},{"catalog_id":"da33c9b4-9107-4046-9752-a9099d91fff2","title":"套餐管理","description":"subscription-plans","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"fd298945-40bd-4a6a-88e5-8e5b6bf27fd5","gmt_create":"2026-05-14T00:41:05.5249247+08:00","gmt_modified":"2026-05-14T00:41:05.534362+08:00"},{"catalog_id":"701079e2-4e5e-446e-ab66-c5148c3b706e","title":"AI内容生成","description":"ai-content-generation","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"07bad4de-510b-401f-8e57-384c12446b8e","gmt_create":"2026-05-14T00:41:07.3255103+08:00","gmt_modified":"2026-05-14T00:41:07.340311+08:00"},{"catalog_id":"dada946f-e6a3-4095-ac0f-6b9090600085","title":"用户认证系统","description":"user-authentication","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"5bdb81ed-1da3-46a9-bb95-f7e3a2badce3","gmt_create":"2026-05-14T00:41:26.329061+08:00","gmt_modified":"2026-05-14T00:41:26.3411687+08:00"},{"catalog_id":"cb8287fc-9b8e-43b5-b38d-59b9779660b9","title":"队列服务","description":"queue-service","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6522ac91-1c3b-4395-8774-36210aab8803","gmt_create":"2026-05-14T00:43:05.5316723+08:00","gmt_modified":"2026-05-14T00:43:05.5379193+08:00"},{"catalog_id":"b9a7958d-1f80-4fc2-9af6-58efd0ad4f29","title":"收藏管理","description":"favorites-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b9cb9816-f17c-4e4b-8446-6e94ba31412c","gmt_create":"2026-05-14T00:43:06.7472979+08:00","gmt_modified":"2026-05-14T00:43:06.7530475+08:00"},{"catalog_id":"0af19a28-199d-46b7-ad04-03fddf265103","title":"LangGraph工作流引擎","description":"langgraph-workflow","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"5ccf9df2-5c5e-4f50-b41b-8733a52f2cdd","gmt_create":"2026-05-14T00:44:20.1605641+08:00","gmt_modified":"2026-05-14T00:44:20.1732109+08:00"},{"catalog_id":"1d73138e-3a9c-4467-89af-99a9b5e64eb7","title":"策略概览与选择机制","description":"strategy-overview","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"aefeafab-e5d6-4c05-9d1d-55f011d69e02","gmt_create":"2026-05-14T00:44:58.7925308+08:00","gmt_modified":"2026-05-14T00:44:58.8041816+08:00"},{"catalog_id":"342cb33f-6401-4eaa-b79b-ab7cb0d1ee61","title":"内容节点实现","description":"content-node","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"86999a89-9465-4def-85fb-b26a4394b428","gmt_create":"2026-05-14T00:45:44.5948958+08:00","gmt_modified":"2026-05-14T00:45:44.6064183+08:00"},{"catalog_id":"cc71bc56-0428-4042-a90d-1770b92aade0","title":"支付处理","description":"subscription-payment","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ef4b6c8e-1cb5-4ca1-a14e-597533c29e4c","gmt_create":"2026-05-14T00:46:21.2668347+08:00","gmt_modified":"2026-05-14T00:46:21.4812636+08:00"},{"catalog_id":"6a47e3f1-2d70-4574-a2e3-7103f307eaa3","title":"AI书籍生成引擎","description":"ai-book-generator","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"2bba9416-5340-47bb-83a7-3b0201d361f1","gmt_create":"2026-05-14T00:46:53.2148192+08:00","gmt_modified":"2026-05-14T00:46:53.2323258+08:00"},{"catalog_id":"016af7aa-9feb-491c-b6fd-a2c3646be9bb","title":"缓存服务","description":"cache-service","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"b4e1a0a9-cdf3-49f1-8b87-c39af1b40581","gmt_create":"2026-05-14T00:48:01.6594081+08:00","gmt_modified":"2026-05-14T00:48:01.6647723+08:00"},{"catalog_id":"e31f6e9a-4f42-480a-98bd-ea31de1ebd96","title":"内容生成步骤","description":"content-generation-steps","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"66f65528-6a2a-4f25-99fe-22e11b066bd5","gmt_create":"2026-05-14T00:48:29.9977588+08:00","gmt_modified":"2026-05-14T00:48:30.0128375+08:00"},{"catalog_id":"43b8521b-ff81-44f8-9661-df40a092f83b","title":"历史记录","description":"history-tracking","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6920f6a5-ed76-4135-8ccd-e75c12901c38","gmt_create":"2026-05-14T00:48:43.8724037+08:00","gmt_modified":"2026-05-14T00:48:43.8856428+08:00"},{"catalog_id":"bdf89224-2818-4105-87db-fd82e5e2d364","title":"大纲节点实现","description":"outline-nodes","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"bb524a85-57f9-4531-8da6-b25b3d668d7a","gmt_create":"2026-05-14T00:50:05.4549379+08:00","gmt_modified":"2026-05-14T00:50:05.465212+08:00"},{"catalog_id":"28477d51-8e1e-47eb-b089-7c4c06d20878","title":"配额管理","description":"subscription-quota","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"f116823f-2596-45e0-97b2-6bd787f6bd5f","gmt_create":"2026-05-14T00:50:28.6273661+08:00","gmt_modified":"2026-05-14T00:50:28.6344057+08:00"},{"catalog_id":"0b5c20fa-a182-4413-90f7-55b91dddb75b","title":"大纲生成策略","description":"outline-strategies","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"1a22b171-55d8-464c-832d-faf6c71ba923","gmt_create":"2026-05-14T00:50:41.1712454+08:00","gmt_modified":"2026-05-14T00:50:41.1846002+08:00"},{"catalog_id":"a2a9d383-1920-41c6-b03e-5788ab0c47ba","title":"评论系统","description":"comments-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ec66ff29-af75-4b6b-9713-f87860599d7d","gmt_create":"2026-05-14T00:51:54.8804551+08:00","gmt_modified":"2026-05-14T00:51:54.8899391+08:00"},{"catalog_id":"6bd9af22-3a35-48ab-9194-e8aa8237ba0b","title":"TTS语音合成服务","description":"tts-synthesis-service","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"8bc72169-f710-4086-bc8d-d3c317b5dc26","gmt_create":"2026-05-14T00:51:59.4006366+08:00","gmt_modified":"2026-05-14T00:51:59.4103682+08:00"},{"catalog_id":"4da725ac-9ff6-417c-b08e-8577637db9ce","title":"存储服务","description":"storage-service","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c625eebc-629d-4fa6-b83c-51a2664ef179","gmt_create":"2026-05-14T00:52:05.1981027+08:00","gmt_modified":"2026-05-14T00:52:05.2080807+08:00"},{"catalog_id":"95386afc-fb02-4001-a488-3cf5ff4cf558","title":"顺序执行策略","description":"sequential-strategy","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"07998d32-0d58-4d7c-a395-6122b216c99f","gmt_create":"2026-05-14T00:53:50.9506668+08:00","gmt_modified":"2026-05-14T00:53:50.9699092+08:00"},{"catalog_id":"c4798f11-5696-4e8e-aea3-8910e2ce9fee","title":"章节节点实现","description":"chapter-nodes","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"1477e586-b47d-4be1-8677-a42eabc8e04d","gmt_create":"2026-05-14T00:53:56.8210366+08:00","gmt_modified":"2026-05-14T00:53:56.8316899+08:00"},{"catalog_id":"472d0c9b-c341-4d16-acfc-35afaac5f81d","title":"批量生成系统","description":"batch-generation-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c5f6cd84-09a7-4676-b31d-18fb4e6f781a","gmt_create":"2026-05-14T00:54:15.8431649+08:00","gmt_modified":"2026-05-14T00:54:15.8603354+08:00"},{"catalog_id":"fd2f34a7-d341-4e84-ae22-0a9643550230","title":"视频生成系统","description":"video-generation","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6d046b78-031e-469a-8764-24d38d20de02","gmt_create":"2026-05-14T00:55:46.8709417+08:00","gmt_modified":"2026-05-14T00:55:46.88726+08:00"},{"catalog_id":"8df3e302-10f7-48fd-a0d3-747eb063838e","title":"日志监控服务","description":"logging-monitoring-service","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"201ac903-1235-4909-8958-fc6357781531","gmt_create":"2026-05-14T00:56:03.3201847+08:00","gmt_modified":"2026-05-14T00:56:03.3308796+08:00"},{"catalog_id":"078eebbc-2d23-4de1-a455-18ebaace9e49","title":"使用统计","description":"subscription-usage","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"478db980-8aea-4ffc-b031-8fdf41e0d57a","gmt_create":"2026-05-14T00:56:39.2646361+08:00","gmt_modified":"2026-05-14T00:56:39.284867+08:00"},{"catalog_id":"61655ef3-c2e8-44ba-89df-ea419f86afd9","title":"辅助节点实现","description":"auxiliary-nodes","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"87202d48-378c-4dd5-a284-32087be11148","gmt_create":"2026-05-14T00:57:33.2106951+08:00","gmt_modified":"2026-05-14T00:57:33.2169138+08:00"},{"catalog_id":"e3671551-7899-421d-823e-ec482d7e76e5","title":"内容质量控制","description":"content-quality-control","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6c97324b-0f0c-4f60-af1e-1efc6af0205d","gmt_create":"2026-05-14T00:58:26.9983978+08:00","gmt_modified":"2026-05-14T00:58:27.0089717+08:00"},{"catalog_id":"f5e7ee84-8355-47a2-a9cd-00ced52e5ec4","title":"策略类型定义与接口规范","description":"strategy-types","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"c83e4b2f-4d6d-4933-b522-e44413b3490b","gmt_create":"2026-05-14T00:59:07.1262991+08:00","gmt_modified":"2026-05-14T00:59:07.1423234+08:00"},{"catalog_id":"ae66d923-fa48-4fd2-94c7-21cd8a362f6b","title":"音频播放系统","description":"audio-player","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"d425f06f-086e-4942-999e-dc9c1aa0e798","gmt_create":"2026-05-14T00:59:58.9527613+08:00","gmt_modified":"2026-05-14T00:59:58.9660144+08:00"},{"catalog_id":"e9d1769e-6762-45a9-b568-a1a6def1407e","title":"WebSocket服务","description":"websocket-service","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"0d08f0e1-8770-4959-a18e-a5edaa7d3f91","gmt_create":"2026-05-14T01:01:12.6118504+08:00","gmt_modified":"2026-05-14T01:01:12.6175773+08:00"},{"catalog_id":"cef80e9c-d6b0-40f8-81e6-2de24af301b9","title":"订阅付费系统","description":"subscription-payment","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"cb7aebf9-288e-4d1c-8b8b-2b3ac88ef305","gmt_create":"2026-05-14T01:01:37.257335+08:00","gmt_modified":"2026-05-14T01:01:37.2657575+08:00"},{"catalog_id":"b8a9084b-781b-4146-acc9-565f7e350662","title":"中间件系统","description":"middleware-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"dc8b894b-5b63-46c1-a630-82cbc66697f5","gmt_create":"2026-05-14T01:02:03.5664647+08:00","gmt_modified":"2026-05-14T01:02:03.5757033+08:00"},{"catalog_id":"9fa4da1b-9a6c-40b3-9dcf-5c279bb0f6ce","title":"内容发布系统","description":"content-publish","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"e46a6d23-4cdb-4bad-acfa-ceb7972e8523","gmt_create":"2026-05-14T01:02:50.1081645+08:00","gmt_modified":"2026-05-14T01:02:50.1196362+08:00"},{"catalog_id":"f0c961e5-1905-4574-8f76-f7c51312ae54","title":"类型定义系统","description":"type-definition-system","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"ed4691d6-720a-4ffd-84fe-595c0e726e01","gmt_create":"2026-05-14T01:03:01.1295758+08:00","gmt_modified":"2026-05-14T01:03:01.14209+08:00"},{"catalog_id":"2ba064e1-26a6-4a3a-b9d6-5133e5ded75e","title":"配置管理系统","description":"configuration-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"894576bc-fab2-445c-9482-2f8e2bb5d7c0","gmt_create":"2026-05-14T01:03:47.8528798+08:00","gmt_modified":"2026-05-14T01:03:47.8623626+08:00"},{"catalog_id":"197037de-e711-411e-9a99-97931ef1eee6","title":"认证中间件","description":"auth-middleware","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"9c2949fe-0c33-4fb9-b810-53bb0a1d1fd8","gmt_create":"2026-05-14T01:04:28.3057351+08:00","gmt_modified":"2026-05-14T01:04:28.3136084+08:00"},{"catalog_id":"5a0e203c-790c-4ac4-a0ce-cc6720b1de74","title":"LangGraph工作流设计","description":"langgraph-workflow","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a52db64d-30c5-4697-91b1-0501f394ccc2","gmt_create":"2026-05-14T01:04:57.6072224+08:00","gmt_modified":"2026-05-14T01:04:57.6193809+08:00"},{"catalog_id":"e0e3bd0e-5366-4990-9058-6bbab6c13e69","title":"生成节点系统","description":"generation-nodes","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"bb642620-a08a-4167-ad74-1fb87bdcf486","gmt_create":"2026-05-14T01:05:57.3024007+08:00","gmt_modified":"2026-05-14T01:05:57.316081+08:00"},{"catalog_id":"9365ddbc-0c00-4783-ad65-56cdb5d88da8","title":"错误处理中间件","description":"error-handler-middleware","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"7d7b99b9-aafa-4512-b79b-eaff4f2cfed9","gmt_create":"2026-05-14T01:06:31.7846006+08:00","gmt_modified":"2026-05-14T01:06:31.7946374+08:00"},{"catalog_id":"f7f15381-11b5-4aa7-a63d-63dcc8b3a2a9","title":"策略管理器","description":"strategy-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"6c3b8ffc-269c-4bc5-b519-31bf11a5efc8","gmt_create":"2026-05-14T01:07:01.1547239+08:00","gmt_modified":"2026-05-14T01:07:01.1709798+08:00"},{"catalog_id":"6979dd87-a74d-48be-ad03-766791a90cad","title":"安全防护中间件","description":"security-middleware","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"cff9d368-8d53-4e29-afaf-54cdbba0f7ca","gmt_create":"2026-05-14T01:07:16.4286195+08:00","gmt_modified":"2026-05-14T01:07:16.4359503+08:00"},{"catalog_id":"c44c2e8e-1dff-4823-be5d-820b7d1a3168","title":"存储机制","description":"storage-mechanism","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"29026fc2-0610-4f4d-be1a-53f69bf03f4f","gmt_create":"2026-05-14T01:08:58.8090058+08:00","gmt_modified":"2026-05-14T01:08:58.8276657+08:00"},{"catalog_id":"3769731e-846d-45fa-946c-42a52aacd5ec","title":"限流中间件","description":"rate-limiter-middleware","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"cb538e72-d2df-4986-a555-a4b1be5d83c8","gmt_create":"2026-05-14T01:09:08.7009611+08:00","gmt_modified":"2026-05-14T01:09:08.709866+08:00"},{"catalog_id":"925ff574-148d-4f69-a036-5cfea0fc7c8a","title":"阶段管理器","description":"stage-management","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"a251107d-aa17-46f9-835b-01ce35dac1be","gmt_create":"2026-05-14T01:10:07.7687672+08:00","gmt_modified":"2026-05-14T01:10:07.7829226+08:00"},{"catalog_id":"b1b6916b-d908-4bc6-a5ba-6446047c5add","title":"性能监控中间件","description":"performance-middleware","extend":"{}","progress_status":"completed","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209","id":"aa95fef1-f3ec-4d6f-ab5d-dff02d769d00","gmt_create":"2026-05-14T01:11:02.3040415+08:00","gmt_modified":"2026-05-14T01:11:02.3131412+08:00"}],"wiki_overview":{"content":"\u003cblog\u003e\n\n# AI有声书生成平台项目架构分析\n\n## 1. 项目简介\n\n### 项目目标\nAI有声书生成平台是一个基于人工智能技术的音频内容生成系统,旨在为用户提供从文字内容到有声书的全流程自动化解决方案。该平台支持多种AI模型、音色提供商,并集成了完整的订阅付费体系。\n\n### 核心功能\n- **AI书籍生成**:基于LangGraph的智能书籍大纲生成和内容创作\n- **TTS语音合成**:支持阿里云、Minimax等多种音色提供商\n- **视频内容生成**:将音频内容转换为带字幕的视频作品\n- **多媒体播放**:内置音频播放器和播放列表管理\n- **订阅付费**:完整的会员体系和计费管理\n\n### 目标用户\n- 内容创作者和作家\n- 教育机构和培训机构\n- 个人学习者和知识付费用户\n\n## 2. 技术架构\n\n### 整体架构图\n\n```mermaid\ngraph TB\n subgraph \"前端应用层\"\n A[UniApp移动端应用]\n B[Vue3 Web端]\n C[小程序端]\n end\n \n subgraph \"API网关层\"\n D[Koa.js RESTful API]\n E[WebSocket实时通信]\n end\n \n subgraph \"业务逻辑层\"\n F[认证授权模块]\n G[书籍生成模块]\n H[TTS语音合成模块]\n I[视频生成模块]\n J[播放器模块]\n K[订阅付费模块]\n end\n \n subgraph \"数据持久层\"\n L[MySQL数据库]\n M[Prisma ORM]\n N[Redis缓存]\n end\n \n subgraph \"外部服务层\"\n O[阿里云OSS存储]\n P[阿里云TTS服务]\n Q[Minimax音色服务]\n R[微信支付]\n S[支付宝支付]\n end\n \n A --\u003e D\n B --\u003e D\n C --\u003e D\n D --\u003e F\n D --\u003e G\n D --\u003e H\n D --\u003e I\n D --\u003e J\n D --\u003e K\n G --\u003e M\n H --\u003e M\n I --\u003e M\n J --\u003e M\n K --\u003e M\n M --\u003e L\n D --\u003e N\n H --\u003e O\n H --\u003e P\n H --\u003e Q\n K --\u003e R\n K --\u003e S\n```\n\n### 数据流架构\n\n```mermaid\nsequenceDiagram\n participant U as 用户\n participant FE as 前端应用\n participant API as API网关\n participant BG as 书籍生成服务\n participant TTS as TTS服务\n participant ST as 存储服务\n participant DB as 数据库\n \n U-\u003e\u003eFE: 创建书籍请求\n FE-\u003e\u003eAPI: POST /api/book-generator/langgraph/books\n API-\u003e\u003eBG: 调用书籍生成器\n BG-\u003e\u003eBG: AI生成大纲和内容\n BG-\u003e\u003eTTS: 生成章节音频\n TTS-\u003e\u003eST: 保存音频文件\n TTS-\u003e\u003eDB: 更新音频记录\n BG-\u003e\u003eDB: 更新书籍状态\n API-\u003e\u003eFE: 返回生成进度\n FE-\u003e\u003eU: 显示生成状态\n```\n\n## 3. 核心实现\n\n### 主要入口点\n\n#### 后端主入口\n- **server/src/app.ts** - Koa.js应用主入口,配置中间件、路由和数据库连接\n- **server/package.json** - 依赖管理,包含Koa、LangChain、Prisma等核心依赖\n\n#### 前端主入口\n- **my-uniapp-vue3/src/main.ts** - Vue3应用入口,配置Pinia状态管理和用户初始化\n- **my-uniapp-vue3/package.json** - UniApp项目配置,支持多端编译\n\n### 核心模块\n\n#### 书籍生成模块\n- **server/src/modules/book-generator/** - LangGraph驱动的书籍生成系统\n- **server/src/modules/book-generator/book-generator.controller.ts** - 书籍生成API控制器\n- **server/src/modules/book-generator/langgraph-controller.ts** - LangGraph集成控制器\n\n#### TTS语音合成模块\n- **server/src/modules/tts/** - 多供应商TTS服务集成\n- **server/src/modules/tts/tts.controller.ts** - TTS服务API控制器\n- **server/src/modules/tts/tts.service.ts** - TTS业务逻辑服务\n\n#### 队列管理系统\n- **server/src/services/queue.service.ts** - 基于Bull的分布式任务队列\n- **server/src/modules/book-generator/book-queue.processor.ts** - 书籍生成队列处理器\n\n### 配置管理\n\n#### 系统配置\n- **server/src/config/index.ts** - 统一配置管理,包括JWT、模型配置、存储配置\n- **server/prisma/schema.prisma** - 数据库模型定义,使用Prisma ORM\n\n#### 前端配置\n- **my-uniapp-vue3/src/store/user.ts** - Pinia用户状态管理\n- **my-uniapp-vue3/src/pages.json** - 页面路由配置\n\n### 外部依赖\n\n#### 后端依赖\n```mermaid\ngraph TD\n A[Koa.js应用] --\u003e B[@koa/router]\n A --\u003e C[@koa/bodyparser]\n A --\u003e D[Prisma Client]\n A --\u003e E[Bull队列]\n A --\u003e F[LangChain]\n A --\u003e G[OpenAI]\n A --\u003e H[MySQL]\n A --\u003e I[Redis]\n A --\u003e J[阿里云OSS]\n```\n\n#### 前端依赖\n```mermaid\ngraph TD\n K[Vue3应用] --\u003e L[Pinia状态管理]\n K --\u003e M[UniApp框架]\n K --\u003e N[Vite构建]\n K --\u003e O[Vue Router]\n K --\u003e P[HTTP客户端]\n```\n\n### 集成点\n\n#### 支付集成\n- **server/src/modules/payment/** - 支付宝和微信支付集成\n- **server/src/modules/subscription/** - 订阅套餐管理\n\n#### 存储集成\n- **server/src/services/oss.service.ts** - 阿里云OSS存储服务\n- **server/src/services/storage.service.ts** - 统一存储抽象层\n\n## 4. 关键特性\n\n### 书籍生成流程\n\n```mermaid\nstateDiagram-v2\n [*] --\u003e 草稿状态\n 草稿状态 --\u003e 大纲生成: 开始生成\n 大纲生成 --\u003e 内容生成: 大纲完成\n 内容生成 --\u003e 音频生成: 内容完成\n 音频生成 --\u003e 音频合并: 章节音频完成\n 音频合并 --\u003e 视频生成: 音频合并完成\n 视频生成 --\u003e 视频合并: 视频生成完成\n 视频合并 --\u003e 发布状态: 合并完成\n 发布状态 --\u003e [*]\n \n 大纲生成 --\u003e 失败状态: 生成失败\n 内容生成 --\u003e 失败状态: 生成失败\n 音频生成 --\u003e 失败状态: 生成失败\n 音频合并 --\u003e 失败状态: 合并失败\n 视频生成 --\u003e 失败状态: 生成失败\n 视频合并 --\u003e 失败状态: 合并失败\n 失败状态 --\u003e [*]\n```\n\n### 订阅付费系统\n\n```mermaid\nflowchart TD\n A[用户注册] --\u003e B[选择套餐]\n B --\u003e C[支付处理]\n C --\u003e D[激活订阅]\n D --\u003e E[权限验证]\n E --\u003e F[生成内容]\n F --\u003e G[配额检查]\n G --\u003e H{配额充足?}\n H --\u003e|是| I[继续生成]\n H --\u003e|否| J[提示升级]\n I --\u003e F\n J --\u003e [*]\n```\n\n### 实现亮点\n\n#### LangGraph智能生成\n- **server/src/modules/book-generator/graph.ts** - LangGraph工作流定义\n- **server/src/modules/book-generator/stage-manager.ts** - 生成阶段管理器\n\n#### 多模型支持\n- **server/src/config/models.json** - 模型配置文件\n- **server/src/services/llm/** - LLM服务抽象层\n\n#### 实时进度监控\n- **server/src/services/websocket.service.js** - WebSocket实时通信\n- **server/src/middleware/performance.ts** - 性能监控中间件\n\n## 5. 结论与建议\n\n### 架构优势\n1. **模块化设计**:清晰的模块分离,便于维护和扩展\n2. **异步处理**:基于队列的异步任务处理,提升用户体验\n3. **多供应商支持**:灵活的第三方服务集成能力\n4. **状态管理**:完善的用户状态和权限管理体系\n\n### 潜在改进点\n1. **错误处理**:增强全局错误处理和降级机制\n2. **性能优化**:考虑引入缓存策略和CDN加速\n3. **监控告警**:完善生产环境监控和告警系统\n4. **测试覆盖**:增加单元测试和集成测试覆盖率\n\n### 推荐发展路径\n1. **微服务化**:将大型单体应用拆分为独立的服务\n2. **容器化部署**:使用Docker和Kubernetes进行容器化管理\n3. **API网关**:引入API网关统一管理所有服务接口\n4. **数据仓库**:建立数据分析和报表系统\n\n### 维护建议\n1. **定期更新**:保持依赖包和框架的及时更新\n2. **安全审计**:定期进行安全漏洞扫描和修复\n3. **备份策略**:建立完善的数据备份和恢复机制\n4. **文档维护**:持续更新技术文档和API文档\n\nSources:\n- [package.json](server/package.json)\n- [app.ts](server/src/app.ts)\n- [book-generator.controller.ts](server/src/modules/book-generator/book-generator.controller.ts)\n- [tts.controller.ts](server/src/modules/tts/tts.controller.ts)\n- [main.ts](my-uniapp-vue3/src/main.ts)\n- [index.ts](server/src/config/index.ts)\n- [schema.prisma](server/prisma/schema.prisma)\n- [queue.service.ts](server/src/services/queue.service.ts)\n- [langgraph-controller.ts](server/src/modules/book-generator/langgraph-controller.ts)\n- [user.ts](my-uniapp-vue3/src/store/user.ts)\n- [MiniPlayer.vue](my-uniapp-vue3/src/components/MiniPlayer.vue)\n- [pages.json](my-uniapp-vue3/src/pages.json)\n\n\u003c/blog\u003e","gmt_create":"2026-05-13T22:49:54.930714+08:00","gmt_modified":"2026-05-13T22:49:54.930714+08:00","id":"60fd2a91-d346-4a2d-a439-dbec46807f25","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209"},"wiki_readme":{"content":"No readme file","gmt_create":"2026-05-13T22:48:34.1582886+08:00","gmt_modified":"2026-05-13T22:48:34.1582886+08:00","id":"358a4f0e-cd32-4986-a1b7-bc5e5dcce891","repo_id":"93fc92fc-6605-42b6-a0ae-005febd99209"},"wiki_repo":{"id":"93fc92fc-6605-42b6-a0ae-005febd99209","name":"audio_codebuddy","progress_status":"completed","wiki_present_status":"COMPLETED","optimized_catalog":"\".\\n├── .claude\\\\\\n│ └── settings.local.json\\n├── .codebuddy\\\\\\n│ ├── plans\\\\\\n│ └── rules\\\\\\n├── .plans\\\\audiobook-v2-ux\\\\\\n│ ├── backend-dev\\\\\\n│ │ ├── task-opt02\\\\\\n│ │ │ └── PLAN.md\\n│ │ ├── task-opt03\\\\\\n│ │ ├── task-opt08\\\\\\n│ │ │ └── README.md\\n│ │ ├── task-opt12\\\\\\n│ │ │ └── PLAN.md\\n│ │ ├── task-opt17\\\\\\n│ │ ├── findings.md\\n│ │ ├── progress.md\\n│ │ └── task_plan.md\\n│ ├── docs\\\\\\n│ │ ├── api-contracts.md\\n│ │ ├── architecture.md\\n│ │ └── index.md\\n│ ├── frontend-dev\\\\\\n│ │ ├── task-opt01\\\\\\n│ │ ├── task-opt02\\\\\\n│ │ │ ├── findings.md\\n│ │ │ ├── progress.md\\n│ │ │ └── task_plan.md\\n│ │ ├── task-opt03\\\\\\n│ │ ├── task-opt04\\\\\\n│ │ ├── task-opt05\\\\\\n│ │ ├── task-opt06\\\\\\n│ │ ├── task-opt07\\\\\\n│ │ │ └── findings.md\\n│ │ ├── task-opt09\\\\\\n│ │ ├── task-opt10\\\\\\n│ │ │ └── findings.md\\n│ │ ├── task-opt11\\\\\\n│ │ ├── task-opt13\\\\\\n│ │ ├── task-opt14\\\\\\n│ │ ├── task-opt15\\\\\\n│ │ │ └── findings.md\\n│ │ ├── task-opt16\\\\\\n│ │ │ └── findings.md\\n│ │ ├── task-opt18\\\\\\n│ │ │ └── findings.md\\n│ │ ├── findings.md\\n│ │ ├── progress.md\\n│ │ └── task_plan.md\\n│ ├── reviewer\\\\\\n│ │ ├── review-opt01\\\\\\n│ │ ├── review-opt02\\\\\\n│ │ ├── findings.md\\n│ │ └── progress.md\\n│ ├── team-lead\\\\\\n│ │ ├── message-from-backend-dev.md\\n│ │ └── message-from-frontend-dev.md\\n│ ├── decisions.md\\n│ ├── findings.md\\n│ ├── progress.md\\n│ ├── task_plan.md\\n│ └── team-snapshot.md\\n├── .workbuddy\\\\memory\\\\\\n│ ├── 2026-04-12.md\\n│ ├── 2026-04-14.md\\n│ └── MEMORY.md\\n├── bak\\\\\\n├── cert\\\\\\n│ ├── cert\\\\app\\\\cert\\\\\\n│ └── wx\\\\\\n├── deploy-package\\\\\\n│ ├── frontend\\\\build\\\\\\n│ └── server\\\\\\n│ ├── config\\\\\\n│ │ ├── index.js\\n│ │ ├── models-validator.js\\n│ │ └── models.json\\n│ ├── middleware\\\\\\n│ │ ├── auth.js\\n│ │ ├── errorHandler.js\\n│ │ └── usageLimit.js\\n│ ├── models\\\\\\n│ │ └── index.js\\n│ ├── modules\\\\\\n│ │ ├── ai\\\\\\n│ │ │ └── ai.controller.js\\n│ │ ├── ai-content\\\\\\n│ │ │ ├── ai-content.controller.js\\n│ │ │ ├── ai-content.service.js\\n│ │ │ └── learning-path.service.js\\n│ │ ├── albums\\\\\\n│ │ │ ├── albums.controller.js\\n│ │ │ └── albums.service.js\\n│ │ ├── audio\\\\\\n│ │ │ ├── audio.controller.js\\n│ │ │ └── audio.service.js\\n│ │ ├── audioedit\\\\\\n│ │ │ ├── audioedit.controller.js\\n│ │ │ └── audioedit.service.js\\n│ │ ├── auth\\\\\\n│ │ │ ├── auth.controller.js\\n│ │ │ └── auth.service.js\\n│ │ ├── bgm\\\\\\n│ │ │ ├── bgm.controller.js\\n│ │ │ └── bgm.service.js\\n│ │ ├── book-generator\\\\\\n│ │ │ ├── langgraph\\\\\\n│ │ │ │ ├── book-langgraph.js\\n│ │ │ │ ├── controller.js\\n│ │ │ │ ├── index.js\\n│ │ │ │ └── types.js\\n│ │ │ ├── book-generator.controller.js\\n│ │ │ ├── book-generator.service.js\\n│ │ │ ├── book-generator.store.js\\n│ │ │ ├── book-generator.types.js\\n│ │ │ ├── book-generator.workflow.js\\n│ │ │ └── index.js\\n│ │ ├── categories\\\\\\n│ │ │ ├── categories.controller.js\\n│ │ │ └── categories.service.js\\n│ │ ├── comments\\\\\\n│ │ │ ├── comments.controller.js\\n│ │ │ └── comments.service.js\\n│ │ ├── favorites\\\\\\n│ │ │ ├── favorites.controller.js\\n│ │ │ └── favorites.service.js\\n│ │ ├── member\\\\\\n│ │ │ ├── member.controller.js\\n│ │ │ └── member.service.js\\n│ │ ├── notifications\\\\\\n│ │ │ ├── notifications.controller.js\\n│ │ │ └── notifications.service.js\\n│ │ ├── player\\\\\\n│ │ │ ├── player.controller.js\\n│ │ │ └── player.service.js\\n│ │ ├── preferences\\\\\\n│ │ │ ├── preferences.controller.js\\n│ │ │ └── preferences.service.js\\n│ │ ├── search\\\\\\n│ │ │ ├── search.controller.js\\n│ │ │ └── search.service.js\\n│ │ ├── share\\\\\\n│ │ │ ├── share.controller.js\\n│ │ │ └── share.service.js\\n│ │ ├── templates\\\\\\n│ │ │ ├── templates.controller.js\\n│ │ │ └── templates.service.js\\n│ │ ├── tts\\\\\\n│ │ │ ├── ai-summary.service.js\\n│ │ │ ├── aliyun-realtime.provider.js\\n│ │ │ ├── aliyun.provider.js\\n│ │ │ ├── audio-merger.js\\n│ │ │ ├── mock.provider.js\\n│ │ │ ├── tts.controller.js\\n│ │ │ └── tts.service.js\\n│ │ └── video-generator\\\\\\n│ │ ├── video-generator.controller.js\\n│ │ ├── video-generator.ffmpeg.js\\n│ │ ├── video-generator.service.js\\n│ │ └── video-generator.types.js\\n│ ├── services\\\\llm\\\\\\n│ │ └── index.js\\n│ ├── types\\\\\\n│ │ └── index.js\\n│ └── app.js\\n├── docker-nginx\\\\\\n│ ├── README.md\\n│ ├── bookapi.conf\\n│ └── docker-compose.yml\\n├── docs\\\\\\n│ ├── API.md\\n│ ├── DEPLOY.md\\n│ ├── TTS成本分析报告.md\\n│ ├── app-troubleshooting.md\\n│ ├── database-structure.md\\n│ ├── 播放页设计方案.md\\n│ ├── 支付集成指南.md\\n│ └── 订阅系统使用说明.md\\n├── my-uniapp-vue3\\\\\\n│ ├── .hbuilderx\\\\\\n│ │ └── launch.json\\n│ ├── .vite\\\\deps\\\\\\n│ ├── server\\\\src\\\\modules\\\\bgm\\\\\\n│ ├── src\\\\\\n│ │ ├── api\\\\\\n│ │ │ └── download.ts\\n│ │ ├── components\\\\\\n│ │ │ ├── AudioDownload.vue\\n│ │ │ ├── GenerationStatusBadge.vue\\n│ │ │ ├── LazyImage.vue\\n│ │ │ ├── MiniPlayer.vue\\n│ │ │ ├── NetworkStatus.vue\\n│ │ │ ├── Skeleton.vue\\n│ │ │ └── SkeletonList.vue\\n│ │ ├── pages\\\\\\n│ │ │ ├── ai\\\\\\n│ │ │ ├── ai-content\\\\\\n│ │ │ ├── ai-generate\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── album\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── albums\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── alipay-qrcode\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── book-generator\\\\\\n│ │ │ │ ├── chapter-detail.vue\\n│ │ │ │ ├── create.vue\\n│ │ │ │ ├── detail.vue\\n│ │ │ │ └── index.vue\\n│ │ │ ├── create\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── drafts\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── favorites\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── history\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── index\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── login\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── logs\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── member\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── mine\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── notifications\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── orders\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── payment-confirm\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── payment-result\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── player\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── playlists\\\\\\n│ │ │ │ ├── detail.vue\\n│ │ │ │ └── index.vue\\n│ │ │ ├── publish\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── search\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── settings\\\\\\n│ │ │ │ └── index.vue\\n│ │ │ ├── video-generator\\\\\\n│ │ │ │ ├── create.vue\\n│ │ │ │ ├── index.vue\\n│ │ │ │ └── preview.vue\\n│ │ │ └── webview\\\\\\n│ │ │ └── index.vue\\n│ │ ├── static\\\\\\n│ │ │ └── tabbar\\\\\\n│ │ ├── store\\\\\\n│ │ │ ├── audio.ts\\n│ │ │ └── user.ts\\n│ │ ├── types\\\\\\n│ │ │ ├── index.ts\\n│ │ │ └── video-generator.ts\\n│ │ ├── utils\\\\\\n│ │ │ ├── book-generator-api.ts\\n│ │ │ ├── config.ts\\n│ │ │ ├── debug.ts\\n│ │ │ ├── publish-api.ts\\n│ │ │ ├── request.ts\\n│ │ │ ├── storage.ts\\n│ │ │ ├── video-generator-api.ts\\n│ │ │ └── websocket.ts\\n│ │ ├── App.vue\\n│ │ ├── env.d.ts\\n│ │ ├── main.ts\\n│ │ ├── manifest.json\\n│ │ ├── pages.json\\n│ │ └── shime-uni.d.ts\\n│ ├── .gitignore\\n│ ├── index.html\\n│ ├── package-lock.json\\n│ ├── package.json\\n│ ├── shims-uni.d.ts\\n│ ├── tsconfig.json\\n│ └── vite.config.ts\\n├── server\\\\\\n│ ├── cert\\\\wx\\\\\\n│ ├── logs\\\\\\n│ ├── prisma\\\\\\n│ │ ├── migrations\\\\\\n│ │ │ ├── 20260422105352_add_content_status\\\\\\n│ │ │ │ └── migration.sql\\n│ │ │ └── migration_lock.toml\\n│ │ ├── migrate-genstage.ts\\n│ │ ├── migrate_publish.sql\\n│ │ ├── schema.prisma\\n│ │ ├── seed-test-user.js\\n│ │ └── sync-genstage.ts\\n│ ├── public\\\\\\n│ │ ├── images\\\\\\n│ │ └── videos\\\\\\n│ │ └── test\\\\\\n│ ├── scripts\\\\\\n│ ├── server\\\\src\\\\modules\\\\book-generator\\\\\\n│ │ ├── nodes\\\\\\n│ │ ├── parsers\\\\\\n│ │ └── prompts\\\\\\n│ ├── src\\\\\\n│ │ ├── config\\\\\\n│ │ │ ├── index.ts\\n│ │ │ ├── models-validator.ts\\n│ │ │ └── models.json\\n│ │ ├── middleware\\\\\\n│ │ │ ├── auth.js\\n│ │ │ ├── auth.ts\\n│ │ │ ├── cache.ts\\n│ │ │ ├── errorHandler.js\\n│ │ │ ├── errorHandler.ts\\n│ │ │ ├── performance.ts\\n│ │ │ ├── rate-limiter.ts\\n│ │ │ ├── security.ts\\n│ │ │ └── usageLimit.ts\\n│ │ ├── models\\\\\\n│ │ │ ├── index.js\\n│ │ │ └── index.ts\\n│ │ ├── modules\\\\\\n│ │ │ ├── audioedit\\\\\\n│ │ │ │ ├── audioedit.controller.ts\\n│ │ │ │ └── audioedit.service.ts\\n│ │ │ ├── auth\\\\\\n│ │ │ │ ├── auth.controller.ts\\n│ │ │ │ └── auth.service.ts\\n│ │ │ ├── bgm\\\\\\n│ │ │ │ ├── bgm.controller.ts\\n│ │ │ │ └── bgm.service.ts\\n│ │ │ ├── book-generator\\\\\\n│ │ │ │ ├── nodes\\\\\\n│ │ │ │ │ ├── content.node.ts\\n│ │ │ │ │ ├── foreword.node.ts\\n│ │ │ │ │ ├── full-outline.node.ts\\n│ │ │ │ │ ├── outline.node.ts\\n│ │ │ │ │ ├── per-chapter.node.ts\\n│ │ │ │ │ ├── plan.node.ts\\n│ │ │ │ │ └── sections.node.ts\\n│ │ │ │ ├── parsers\\\\\\n│ │ │ │ │ ├── outline.parser.ts\\n│ │ │ │ │ ├── section.parser.ts\\n│ │ │ │ │ └── subsection.parser.ts\\n│ │ │ │ ├── prompts\\\\\\n│ │ │ │ │ ├── builder.ts\\n│ │ │ │ │ └── templates.ts\\n│ │ │ │ ├── strategies\\\\\\n│ │ │ │ │ ├── base.ts\\n│ │ │ │ │ ├── one-step-outline.strategy.ts\\n│ │ │ │ │ ├── per-chapter.strategy.ts\\n│ │ │ │ │ ├── selector.ts\\n│ │ │ │ │ ├── sequential.strategy.ts\\n│ │ │ │ │ └── types.ts\\n│ │ │ │ ├── test\\\\\\n│ │ │ │ │ └── strategy-compare.ts\\n│ │ │ │ ├── FAULT_TOLERANCE.md\\n│ │ │ │ ├── README.md\\n│ │ │ │ ├── ai-generate-controller.ts\\n│ │ │ │ ├── album-controller.ts\\n│ │ │ │ ├── album-management.controller.ts\\n│ │ │ │ ├── book-generator-optimizations.ts\\n│ │ │ │ ├── book-generator.controller.ts\\n│ │ │ │ ├── book-generator.service.ts\\n│ │ │ │ ├── book-generator.store.ts\\n│ │ │ │ ├── book-generator.types.ts\\n│ │ │ │ ├── book-queue.processor.ts\\n│ │ │ │ ├── book-type-config.ts\\n│ │ │ │ ├── fault-tolerance.ts\\n│ │ │ │ ├── graph.ts\\n│ │ │ │ ├── index.ts\\n│ │ │ │ ├── langgraph-controller.ts\\n│ │ │ │ ├── langgraph-types.ts\\n│ │ │ │ ├── stage-manager.ts\\n│ │ │ │ ├── test_import.ts\\n│ │ │ │ └── utils.ts\\n│ │ │ ├── categories\\\\\\n│ │ │ │ ├── categories.controller.ts\\n│ │ │ │ └── categories.service.ts\\n│ │ │ ├── comments\\\\\\n│ │ │ │ ├── comments.controller.ts\\n│ │ │ │ └── comments.service.ts\\n│ │ │ ├── drafts\\\\\\n│ │ │ │ └── drafts.controller.ts\\n│ │ │ ├── favorites\\\\\\n│ │ │ │ ├── favorites.controller.ts\\n│ │ │ │ └── favorites.service.ts\\n│ │ │ ├── feedback\\\\\\n│ │ │ │ ├── feedback.controller.ts\\n│ │ │ │ └── feedback.service.ts\\n│ │ │ ├── history\\\\\\n│ │ │ │ ├── history-batch.controller.ts\\n│ │ │ │ └── history.controller.ts\\n│ │ │ ├── member\\\\\\n│ │ │ │ ├── member.controller.ts\\n│ │ │ │ └── member.service.ts\\n│ │ │ ├── notifications\\\\\\n│ │ │ │ ├── notifications.controller.ts\\n│ │ │ │ └── notifications.service.ts\\n│ │ │ ├── payment\\\\\\n│ │ │ │ ├── payment.controller.ts\\n│ │ │ │ └── payment.service.ts\\n│ │ │ ├── player\\\\\\n│ │ │ │ ├── player.controller.ts\\n│ │ │ │ ├── player.service.ts\\n│ │ │ │ └── playlist.controller.ts\\n│ │ │ ├── preferences\\\\\\n│ │ │ │ ├── preferences.controller.ts\\n│ │ │ │ └── preferences.service.ts\\n│ │ │ ├── publish\\\\\\n│ │ │ │ ├── publish.controller.js\\n│ │ │ │ ├── publish.controller.ts\\n│ │ │ │ ├── publish.service.js\\n│ │ │ │ ├── publish.service.ts\\n│ │ │ │ ├── publish.types.js\\n│ │ │ │ └── publish.types.ts\\n│ │ │ ├── search\\\\\\n│ │ │ │ ├── search.controller.ts\\n│ │ │ │ └── search.service.ts\\n│ │ │ ├── share\\\\\\n│ │ │ │ ├── share.controller.ts\\n│ │ │ │ └── share.service.ts\\n│ │ │ ├── sign\\\\\\n│ │ │ │ ├── sign.controller.ts\\n│ │ │ │ └── sign.service.ts\\n│ │ │ ├── subscription\\\\\\n│ │ │ │ ├── subscription.controller.ts\\n│ │ │ │ └── subscription.service.ts\\n│ │ │ ├── tts\\\\\\n│ │ │ │ ├── ai-summary.service.js\\n│ │ │ │ ├── ai-summary.service.ts\\n│ │ │ │ ├── aliyun-realtime.provider.js\\n│ │ │ │ ├── aliyun-realtime.provider.ts\\n│ │ │ │ ├── aliyun.provider.js\\n│ │ │ │ ├── aliyun.provider.ts\\n│ │ │ │ ├── audio-merger.js\\n│ │ │ │ ├── audio-merger.ts\\n│ │ │ │ ├── minimax.provider.js\\n│ │ │ │ ├── minimax.provider.ts\\n│ │ │ │ ├── mock.provider.js\\n│ │ │ │ ├── mock.provider.ts\\n│ │ │ │ ├── tts.controller.ts\\n│ │ │ │ ├── tts.service.js\\n│ │ │ │ └── tts.service.ts\\n│ │ │ └── video-generator\\\\\\n│ │ │ ├── README.md\\n│ │ │ ├── video-generator.controller.ts\\n│ │ │ ├── video-generator.ffmpeg.ts\\n│ │ │ ├── video-generator.service.ts\\n│ │ │ └── video-generator.types.ts\\n│ │ ├── services\\\\\\n│ │ │ ├── llm\\\\\\n│ │ │ │ ├── book-tools.ts\\n│ │ │ │ ├── index.js\\n│ │ │ │ └── index.ts\\n│ │ │ ├── ffmpeg-example.ts\\n│ │ │ ├── ffmpeg.processor.js\\n│ │ │ ├── ffmpeg.processor.ts\\n│ │ │ ├── index.ts\\n│ │ │ ├── log.controller.ts\\n│ │ │ ├── log.service.ts\\n│ │ │ ├── logger.service.ts\\n│ │ │ ├── memory-queue.ts\\n│ │ │ ├── oss.service.js\\n│ │ │ ├── oss.service.ts\\n│ │ │ ├── queue.service.js\\n│ │ │ ├── queue.service.ts\\n│ │ │ ├── redis.service.js\\n│ │ │ ├── redis.service.ts\\n│ │ │ ├── requestLogger.ts\\n│ │ │ ├── sentry.service.ts\\n│ │ │ ├── storage-example.ts\\n│ │ │ ├── storage.service.js\\n│ │ │ ├── storage.service.ts\\n│ │ │ └── websocket.service.ts\\n│ │ ├── types\\\\\\n│ │ │ ├── index.js\\n│ │ │ └── index.ts\\n│ │ ├── app.ts\\n│ │ └── app.ts.bak\\n│ ├── temp\\\\images\\\\\\n│ ├── test-results\\\\\\n│ │ ├── outline-comparison.json\\n│ │ ├── outline-comparison.txt\\n│ │ └── outline-evaluation-report.md\\n│ ├── .gitignore\\n│ ├── LANGCHAIN_MIGRATION_PLAN.md\\n│ ├── add-ai-logs.js\\n│ ├── add-chapter-checkpoint.js\\n│ ├── add-checkpoint.js\\n│ ├── add-raw-log.js\\n│ ├── add-resume.js\\n│ ├── add-subsection-checkpoint.js\\n│ ├── check-1162-audio.js\\n│ ├── check-1214-audio.js\\n│ ├── check-all-books.js\\n│ ├── check-api-format.js\\n│ ├── check-audio-result.js\\n│ ├── check-audio-status.js\\n│ ├── check-before-audio-test.js\\n│ ├── check-book-fields.js\\n│ ├── check-book-outline.js\\n│ ├── check-book-time.js\\n│ ├── check-book.js\\n│ ├── check-book2-chapters.js\\n│ ├── check-book2.js\\n│ ├── check-book3.js\\n│ ├── check-book5-subsections.js\\n│ ├── check-books-3-4.js\\n│ ├── check-books.js\\n│ ├── check-chapter-1162.js\\n│ ├── check-chapter-audio-update.js\\n│ ├── check-chapters.js\\n│ ├── check-content-status.js\\n│ ├── check-current-status.js\\n│ ├── check-database.js\\n│ ├── check-fields.ts\\n│ ├── check-generation-status.js\\n│ ├── check-my-audio-books.js\\n│ ├── check-parentid.js\\n│ ├── check-short-audio-result.js\\n│ ├── check-status.js\\n│ ├── check-users.js\\n│ ├── clean-generating.js\\n│ ├── clean-my-audio-books.js\\n│ ├── clear-book-chapters.js\\n│ ├── clear-redis-queue.js\\n│ ├── create-mini-book.js\\n│ ├── create-test-book.js\\n│ ├── del.js\\n│ ├── deploy-auto.sh\\n│ ├── deploy-simple.sh\\n│ ├── diff.txt\\n│ ├── final-audio-test-report.js\\n│ ├── final-fix.js\\n│ ├── fix-791-793.js\\n│ ├── fix-audio-urls.js\\n│ ├── fix-book-status.js\\n│ ├── fix-book5-structure.js\\n│ ├── fix-chapter-status.js\\n│ ├── fix-checkpoint.js\\n│ ├── fix-controller-queue.js\\n│ ├── fix-last-one.js\\n│ ├── fix-line790-v2.js\\n│ ├── fix-line790.js\\n│ ├── fix-null-parentid.js\\n│ ├── fix-prompt.js\\n│ ├── fix-regex.js\\n│ ├── fix-remaining-queues.js\\n│ ├── fix-store.js\\n│ ├── fix-store2.js\\n│ ├── fix-subsection-parser.js\\n│ ├── fix-syntax.js\\n│ ├── fix-think.js\\n│ ├── force-clear.js\\n│ ├── model-validation-report.json\\n│ ├── modify-app.js\\n│ ├── modify-controller.js\\n│ ├── monitor-book.js\\n│ ├── monitor-generation.js\\n│ ├── monitor-progress.js\\n│ ├── package-lock.json\\n│ ├── package.json\\n│ ├── prisma.config.ts\\n│ ├── regenerate-book.js\\n│ ├── reset-and-trigger.js\\n│ ├── rewrite-parser.js\\n│ ├── start-with-logging.js\\n│ ├── sync-generate.js\\n│ ├── test-ai.js\\n│ ├── test-api.js\\n│ ├── test-audio-gen.js\\n│ ├── test-audio-playback.js\\n│ ├── test-audio-url-access.js\\n│ ├── test-book2-api.js\\n│ ├── test-bookid.js\\n│ ├── test-content-gen.js\\n│ ├── test-douyin-publish.js\\n│ ├── test-douyin-real-upload.js\\n│ ├── test-dual-status.js\\n│ ├── test-dynamic-prompt.js\\n│ ├── test-full-audio-generation.js\\n│ ├── test-langchain.ts\\n│ ├── test-llm.ts\\n│ ├── test-map.js\\n│ ├── test-new-audio-generation.js\\n│ ├── test-openai.ts\\n│ ├── test-p0-p1-features.js\\n│ ├── test-short-audio.js\\n│ ├── test-split.js\\n│ ├── test-subsection-navigation.js\\n│ ├── test-tts.js\\n│ ├── test-upsert.js\\n│ ├── tsconfig.json\\n│ ├── update-all-content-to-hello.js\\n│ ├── update-chapters-status.ts\\n│ ├── update-member.js\\n│ ├── verify-content.js\\n│ ├── verify-hello-update.js\\n│ ├── verify-new-audio.js\\n│ └── webhook-deploy.py\\n├── test\\\\\\n│ ├── .hbuilderx\\\\\\n│ │ └── launch.json\\n│ ├── pages\\\\index\\\\\\n│ │ └── index.vue\\n│ ├── static\\\\\\n│ ├── unpackage\\\\dist\\\\\\n│ ├── .gitignore\\n│ ├── App.vue\\n│ ├── index.html\\n│ ├── main.js\\n│ ├── manifest.json\\n│ ├── pages.json\\n│ └── uni.promisify.adaptor.js\\n├── test-results\\\\\\n│ └── .last-run.json\\n├── .gitattributes\\n├── .gitignore\\n├── 6个新功能完整实现方案.md\\n├── 6个新功能最终完成包.md\\n├── AUTO_DEPLOY.md\\n├── Bug 修复总结.md\\n├── DEPLOY.md\\n├── DEPLOY_PROD.md\\n├── FEATURE_CHECKLIST.md\\n├── README.md\\n├── after-click.yml\\n├── after-gen.yml\\n├── book.rrbrr.com.conf\\n├── bug-report-2026-05-06.md\\n├── check-css.js\\n├── check-html.js\\n├── check-panel.js\\n├── claude-progress.txt\\n├── create_vue.py\\n├── debug-api.js\\n├── debug-create-page.js\\n├── debug-input.js\\n├── deploy-prod.sh\\n├── deploy-server.sh\\n├── deploy.sh\\n├── feature_list.json\\n├── feature_list_content_generate.json\\n├── feature_list_monitor.json\\n├── feature_list_optimization.json\\n├── feature_list_optimize.json\\n├── feature_list_player.json\\n├── feature_list_subscription.json\\n├── feature_list_ui_optimize.json\\n├── full-test-final.js\\n├── full-test.js\\n├── full-ui-test.js\\n├── init.sh\\n├── langgraph生成书.md\\n├── package-lock.json\\n├── package.json\\n├── simple-test.js\\n├── status-system-analysis.md\\n├── status-system-redesign.md\\n├── test-all-apis.js\\n├── test-history-batch-delete.js\\n├── test-input-fixed.js\\n├── test-login.js\\n├── test-pages.js\\n├── test-save.js\\n├── test-simple-login.js\\n├── test-upload.js\\n├── test-v-model.js\\n├── test-video-generator.html\\n├── test-video-page.js\\n├── test_apis.sh\\n├── 优化开发计划.md\\n├── 借鉴openmaic.md\\n├── 功能32-37完成总结.md\\n├── 功能32-37最终完成报告.md\\n├── 功能33-37完整代码实现.md\\n├── 各大模型生成大纲的效果.md\\n├── 市面书籍分析版本2.md\\n├── 开发计划-第二期.md\\n├── 生成优化.md\\n├── 生成高质量书籍.md\\n├── 订阅支付系统完成报告.md\\n└── 页面优化建议.md\\n\"","current_document_structure":"WikiEncrypted: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","catalogue_think_content":"WikiEncrypted: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","recovery_checkpoint":"wiki_generation_completed","last_commit_id":"3a6ecb59a5118c27cfc34fcc682db439b5d9979a","last_commit_update":"2026-05-14T01:11:02.8444445+08:00","gmt_create":"2026-03-27T03:53:32.6321533+08:00","gmt_modified":"2026-05-14T01:11:02.8444445+08:00","extend_info":"{\"language\":\"zh\",\"active\":true,\"branch\":\"master\",\"shareStatus\":\"\",\"server_error_code\":\"\",\"cosy_version\":\"\"}"}}
|