1 line
232 KiB
JSON
1 line
232 KiB
JSON
{"knowledge_relations":[{"id":2781,"source_id":"2b5fd78d-2407-4ccc-8807-9bb05c0a687e","target_id":"6b28e060-0be3-411e-8a94-3777d165d10e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2b5fd78d-2407-4ccc-8807-9bb05c0a687e -\u003e 6b28e060-0be3-411e-8a94-3777d165d10e","gmt_create":"2026-06-30T14:40:47.271887+08:00","gmt_modified":"2026-06-30T14:40:47.271887+08:00"},{"id":2782,"source_id":"2b5fd78d-2407-4ccc-8807-9bb05c0a687e","target_id":"941d72b1-8daa-4c53-bfeb-9a0b2aa0f43c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2b5fd78d-2407-4ccc-8807-9bb05c0a687e -\u003e 941d72b1-8daa-4c53-bfeb-9a0b2aa0f43c","gmt_create":"2026-06-30T14:40:47.272516+08:00","gmt_modified":"2026-06-30T14:40:47.272516+08:00"},{"id":2783,"source_id":"2b5fd78d-2407-4ccc-8807-9bb05c0a687e","target_id":"c6f2cb24-ff10-4ae7-87c2-b23b9bbee033","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2b5fd78d-2407-4ccc-8807-9bb05c0a687e -\u003e c6f2cb24-ff10-4ae7-87c2-b23b9bbee033","gmt_create":"2026-06-30T14:40:47.272798+08:00","gmt_modified":"2026-06-30T14:40:47.272798+08:00"},{"id":2784,"source_id":"2b5fd78d-2407-4ccc-8807-9bb05c0a687e","target_id":"4619dc3e-419f-435b-ba7c-e600e188743a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2b5fd78d-2407-4ccc-8807-9bb05c0a687e -\u003e 4619dc3e-419f-435b-ba7c-e600e188743a","gmt_create":"2026-06-30T14:40:47.272953+08:00","gmt_modified":"2026-06-30T14:40:47.272953+08:00"},{"id":2785,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"7f894188-cf72-40a2-af95-f13ef3dd1f6e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e 7f894188-cf72-40a2-af95-f13ef3dd1f6e","gmt_create":"2026-06-30T14:40:47.273394+08:00","gmt_modified":"2026-06-30T14:40:47.273394+08:00"},{"id":2786,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"b66da3f2-6889-45dc-a824-2591d2f5f0f3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e b66da3f2-6889-45dc-a824-2591d2f5f0f3","gmt_create":"2026-06-30T14:40:47.273688+08:00","gmt_modified":"2026-06-30T14:40:47.273688+08:00"},{"id":2787,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"799e02d2-8358-41a1-9f8e-114f8ac00eae","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e 799e02d2-8358-41a1-9f8e-114f8ac00eae","gmt_create":"2026-06-30T14:40:47.273951+08:00","gmt_modified":"2026-06-30T14:40:47.273952+08:00"},{"id":2788,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"be7e1733-8c9e-4849-99b0-bab40fdf271e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e be7e1733-8c9e-4849-99b0-bab40fdf271e","gmt_create":"2026-06-30T14:40:47.274328+08:00","gmt_modified":"2026-06-30T14:40:47.274328+08:00"},{"id":2789,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"8f464fc9-6537-45fa-a0dd-eacdf742b5a1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e 8f464fc9-6537-45fa-a0dd-eacdf742b5a1","gmt_create":"2026-06-30T14:40:47.274458+08:00","gmt_modified":"2026-06-30T14:40:47.274458+08:00"},{"id":2790,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"77bc73e0-8709-4209-96e0-5522f9356b06","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e 77bc73e0-8709-4209-96e0-5522f9356b06","gmt_create":"2026-06-30T14:40:47.274632+08:00","gmt_modified":"2026-06-30T14:40:47.274632+08:00"},{"id":2791,"source_id":"1f4b6f57-25c5-444e-a943-d162d896dc21","target_id":"799ec9fc-088e-456c-8f93-72516adac3ac","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1f4b6f57-25c5-444e-a943-d162d896dc21 -\u003e 799ec9fc-088e-456c-8f93-72516adac3ac","gmt_create":"2026-06-30T14:40:47.274784+08:00","gmt_modified":"2026-06-30T14:40:47.274784+08:00"},{"id":2792,"source_id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","target_id":"0efcac71-9db4-49c9-a660-690dcb97cd54","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4553d9a4-e0e6-4bc3-b285-ecc6df9dc822 -\u003e 0efcac71-9db4-49c9-a660-690dcb97cd54","gmt_create":"2026-06-30T14:40:47.275136+08:00","gmt_modified":"2026-06-30T14:40:47.275136+08:00"},{"id":2793,"source_id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","target_id":"ef11f60f-47aa-41bf-8884-6d51bc9ae8ef","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4553d9a4-e0e6-4bc3-b285-ecc6df9dc822 -\u003e ef11f60f-47aa-41bf-8884-6d51bc9ae8ef","gmt_create":"2026-06-30T14:40:47.275339+08:00","gmt_modified":"2026-06-30T14:40:47.275339+08:00"},{"id":2794,"source_id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","target_id":"edd1d813-70d4-49de-9f9e-e3ebf7a68678","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4553d9a4-e0e6-4bc3-b285-ecc6df9dc822 -\u003e edd1d813-70d4-49de-9f9e-e3ebf7a68678","gmt_create":"2026-06-30T14:40:47.27546+08:00","gmt_modified":"2026-06-30T14:40:47.27546+08:00"},{"id":2795,"source_id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","target_id":"b2376dbd-002b-4469-8e6e-71748e46e7c2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4553d9a4-e0e6-4bc3-b285-ecc6df9dc822 -\u003e b2376dbd-002b-4469-8e6e-71748e46e7c2","gmt_create":"2026-06-30T14:40:47.275789+08:00","gmt_modified":"2026-06-30T14:40:47.275789+08:00"},{"id":2796,"source_id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","target_id":"b5718a44-f452-496d-83c3-4e89b844c709","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4553d9a4-e0e6-4bc3-b285-ecc6df9dc822 -\u003e b5718a44-f452-496d-83c3-4e89b844c709","gmt_create":"2026-06-30T14:40:47.276097+08:00","gmt_modified":"2026-06-30T14:40:47.276097+08:00"},{"id":2797,"source_id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","target_id":"539729a8-aa4b-40c6-bf3b-ec9f467f7717","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 4553d9a4-e0e6-4bc3-b285-ecc6df9dc822 -\u003e 539729a8-aa4b-40c6-bf3b-ec9f467f7717","gmt_create":"2026-06-30T14:40:47.276606+08:00","gmt_modified":"2026-06-30T14:40:47.276606+08:00"},{"id":2798,"source_id":"ed153077-3827-4586-8838-812707189c14","target_id":"b6857b45-a960-4168-92dd-1edcf6567e47","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: ed153077-3827-4586-8838-812707189c14 -\u003e b6857b45-a960-4168-92dd-1edcf6567e47","gmt_create":"2026-06-30T14:40:47.277101+08:00","gmt_modified":"2026-06-30T14:40:47.277101+08:00"},{"id":2799,"source_id":"ed153077-3827-4586-8838-812707189c14","target_id":"2971fa4f-335a-4294-9668-0967b9047d66","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: ed153077-3827-4586-8838-812707189c14 -\u003e 2971fa4f-335a-4294-9668-0967b9047d66","gmt_create":"2026-06-30T14:40:47.277268+08:00","gmt_modified":"2026-06-30T14:40:47.277268+08:00"},{"id":2800,"source_id":"ed153077-3827-4586-8838-812707189c14","target_id":"f0978b42-6f98-470e-922f-22dec2fac24d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: ed153077-3827-4586-8838-812707189c14 -\u003e f0978b42-6f98-470e-922f-22dec2fac24d","gmt_create":"2026-06-30T14:40:47.277627+08:00","gmt_modified":"2026-06-30T14:40:47.277627+08:00"},{"id":2801,"source_id":"c45b2f5f-49f8-4c8d-b489-44b4c6800e99","target_id":"5ab55e3b-04bc-4e92-93f7-52bec7ad8dde","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c45b2f5f-49f8-4c8d-b489-44b4c6800e99 -\u003e 5ab55e3b-04bc-4e92-93f7-52bec7ad8dde","gmt_create":"2026-06-30T14:40:47.277787+08:00","gmt_modified":"2026-06-30T14:40:47.277787+08:00"},{"id":2802,"source_id":"c45b2f5f-49f8-4c8d-b489-44b4c6800e99","target_id":"62bcda0f-7c78-4109-9649-58bbf9fd68ae","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c45b2f5f-49f8-4c8d-b489-44b4c6800e99 -\u003e 62bcda0f-7c78-4109-9649-58bbf9fd68ae","gmt_create":"2026-06-30T14:40:47.27822+08:00","gmt_modified":"2026-06-30T14:40:47.27822+08:00"},{"id":2803,"source_id":"c45b2f5f-49f8-4c8d-b489-44b4c6800e99","target_id":"86f882d7-9e64-4c38-85e7-4782fd55fed2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c45b2f5f-49f8-4c8d-b489-44b4c6800e99 -\u003e 86f882d7-9e64-4c38-85e7-4782fd55fed2","gmt_create":"2026-06-30T14:40:47.278376+08:00","gmt_modified":"2026-06-30T14:40:47.278376+08:00"},{"id":2804,"source_id":"c45b2f5f-49f8-4c8d-b489-44b4c6800e99","target_id":"ff04bd0e-99c4-481c-ac8c-3c1a6cae1fb5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c45b2f5f-49f8-4c8d-b489-44b4c6800e99 -\u003e ff04bd0e-99c4-481c-ac8c-3c1a6cae1fb5","gmt_create":"2026-06-30T14:40:47.278503+08:00","gmt_modified":"2026-06-30T14:40:47.278503+08:00"},{"id":2805,"source_id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","target_id":"772c69b5-886e-48f6-bd11-faf8ca2155e8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d4cb0c3c-97e9-449f-8918-f1c01e7e3561 -\u003e 772c69b5-886e-48f6-bd11-faf8ca2155e8","gmt_create":"2026-06-30T14:40:47.278654+08:00","gmt_modified":"2026-06-30T14:40:47.278654+08:00"},{"id":2806,"source_id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","target_id":"babe3ec0-01cb-43c3-93db-7e59cdccce68","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d4cb0c3c-97e9-449f-8918-f1c01e7e3561 -\u003e babe3ec0-01cb-43c3-93db-7e59cdccce68","gmt_create":"2026-06-30T14:40:47.278828+08:00","gmt_modified":"2026-06-30T14:40:47.278828+08:00"},{"id":2807,"source_id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","target_id":"8d4422fd-bd93-431d-a97c-70b75f370f82","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d4cb0c3c-97e9-449f-8918-f1c01e7e3561 -\u003e 8d4422fd-bd93-431d-a97c-70b75f370f82","gmt_create":"2026-06-30T14:40:47.278985+08:00","gmt_modified":"2026-06-30T14:40:47.278985+08:00"},{"id":2808,"source_id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","target_id":"da7627b0-17b7-42c7-a029-e357bc889416","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d4cb0c3c-97e9-449f-8918-f1c01e7e3561 -\u003e da7627b0-17b7-42c7-a029-e357bc889416","gmt_create":"2026-06-30T14:40:47.279133+08:00","gmt_modified":"2026-06-30T14:40:47.279133+08:00"},{"id":2809,"source_id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","target_id":"100cbee2-f7a5-4cc9-83a3-900a4aacac7e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d4cb0c3c-97e9-449f-8918-f1c01e7e3561 -\u003e 100cbee2-f7a5-4cc9-83a3-900a4aacac7e","gmt_create":"2026-06-30T14:40:47.279419+08:00","gmt_modified":"2026-06-30T14:40:47.279419+08:00"},{"id":2810,"source_id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","target_id":"cf1f3ceb-e3b1-4d5c-8353-f0ea4345414c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d4cb0c3c-97e9-449f-8918-f1c01e7e3561 -\u003e cf1f3ceb-e3b1-4d5c-8353-f0ea4345414c","gmt_create":"2026-06-30T14:40:47.279584+08:00","gmt_modified":"2026-06-30T14:40:47.279584+08:00"},{"id":2811,"source_id":"2971fa4f-335a-4294-9668-0967b9047d66","target_id":"0e003133-7d1a-4708-8599-fc71707070d6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2971fa4f-335a-4294-9668-0967b9047d66 -\u003e 0e003133-7d1a-4708-8599-fc71707070d6","gmt_create":"2026-06-30T14:40:47.280345+08:00","gmt_modified":"2026-06-30T14:40:47.280346+08:00"},{"id":2812,"source_id":"2971fa4f-335a-4294-9668-0967b9047d66","target_id":"4b6d6abc-bfd2-48a5-9c5e-de89f278f887","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2971fa4f-335a-4294-9668-0967b9047d66 -\u003e 4b6d6abc-bfd2-48a5-9c5e-de89f278f887","gmt_create":"2026-06-30T14:40:47.280628+08:00","gmt_modified":"2026-06-30T14:40:47.280628+08:00"},{"id":2813,"source_id":"2971fa4f-335a-4294-9668-0967b9047d66","target_id":"5b84c784-85d8-46e0-8972-e7816f6bd687","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2971fa4f-335a-4294-9668-0967b9047d66 -\u003e 5b84c784-85d8-46e0-8972-e7816f6bd687","gmt_create":"2026-06-30T14:40:47.280745+08:00","gmt_modified":"2026-06-30T14:40:47.280745+08:00"},{"id":2814,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"ad988472-7d0b-4076-86c8-f14661c5923d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e ad988472-7d0b-4076-86c8-f14661c5923d","gmt_create":"2026-06-30T14:40:47.281057+08:00","gmt_modified":"2026-06-30T14:40:47.281057+08:00"},{"id":2815,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"7eee30c6-7725-456b-8b43-35b5e4df7e99","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e 7eee30c6-7725-456b-8b43-35b5e4df7e99","gmt_create":"2026-06-30T14:40:47.281191+08:00","gmt_modified":"2026-06-30T14:40:47.281191+08:00"},{"id":2816,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"791c01a2-dea1-407b-948d-3e2da8cbebed","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e 791c01a2-dea1-407b-948d-3e2da8cbebed","gmt_create":"2026-06-30T14:40:47.281365+08:00","gmt_modified":"2026-06-30T14:40:47.281365+08:00"},{"id":2817,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"9f2c6c14-12ae-48cc-a1ee-fe703cd12a1a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e 9f2c6c14-12ae-48cc-a1ee-fe703cd12a1a","gmt_create":"2026-06-30T14:40:47.281523+08:00","gmt_modified":"2026-06-30T14:40:47.281523+08:00"},{"id":2818,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"6003d293-f2aa-4c49-817a-c7fa652890ed","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e 6003d293-f2aa-4c49-817a-c7fa652890ed","gmt_create":"2026-06-30T14:40:47.28164+08:00","gmt_modified":"2026-06-30T14:40:47.28164+08:00"},{"id":2819,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"7d8f2ef6-290d-4952-b59c-a1d95af0d438","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e 7d8f2ef6-290d-4952-b59c-a1d95af0d438","gmt_create":"2026-06-30T14:40:47.281749+08:00","gmt_modified":"2026-06-30T14:40:47.281749+08:00"},{"id":2820,"source_id":"f0978b42-6f98-470e-922f-22dec2fac24d","target_id":"73336201-a22f-4329-afc6-40fb5f00f4f1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f0978b42-6f98-470e-922f-22dec2fac24d -\u003e 73336201-a22f-4329-afc6-40fb5f00f4f1","gmt_create":"2026-06-30T14:40:47.281894+08:00","gmt_modified":"2026-06-30T14:40:47.281894+08:00"}],"wiki_catalogs":[{"id":"dd61923f-65f8-4e98-85f4-0e0a0a649a27","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"项目概述","description":"project-overview","prompt":"为耳机品牌与型号管理平台创建全面的项目概述内容。详细介绍项目的目标、核心功能和技术架构。解释系统的主要用途:品牌管理、型号配置、OTA固件升级、用户权限管理和分享码日志追踪。描述前后端分离架构,包括Vue 3前端和Express后端的技术组合。说明项目的业务价值和应用场景。提供快速开始指南,包括系统要求、安装步骤和基本使用方法。使用与代码库一致的术语,为初学者提供概念性概述,同时为有经验的开发者提供技术细节。","progress_status":"completed","dependent_files":"README.md,DEPLOY.md,docker-compose.yml","gmt_create":"2026-06-30T14:04:20.633103+08:00","gmt_modified":"2026-06-30T14:09:11.174236+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn/+8FdvqrJ62ianMLvZj02elJtBUgH0Ns0veIx1WPtM9wwkxI+/XAqHLxJLlHB8wV7ojrH0+b4JMz5OewwhBN1ELEwwkQElYbXolx+YIQM0o2FbBtwH/qJtog2gIHchdNwll6Nf1h+JmY9opyg7JsQs/7cTSSrfUmluAQwFCDAvmu/tGmL3XeCzrrmkOI88h7pvsgL2niGJR0xRh4Lglcxbrr0NK4gOQ45RwQchyzpGTB8IiO3XRTcNftONnEzDiJzVODyKOjZe52ws6XblEwu77xu3aef4IAzXLIbyoTb10Z/ue/QVjfqwkoEB9u5ciW4cJImri5dT+xVeLMwEADbmq8MbYy3QkUi4lCv+02P52HSrp5PmR0p110l5NRD3wnUyJ4H3excBt4DYq/WkTlWRnu7SL4FLbChfDRXox0FZjbrSrmstSyjrqOQs0i+3DWG1cAoapA34zEKMkiP2oxZKPn+7VEJ/X8+B7JhsqroKmAs/NykYkyA78uoY/rRIZzhCoDGERQV+E21xUWuvlE/M6M9LjVSnEkBww9yRnijToD6+usihE9d0zbv3MzXNqNqaye4++Ko+2iPoV2eV7lIQXwMto7c2DhmZGyJ5OEE45X826wBdjL/sO1X1QPuglr4HEFXnds8hBA4bPAqVmgptC8bfkf03XDZOL4nlmljZN+Kip5CAYgR9K5mKRD8ZS9gGT6ieJ0jbcHoo6kysaXa+jBICwzeAEQzmvxq2JqEukLdcKXOrZ0CgeeU8SADva7E+gvKzvS/4Zrbv5UEM8NkYcqeX4k9ERuVUjy5J96C0S2GCNR5OPStfW2tKkrorTKngImbE1l0f1/FI2ZhI5sSjUkzAZIKFeXBJpA1hZSNME+E+UIJ+RvcsprmVx62wG1PlwMBeEhu/9cGBj+i+qI6uAlGdhybWAqGSSxsLwdqCiwQEcylelO7fNlSrnz7amb1JuqBfUynCEzpnlNkv6l9jioHXV/fnJIOihiNh7v6/AMwtMvmSnr/j1oUAuJQuDAW149PMRpTre8XUtulayHzPj4ZY7R+4VpHR5kmYcTNmUnCf7Q26XVU6NLlv9Qu/gvQ2TPuGOKCs579fz3jbJC6rn+mQXlkz+vQFu2x4MrUvomEqqCVV9lv7ORQqVPJuJCH5onWcX84PFxIMq38bqGCQ="},{"id":"bcc45977-c058-4033-b0b1-9fd4cd7f4443","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"前端架构","description":"frontend-architecture","prompt":"创建前端架构文档,详细说明Vue 3单页应用的整体架构设计。解释Composition API的使用模式、组件层次结构、路由配置和状态管理策略。文档化Vite构建工具的配置和优化方案。说明前端与后端API的交互模式、错误处理机制和性能优化策略。包含组件通信模式、依赖管理和打包部署流程。提供前端开发环境配置和调试指南。","parent_id":"70ba09ee-60a3-41f9-bdda-3cb904cb26de","progress_status":"completed","dependent_files":"frontend/src/main.js,frontend/src/App.vue,frontend/src/router/index.js,frontend/vite.config.js","gmt_create":"2026-06-30T14:04:44.763098+08:00","gmt_modified":"2026-06-30T14:14:52.87794+08:00","raw_data":"WikiEncrypted:rJ/rIw0gVau8jPGqKFBAsMR2XDSFypkKHZQ6YBOgiEB18etPNKW/AKXxDO5P260N8cfR8zM/FPLMKEziA2ENAEHVfReiRH5pH+fgWYT+2jYTA7RQlp0TufhpU942Hkc/ujxUhYq+V3QzFALbuwWzvx0UL8Xl+TN5xmZ1UNdZO71Qogp53zx2hXdFdKaPDrr4z+LIar4k3xztnrU6feh8nqiV6INc8alIAN875sC2qpjIyq5wlayKyIdU0M+5DXjHjuV+3QmKO4f+JccdKivcFYhs66YKXadO78U+Sx6jpT0RqNqSmB5SNJLPpp6YbwEYtig2YvqVxHgh+FtviAJo+3aiePQw/TkCYVV02sx3HchcKY17yohkf/cGQMfHWKjBC7ZyuuD2WOHobXyyVuIuHVDKntJ2SjXdR7GaQPDZaxSWpeHYcn0+Z1hICSDDP4TfjuXCKtOx01urOs4lYqZsN2SPy3LljUhl9H5uWpEV3VH/LPqTWQ6MdLG8aye4mMcCsw57e+goYu3oRkRf7qvVOAVztMhQTkCgcUPkiPfB+YdqPMMp430Bqr55/AYFsFD2GmYltN+8OgBqLdislp5mudOEF8uE6Awfn0xbNJNePcUD1+Esx+V+RGIXYVMeRXcagKyoftiqtJy7zjwWBmr/oTG428St7QGB+Yha7dSK7y6WiOZjdDUs5Jm354mpkojurMNDW9Pw3s7Rt24W3JHN+Z8iSUq9+Cr2kaQyNT4G8XaqIe0s8pFYoGeAeYcZvyolp+0ZZ6pAH3tyuVe8hrE+3+/x/dOKV5WsDc7Jul/RY0qtkjt39mvXPzbxtMbwGhahGz0xRVYJMlhMkcN/dqJI4Jj0QtNULaonjkU/joC8aUC2Vfa8MFrpfwSTVytGIrfPAvxbxMYgPvqi8KSjqjV5lpDGUcYA+DMgqLOv7mPVrPBosl5m0J5Fitt9KmR1j2OOr77AyteAWJcBvK/idJN48LdNVtAYqErjTGb16luVO1yW9sDX8VXCKzUPBQ8boXaJ","layer_level":1},{"id":"d34906db-4455-4481-9512-b29115655378","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"认证系统API","description":"auth-api","prompt":"为认证系统API创建详细的RESTful API文档。记录用户登录、登出、密码修改等认证相关接口的HTTP方法、URL模式、请求/响应模式和认证方法。包含JWT令牌生成、验证和刷新机制的详细说明。提供认证中间件的使用示例和错误处理策略。文档化密码加密、令牌过期处理和安全最佳实践。包含常见的认证场景、客户端实现指南和调试技巧。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","progress_status":"completed","dependent_files":"backend/src/routes/auth.js,backend/src/middleware/auth.js,backend/src/utils/jwt.js,backend/src/utils/password.js","gmt_create":"2026-06-30T14:04:55.151403+08:00","gmt_modified":"2026-06-30T14:15:47.981318+08:00","raw_data":"WikiEncrypted:I6KYYMxpAemyHFwJy5bny+FhLrJAxcHi9isgLCIR7jKgk+RtRRSImYeiedSZDcwnIMYAtWgsiGag9xYiTBcpIby59MhEIf69Ge8Ey272sEwv4rLKoaCbet71KAMUN4denOOfuaKbrwbXK0Y6FbehkE+pCWtq6ubo7or5Tl+PIwwX3Vha0M9C0aYlIBIXgML+2LymHuPdeYf/f+yy7ivDCl4nIRTcM9C82jpKialSDtNyDOeJKcvnuY7WboeTuADzL6A5fX/baERJkVBnSdbIynmMfReneVt5JAopJ+2NyT22CaFtr2L3C+DKZ74FDaU6iC/85eg42OZ2JgeBZXiffstckEhj2B8H2dLfxGDmQUebrfF6cqty5biCE3zW8cU1QI3+bPdfGaoUhj5xFzd437cjGI+IAkNffhuBei52tU9+6Uyp/Ym7bEGnUpxwS1OOijeLKUstO9d9z5MAs5Ip5+HVcliUeAVujyIwd76cvmbhnuaspCX23T55qAvLoTJKWmDBZaKzPE6hCpNAHPfq9b7tOLID4W0tvfFPZnzGWsZK4LhJHC3i/qAGdXsXDc/JijZ7xvhJMYqJMxcoZ4hdtAdv1YjL98AOd++9n9H0hDplAqDf638QwPeaKC6ogkEw5LCWjJFC3FbT+FvpZTxN7RRHFPVNndBrtwSEJR/6/EfA6+9lpuWMXHNhL2Hl4GsMybpXzg4+AihB6Xy9GPv5kkG1enLqgCaaQJ1blr2eb9rUYLvCkQMW+DRqPPQxfniLGGB5WuUkzxn/NzDZ++XhFvmvW6s0+TPiCNMxhx55Jd+O1ta0CeYAptKYmjSJmlT2XDRO/aqedoSZyzYc3L9gtYD4V6FRBsTtOKLyB22oei614ORfyRcALpx0q5/EeyLHYVN0UM2Xsh5n08o9+mCzjkPjSVfG9NIIBhGUTEj1i4dKxB4vM4hLk3x9i8HdfoZ6f4+3iHGqQtHSFId685Izyli748sL55omKo8e0lizEKTrYd5W2vZUviHInfD/D2cIfwRtRBEksNW/6ycVp+dc33cqX6BIN1uwL7uMBhCJyrLl9TbEaEDKPHaGmi4jx9W+","layer_level":1},{"id":"0f657e8b-77cb-4604-81cd-d3e921d28e21","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"布局组件","description":"layout-components","prompt":"创建布局组件的详细文档,重点描述主布局组件的设计架构和实现细节。详细说明布局组件如何组织页面结构,包括侧边栏、头部导航、内容区域的布局方式。记录布局组件的props配置、插槽使用和响应式设计实现。提供布局切换、主题适配和移动端适配的具体示例。解释布局组件与其他页面组件的集成方式和数据流向。包含布局定制化选项和样式覆盖方法。","parent_id":"aa2583bf-2c6e-4792-b794-1563db547d08","progress_status":"completed","dependent_files":"frontend/src/layout/index.vue","gmt_create":"2026-06-30T14:05:00.056535+08:00","gmt_modified":"2026-06-30T14:15:24.296404+08:00","raw_data":"WikiEncrypted:x3LcpLCzT0KOPxd1xeYY3c7iq48qz+WPAPm3x7MWgVl9Ka0y39BYIpkYIXIwXtcEkjLNRqcKoI34Ay7VLfvIoeNd0L9KiPW38nGEktOH2kdRoWStqgftHHDZZMeM3wTiHozP2mtq/BrgXkFbslneMaOqL0jcIeyYsEzK3XOf2IWybFopdsfudEA64erTFyD7rwb4i8M4/OQlv/7phzTi6ud+DXkigQ4QxPbXoU8Pb60EBp1eZghvTXVMFb5rlp+3kbG8uerYS+ciu/fjCScjFieZOug+uuHKkFaFYBj8Za7rmsWg02byP4r8E5yKIzSPDy+NZcyXTRKFGHYtNCtj4aueEWW2oLGYR0/nYHoeMgwdpaKxBg9Ye0gbrAr9gQvUxrzpwdRrUEUmPdp4oTmO1+y7PWruf0IGT+IA7KRfCxZ03rVNE1s6b72zwuUdEps8hXGWIMTqoYJYcYh57cVQj9l1O153yZRu3x4+GhgBW3fblpCW+bEz14xJrftnR/Qve4y83EkfHuQurRD/YlwaAXS6/Wd0aG06MsRzr2xJPgKjLVxTtAsdz5BI8ksED+Rpxs+vKy/CDOvvIUhAx1A0xnzRxDB+ZCR+u/EilCFFyqqqZyWB90BOY5jlYG9Ci2wONLki4Vjgwz6irpTnjyAwev4wTO/8aLJVBupWUqU5MB6mAreomYWt8GYTQqybbkozb5cbV5rNhZTZql0EV7u9+K4mxe4913Os4q+mI5AbzsqzM16xKoV94kRhPaiubGHpXhh9bVmMFx1DyDRVXPlu1zbbRnGMgbH1bIp5FdYRH38HFuxpXMeHfBmyWq2CIVOuMgJQZ+WFbqZPfHN+LjcAOYmhW/MnaBS3TKjqR/3lHriai1eaX6gHyHcqjUCh/6/IwJ311KB5KiG74iE+EWk1a16r+k5oTkTOUMNGX7YnwoVLs+kVHv1fnD14Rwf3OBrXEKFkNyWE9mPL5SV18Yedhg==","layer_level":1},{"id":"7f36202b-af69-4fc0-b62b-a57e415deb69","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"部署指南","description":"deployment-guide","prompt":"创建详细的部署指南文档,涵盖首次部署、本地构建上传、更新部署等完整流程。详细说明服务器准备工作、目录结构创建、环境变量配置步骤。包含Docker Compose配置说明、服务端口映射和网络设置。提供上传脚本使用方法、手动rsync上传方式和构建启动命令。文档化健康检查、服务验证和常见部署问题解决方案。包含生产环境安全配置建议和最佳实践。","parent_id":"a3ddc4e4-116f-4781-ba9f-17c85c85396e","progress_status":"completed","dependent_files":"DEPLOY.md,docker-compose.yml,scripts/upload.sh","gmt_create":"2026-06-30T14:05:12.310696+08:00","gmt_modified":"2026-06-30T14:16:33.828055+08:00","raw_data":"WikiEncrypted:0IKfLNOWe9mZfG1jVts3wxq1Ie83+Lf6EMuycQSN7s3NFV5ooa3Scq2B9C67gTKq2J61WmIo8uwzopEI3o+rxz7q0fBEeW1pmj3Z5yCZzfN7Q3gteOOQtgoQ9YkE4gpYcO2aDGkpGrIWWNjjQ7GyOJYn8FGR2f/tSJ7yy/HcDn5d2NMrcqrwu4CX5Gvyd5xJmIYcuVjpKRByATlNCS1zM5hEwvlL73AQR2eSztdK0b5QNmGctlhqTgf/bfJABgos38mVZQzbH7O9ocFFyJUbFu6uhqIefp9TJkdsbvU1uMF0d4ZiOsIuQb0iFW9suvsoVwvoTRh4P2mAHkIgDv1aQoO66lJ5hTpWGKjuTRoBV+UETV62ofFoNftmlPOqxy+OikSbYqZh3VfJHAM/gj/ehoEfHSCQXl+YPs6HmF0O72rArAXK0t95ls3PNrQO9l0dAP9L1/TwQrroJcZP2FGM7uiesHanN3jdTNXwgBD3l9gUOzOGl/15A7bXkqFfom4mPjqe6+/6cyxTQzxI7oAwU5654D+GtFcAXw7zvEMq0cOeDIeMUocxBNVpRf8SIpWDCB5fuZth/RVBCE29a0lazqZfhtrvKoROmw9go1mbNtfu0GYtrWHuz3BkMaVCGKKYV2TENB8j91AHzomcbKh1sWaWOVzi2XZUHTcZNhOW7Ob8mCxLNxbYWc+goUyiGyu6fI8rJcq69+Eq6MdAlDb8H23H7TSYkPWwvoiI4SRihEX+kEcVRlZgcxYloixMRqcfAirLSbzDrUxdyL+A636HqHK5wbrXT01hUSqhqmuXcDl1jUYIcSZaaS2GdN5sPNr/tfAEvV/QuZx8OV18PJa1uc0WRgGiX/0qbXAJL9l9rZEPkjjNf1X4S/9PNYbQ7y4YCSa1ug33vS9PYtl3eNOvb8aXrgcYnFnrkCIa/XOtmTrizRBLEyjVMUkRb20GAfpUamYhWVOkVmvOU+OtWeD85PtY9aYy61msYID323pMp14=","layer_level":1},{"id":"dbe5d77f-6f4d-476c-88cf-797b80a11a11","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"实体关系设计","description":"entity-relationships","prompt":"创建详细的实体关系设计文档,说明Brand、Model、Ota之间的关联关系和映射策略。文档化一对一、一对多关系的实现方式,包括外键约束、级联操作和数据完整性保证。解释ORM模型间的关联定义,包括hasMany、belongsTo、hasOne等关系映射。提供实体关系图和实际的数据流向示例。说明关系查询的最佳实践和性能优化策略。","parent_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","progress_status":"completed","dependent_files":"backend/src/models/index.js,backend/src/models/Brand.js,backend/src/models/Model.js,backend/src/models/Ota.js","gmt_create":"2026-06-30T14:05:22.620322+08:00","gmt_modified":"2026-06-30T14:18:01.587347+08:00","raw_data":"WikiEncrypted:WnER6MhWFG6N6U3R1m3zi9/PE7USWRBJSA4m5rdVd0roBuaFoWjKznz76Q8kOGO4tNwaCSIDcUIRQho0AHAeCEii3WPT3hVXrhQQYjEzvKo6SYnxMHFyoqyC8KkItViNO7QMqwUXCOqIqkKYJbtN9Sajekq73kPvPqvY8BHSNnqfwmaK1orPvHIjh8Q37172/jp+exIQ+FflmU+mfYsQJ0KuorznohYsQIf3qlfg8KiwSW0u0L8K99eblOKDbNN7MYtC9qf0iFzdGSOSwR4u5r4gtdCB7SAZCvwuy+HaSOgXF4oQDX+STWKFSq2xGuZf3y54WkpwBnQtNhvzIQLDsBrIlz9tHbHjMaQwU3a8HTu8JTO3mYJ3BTiKKC+jsgxGTxRRRTQ9PhQo1waFlJnCSVsR+m30u2zHgq9G3gwORjBImo9vcEDistxC+xSWMBsfJzWlXUhx5EjJYrZ1oHpgxmUGyLoTlfCJvJoNqs+vQLDuVZ6jd6juOPkJ7sanKd4TlWRy4lLmetztJb8ZAKPP6R4RV0YcU4IV3Lr/Tm0KzcHdb84aWPsI0EgbfUkJAWjCOieqWTHBE3qfwchsJYJqR3RrOuH+/OgRl1A6P/5XR2tG4/LwC5N356o2YR38E4icxdWGirKniBpii3TVWrqGEkWMsUbRenNq6PCyT/kcGEb1Mn+/c4b1Rb80dNweaNWDSOLmHQFMvwtgxh48I7NXGBAprbcEP+kwn8U6cf+oo+LDgHKyTDMssoP+fUOnruX6Eq9vx3pklQUfost9b2918rL+L5N9/tKoCpCmXHMgjuEE94T77bU7dXpcCRjh6dza/rLHJfo9rcOESul7Y0UthoahAetOF8CRzabuRNfSA3+/EgpkViiYcAqUOfJO9prMaKspC6udBaqAb8GX20oPvVBnGdehFhjW6ZNUKwhOOyBRpudc+qhvrCn14VSOV60QyhfWkkOtqy6adpmbqDfDn/boGiahg8EgnrKUin0NLy9vZH/v3RdDSgNXAhCHJng3as9wGB02Lo7l/LIlX0/+Pw==","layer_level":1},{"id":"1af0f0e8-0c53-41d7-a894-47d9cc19d4f9","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"用户认证系统","description":"authentication-system","prompt":"为用户认证系统创建详细内容,深入解释JWT认证机制、密码加密解密、中间件验证流程的实现细节。包含来自实际代码库的具体示例,展示用户登录、令牌生成、权限验证、超级管理员权限检查等功能。文档化认证中间件的配置选项、参数和返回值。解释与路由系统、前端认证状态管理的关系。解决常见的认证问题如令牌过期、权限不足等场景。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。","parent_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","progress_status":"completed","dependent_files":"backend/src/middleware/auth.js,backend/src/utils/jwt.js,backend/src/utils/password.js,backend/src/routes/auth.js,frontend/src/views/login/index.vue,frontend/src/utils/auth.js","gmt_create":"2026-06-30T14:05:25.89264+08:00","gmt_modified":"2026-06-30T14:17:38.563207+08:00","raw_data":"WikiEncrypted:uxAckj1IXK2TQH//kEdeBLXlO/kfAAqZjShpoDF/LwxjObF9jWClg1BjbeyHIZSgS1kW1/rwYWDBEsAU51nyKaMjqaYMMCeAu0tGWpZIc0izGBmzwh6bfOUHboVu8bTGN57x7Ig4dNdDghiUoJkJKQX4Ys9KTK8TqI3fswjZz8hglaQGl4NeRcIcMv/X6D2PrvWe1qVFdZ0SPTExOhFw3RHcXIB6SwncZI+aMeqX09v6wHL4Cp5stm7AWL+txJygRSaQYujDcE62s9wfDJweKf/BQ/zTEigEdc5GbzkMnf5NFxmbi8jVDO7wUEofR5O+0G7fH1Wf3oAZBMkevD8TNGju735s+O957j0f4XKsnnX9lsLIvYZtW3hwTKNBeBoujNYJuApW03clJesocX3Wf8ww8m1IO2jArAjxNy5Kz5feFkFhHiCG8MEacgHT8kg3E7ZzxyNGQ9qNkHcWapTIQs0bhq055rPjXYps6gxDBnOgFKy8B8vJf6NOsu03pfZ3uD3dNNqpYwGSW0z6lGvHkDJd2fJxAFHPmnmL4angdyPotlYsK94FpYGrRt1S9x1phZ9rGSahcTUMsqDcT9Yf+KRzNIDRSVSA32KNeKkIlJ7KkS/Wm0jraxDEOETgabNiprZu9IQc2rO+qgL11sXS2ztPP5P+se2fpoWR4kk1uiZ47ZmEOozxu4PiysCNnQaMA8ANHI+wEeZnkX2tQbrDymKi+ns1ZC695WMnYfGVqqzW7ztwv6hcCxyg1h0cCTV85FVN56EYr/FayPkYHDGEZZVV5ZUDvhVDpwyR3SbeAFQjsbJ0kKXLG89LTiuNzGgRwI4aA6bxge2JglaT1f+mtyXbZSnfdajBzphQGhsXB18VE2IXqwfYJigbP5F/u+e6mB7sN63cqVRQ1ydNmvawS0ojJpoUdPJp746BGGnKgHcDOaskuD4puwZFDNJVLFQql+zdoIL74vkQKXIqKhlm4hvnkOFZ06ODxcJWJqQNMT4gzixw0eo6Edc3t7Gz3J/XGJn+Lm4JoYBdAk0PmDWtQqqAjKqm9ftEqhlBb/nAlZxetLWvyg1railkNORM+louiBsqTKmMqeuxFGvIMxTWvlU0z1uFTBuzUgVEKqUJRQL7XYgPhEQngiJN01Bm3XHt2zKUINah98fqoWiyyAHyX0v/dIbaMiyXnzSIZLIBWZDZL/N1ypvWw8ffozNBXfZhGhoE0OUp+tItqNmnVsYGvwtU1dFJK3ZuLGGkiqACmSRg+oIqURaokDzn4B10iFNXdloxmOHr7bgSoCjlSjyXfECCg+t9GlrWtFGusJSHzWiRdg6rJ9Rd1iTeSafPGd1AD2mZ1bTOdXmS6IT2utJkj4CIc2gIkIpnlTql1NbuOfDA4NTL+t/649wrNxdl/tfq2+8LlsB48ND80XGMdAuipGWEYynvogLDZguqmDXtxMo=","layer_level":1},{"id":"8f0760f5-ef8b-43ef-8fd0-7c6d1f693193","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"侧边栏Logo组件","description":"sidebar-logo-component","prompt":"创建侧边栏Logo组件的详细文档。深入解释SVG图形设计的实现原理,包括渐变色定义、阴影效果和动画过渡。详细说明collapsed属性的作用机制和响应式布局适配。记录组件的CSS样式体系,包括Flex布局、动画过渡和响应式断点。提供在不同侧边栏状态下的使用示例,包括展开和折叠两种模式的视觉差异。解释无障碍访问设计,如aria-hidden属性的使用。包含性能优化建议和自定义样式的扩展方法。","parent_id":"eb78ed75-b786-4b43-ba43-58a5ea8a23a6","progress_status":"completed","dependent_files":"frontend/src/components/SidebarLogo.vue","gmt_create":"2026-06-30T14:05:28.622668+08:00","gmt_modified":"2026-06-30T14:34:09.996181+08:00","raw_data":"WikiEncrypted:fV4HuQ/J1++1YCiBadzlA/Ad9WGt57Xw0P0O4e1aWBZ8j7ewAMLGa30PoRyFOz3WPxWhYzFV771iPkiUIngbYLg/7p5O4HeDzmBW51nlwAWF6h03zUwo1BVzYo/fjr3K/vHHffvWiWcvf6+/Pi/zO1p95ifW1RHBzkGDc4cbtCFnI4TExB7L8RgFPd4xt6LWCmL98hBAGxxSmeVmm2WQY1xGJjqXhRpxokLo77b3Ez1EWub03MklHAlEi4JLgZCXeG0AZMzGl2EApA0orVb+k1nPHohU/sYPxOP1g77oqTo0L6eRrJYqLVzXM4dPj6cJPfoiL1VO/2KqEXmJqEEcvA8tI8Vv7fNcUxexyGaVLP6NrOdFw7GfunFw5t/QC4hNv3P7MI8EUJYJ/PidrenCXzv2FJL9zWw9IsaJbDglurckMqQQka4/AwPlhiPqUP3v9KzvsSqKogDiv94Gx6K87tIpDsodProyn5dx5GKnJIQRuNQYX1lpPTVqMQ2OlAD5KvAnp1VHGyVMPixJgwRLl/SX/Y/mmbAA3QAZC3s3LJSW/Hh6OogBVuThelQoKNB2/rPZ/yEgXcFUj+H9At4yNojzuBdqqMakOsrfs/1WsYmEsUXZ/HgLkCJR2T6jL0BiRhXisXcj5fbzxADw26kbKBhW/suo/JwIzITcMgr+B+vwdmIYlROk2zRWQTcSVdtpdouiZLy50KNTRIQYgqiiE7nEL/p885dM13alTVH7cRjdXV993ONl6tRfBQnS9o2VAa9B/IoHSXQjblj73awUecvCir7Ougv3SPoE8GPBJakIDBiVOGlcooQQjVelDtXjn5zyuz6cLPIZF9rqakHJT7KHTZrM2+Wi+TKoGF4IR0mEcinmwEe+JNRIkItConCqwWx3Ekz+kabb7E1CpVm1yA8794xHHJtDSak71A7IL0KO7cUUC0tFTuy+c5W/vuZfoZX4oiO0lX2SvlQGYkguIQWABQjuuCjerUkGgiScVohUoSA1vJVnraaSNsC3edoxL+W4+juGOZytBN0HGZS0U6a1asEka7fODrK/yhDNJ2XKz7+pcu4DwgRtUHUM26FEG84uR2EBgZRiuI2c7YA9Ag==","layer_level":2},{"id":"105cfe1d-aeeb-44c1-ac3b-6550f2c7a307","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"首页仪表板","description":"home-page","prompt":"创建首页仪表板页面的详细文档。全面介绍首页的功能布局和数据展示机制,包括欢迎信息显示、快捷入口卡片、今日新增统计等核心组件。详细说明首页的数据获取流程,包括getTodayStats API调用、数据格式解析和状态管理。记录首页的响应式布局设计、样式定制和用户体验优化。解释快捷入口的配置方式、路由跳转机制和用户交互行为。提供首页组件的生命周期管理、错误处理和性能优化的最佳实践。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","progress_status":"completed","dependent_files":"frontend/src/views/home/index.vue,frontend/src/api/dashboard.js","gmt_create":"2026-06-30T14:05:55.602204+08:00","gmt_modified":"2026-06-30T14:35:15.434226+08:00","raw_data":"WikiEncrypted:l84AvQDvM6QBXs3c27I7iRN2eqIKPqqnLN0fpl6W1NXbpSYLO1ugdN9q3vfdxcOimx9t9/zu6SUc26bwQ+elEbS+I0PRYDRL4shhpb72Ma/Ng8alFtrqEXILpNlDWRs9AoWzQ2KDmoixk2jOewMEH3JllHtJ8DUYUZNp06dby1l7BRtvY2mOkugkoAohYAjj4QyuCm4GXiALmsr7NFR3LC3O0kqbZE21xaDZXflITmtjSkBHJVQtkVH23ciBJVtJx7Co85atOo33DVRVlrOhEJtgP3suOSOLawlRAo6EcizG7y3pDIU5ypo7B8YRrtllA0l35kDhk3pyDTN1sj7bajT9y2fIinJVq2T/AOLyueKRKMFNLrzr1chgaXuxLhiVRpeHk7C325h3AGYYJ9+6Xtr9kmA5H4Ebjk+2sk2YLVBogzJelsdYQqCiBDGzCxN0BAVpEtw7J50eZ+XDVbOY7JUC16j0oiXukJycIku1pthhJUplqc3HiyebwYVuxfxWdM+2IV0+/ic+3NzpGhu19jpGFUZnSD4NLtTW6QCHZMn4FcScTwzn3/5byoDiy6M6RaM3JFXc1XjuZySnsFKAO/Bo/PgZMmoaNUj+gHQTBOhFflMX2DlPEpj+q5NpHNyY11SKV61o7RWYW8r4F9r22VlfvDnLPI2PEvkX4bjKEBeR3vYrx7FpVdNWkqK9JpVWewynEwDS7csRjVfkc43fe6xYto8zEDV1/AjQdPOhSQHP3UOztX3pS7sBLJq/2N8sWJqG+YrGE6N8mVAmjm4/i1jR1vP9HaW3cqoo4fYDacBXqFkEIyqDicgLUVe2+pCWp5Lek0ENTV1TmLovw2a8dsooOU6GQMozpayiXhtI+WzwZxtXAFHTaVyHFJiWYMOOH1xDFV/IfD54CHmfO9/W/bjOZnxKeS/jSJygbW1/5U3jX84UX1n/gqGOsSnO4SKJDEQbdK6PB4+9ounpuIITKPmk7KMn27m//tj8HPjx3W9lenipUy68iqVbiEUqz+/Ty0SFO87eWJGkvXE/HqepzBh5V7XvutH4Y3F0V+GKn9MYQrquYT8PrsUhfk8cZdXdsq28aDUYUl+B4Q35nG0gew==","layer_level":2},{"id":"de69fb0c-330e-4831-813d-94fb958688da","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"快速开始","description":"getting-started","prompt":"创建详细的快速开始指南,帮助开发者快速搭建和运行项目。包含完整的环境要求说明(Node.js、MySQL、Redis等)、依赖安装步骤、数据库初始化过程、环境变量配置和启动命令。提供Docker容器化部署的完整流程,包括镜像构建和容器启动。包含常见安装问题的解决方案和故障排除提示。提供基本的使用示例,展示如何添加第一个品牌、创建型号和进行OTA更新。确保内容对初学者友好,同时提供足够的技术细节。","order":1,"progress_status":"completed","dependent_files":"backend/package.json,frontend/package.json,backend/start.sh,frontend/install.bat,docker-compose.yml","gmt_create":"2026-06-30T14:04:20.637065+08:00","gmt_modified":"2026-06-30T14:07:37.615397+08:00","raw_data":"WikiEncrypted:qfgbutC7oyxR6nMxrwk1ODnNMBEQ3/sG78fQT1yXWju83LC7H/jAM8CEAvWT8huE5OClmQiIfNYNxHQ9s7RRS4I2JpxuOJTz8eCWMUZ1Uyzl3ct5rsyIFu8fuwdbAeggGoVlXxfRcT82rVraC1rlaQRGO5kgcNTJgIeZDa7KIJzJReW1AF2gOcg85NxmyD2QBPU20jUQG8tQZgyOekDGEvFa7bKU1UDQLDNO4yVWuGIsKgfV/whNAizKl0ZZaZ+9iWM2XXBDA9sLrXZQD7fyzUl3elNmWx830Y5ju+KudGoo33Kt/Zp5fVC96xUUwKGcGwH9ptvzXwJy6/w/sF3x8vbGuLrEvc3DHTShxmj7sNOi9NQlkBUDWrQbl44wQC9NfLJYbEHG5mWaT3bFotTFxn/bxdbAce7P9osAkl9SDqVly0X70YjXY4Axe0EdO80cCfQwynIN+uONKc2K+DcTIjJYXIK+dE5l1LUWXxSAWbsgxjnTgTeRqS/RJ7U/LwV6x3M+O42mw7d57H8byAPhaALheFipMQM2Xxemr8LmrCaU/OyB1Zt7NSjO9icOjS7ce0KBJMehTWPQn27B6NBZIwT5MvbL+9Y57TJzYRoPUaywWNeNl20CsE3D7BPdkNz7cT3NEYSTghAfeU0vF120Z/28Pq15ZxBRmIDF6obYSk8NJLSGbOIxYm6QWdJ5c/NnktUQ5V+LKFEgPFSF3HFzIEpolqTpuA30n3Ok0tdZgrCKqqreZOg8uMZPai73OsMcEfntY83IyMpmxd6KNmaZW06B/uk7VOvC6T0wpPksXFRSXonlh0fgnFt4o3fusophHFTQTcpWeBSacU8y2fSx8X6q2zYQj4H/czf/7ijEyOhGFRdm08Eir3Y7kYYFI8hQBfVdDOZ6gFQ5HkQME0ktc5JOWoaqNYrVpVidXpLQ5YMhsh4lHao/nOxWraq/zC3qxrIikrUW0zchTI/h3Jd0fDHMhC2t+Lkbztk3oZ2oCcejCqLBcLrv9ZfkdOxCD+Z4bOao7gjk7dTngaflTdhV8wLJ2RV5IeB0U5YTPVdBfo2VZ3Z5lwdr2Uul/0kxsFfvLfAHgvs+X4oxWle5XW5cu8PoSaCj/pLYjR+/CZ7mtEZLCWj4gas0xmYzqylOaFjIk5cGaAQiW9aRrb4nL6YWK0IH8tum/o61yMkXp4rm6cC3lDsToPthqlHlAoziWtZLPsvc9z6zXUwW38sIA9pz1Q=="},{"id":"5a3639b1-98bc-4bc7-a346-91ed56edd2af","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"后端架构","description":"backend-architecture","prompt":"创建后端架构文档,详细说明Express应用的架构设计和实现。解释MVC模式的具体实现、中间件体系和路由组织结构。文档化数据库连接管理、Redis缓存策略和日志系统配置。说明认证授权机制、错误处理和请求限制策略。包含API版本管理、安全防护和性能优化方案。提供后端服务的启动流程、健康检查和监控配置。","parent_id":"70ba09ee-60a3-41f9-bdda-3cb904cb26de","order":1,"progress_status":"completed","dependent_files":"backend/src/app.js,backend/src/config/database.js,backend/src/config/redis.js,backend/src/middleware/auth.js","gmt_create":"2026-06-30T14:04:44.765806+08:00","gmt_modified":"2026-06-30T14:19:05.642968+08:00","raw_data":"WikiEncrypted:N3UbzwGjCC3xD6BrTM0cq8Y9ccVoDb9n1FwE8c3MNy31fwp7itn1eN/9SBNHQuzqn4Z/E95mV5akFaXhbd+x3Hbeb8Lp+QkTMOKfZNQyKojFvMb3nIaA+mV48tDXDWEqxrlhh4JpRydgTIGrd8n1WR3CjiMs1OtPA6kBQSdqoDuuhqzpLQF8idz+njTnv94/o/48fQBsI6bG1frzakIYWOtViLMUk+plRMY5j0337M+sVWAzgVAFVqgiBfjrTGY6V5DqUqCh8xE5q7CAvBRDT1Jmo2M8F60+ejp31MVUAg6xRp6POj/W3ik2qnAYOVweqNiTiYyns3uz+8l5xceif6+1JZOepuVFsY2Temglybru9Gz2+d+3AJpuvKT5LjJnJ+BMF0P3sGW2ATh6rsJJIu6u7uWn4yr6rsZZYNqdEQW+qWwkT97SWLMa1xtsuNiR3+QKu13kqysVkXG4H/394AJwDoljAoFMTzOsbUlUkY6QrOsx6LagWGbhXIqFrRfDWnSMkE81wWy3pcgFETEzQIaN+xAjV/skriEvn2clKJ6c4DNKTiS/iLu+5T3UPOXO2kbKzPwVqlxhU0xGZ1Pq2RodxcdD2f0abxDz3g0Wx97q+SQUyHL/KmFznoAq7YvBwKc0bWAQXkc1FvmZ6XGHyxoO2JyrbzZOMumcj3gZ6Zxc4nUPXKPoKXDL7unysWj4JDOcJhSB+hGDKjckKvvLLeDFShiGN/JjptjQMBiU39yfOom3FOP/vM/S9QSF3WNTopdDHkSmlh7dZWtHUE/z4TL3fYmzT3iFsTj4yjeoP3+Yx51P+Hz/3jrBPpT92jRo66eNc3GuySe1DeaXPT1YWdIr7S3r5T1r/ojXI4tcYdNj/LkmB+pLLsIvvosu/ETHXLP4L+Brr+mJWjJGSSz7IzsH4UlQFwh0nY8tbkO6UsTnmZY7PQhOHvuLVCOQ3qaLfKU2LxfMTm8oDj/lbOxS9/1KKy/W99UmrkMvhardyA1Y8SqsnkPCXZqFkn7POOgOaIY2vWUs+L4PKd829ZApvZMyukooOwm4NhCvWOp33xo=","layer_level":1},{"id":"779d6806-96dc-4c97-8cfb-15a3d7855bd1","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"品牌管理API","description":"brands-api","prompt":"为品牌管理API创建完整的RESTful API文档。记录品牌CRUD操作的HTTP方法、URL模式、请求/响应模式和数据验证规则。包含品牌列表查询、单个品牌获取、品牌创建、更新和删除接口的详细说明。提供Zod验证器的使用示例和自定义验证规则。文档化品牌与型号的一对一关联关系和数据完整性约束。包含批量操作、分页查询和排序选项的实现指南。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","order":1,"progress_status":"completed","dependent_files":"backend/src/routes/brands.js,backend/src/validators/brand.js,backend/src/models/Brand.js","gmt_create":"2026-06-30T14:04:55.154207+08:00","gmt_modified":"2026-06-30T14:19:07.600812+08:00","raw_data":"WikiEncrypted:hJ5e919a6La3vBIeYsDd9H+qoMODEBAlmCzG+cWkGRu78NaFDIi9qITlXW3zUicltUTnty1k0aVuLDmUbWYsq2DQkP84kMUHXEpA6OcQtQQW2b0L3hPiCNJb4ZQrqvo1LXEBjkme7wbSkleJI63o/kaE8846oeYE4AMgjWxEbV54Z95lxWs7OlwO2sCsNbqRc5wR/o7amP61MJ/lKWn8nNLrexqAUu50qeYGngpuqV3zogarV6D9+HK54itBZ/ncQ/+9a/lhzLkb54iR5IcRDOqaVetAPcB7FKWOIWyMYRgn/APHz0vu/Ow/jvrk2IP5VdQBYSzAFPe3odHJBhc53XJToyo3J/RoBJdKTAdLlVolDpTzg9VKOFbCd0ua1syW8RDmRR8CDnzPdnm2/KJn2+vYfnnvQvdbENcsjaVhdZ5GPJSf43fyJOJLXx8L2QjtqQdv69AtBDyTBsnmFqRUG6WKDHnA3WtZJZQ796EgvORbPOAecIhV0hLlvUyUJBOrM4v2ZMmc5RZ+ukl5ruR2PxQRNJRVk5f8BDNoylYtTWow9gb4r9ii7/TP7NjRI37TxCOkatlA10cnKD/24jXu6MRyocnYPVbHAT72NR7srRVXBcqMwlwiK2LCPVG71hlvmt7NiIB+pNCWB8s+qWHNpfV4kmmg9+458bGJdycQgVa4Mb42lqASsqANfZRC0xMGO4JM+Gns7T3vtPmAqjDJB8tZrkZ2p0dnvSBGpkYiLm68HLUpIXD2YldMCbY9ymtkJB6gBWWBUutBXeTQ++SyBn+qRICWqKCnVWYK0rfrYWa76HfOU0xfjpR9sVWFqXvhtkMBd67yy00PkaTUrvIFUq769fpn6KWDb99I8cHWnLIj556iiITHC7TpEqPSdbdkvssbuU0oj7RqG+UAFQWmP5fu2c2dBkaPoaqTfzdrJ4EufHQc+W2V0jZLzdrztAbbrXMIlcSdnIVZcM/yV5kGv89D64a9AfWx3h+b4uVFgMRhqFlACt0/36RwQeI2ZJTp","layer_level":1},{"id":"eb78ed75-b786-4b43-ba43-58a5ea8a23a6","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"业务组件","description":"business-components","prompt":"创建业务组件的综合文档,详细说明通用业务组件的设计理念和实现方式。重点介绍侧边栏Logo组件的品牌展示功能、标签页视图组件的页面导航能力、密码修改对话框的安全交互设计。记录每个组件的props接口、事件回调、插槽配置和样式定制选项。提供组件在不同场景下的使用示例和最佳实践。解释组件间的协作关系和状态管理。包含组件的可访问性设计和性能优化建议。","parent_id":"aa2583bf-2c6e-4792-b794-1563db547d08","order":1,"progress_status":"completed","dependent_files":"frontend/src/components/SidebarLogo.vue,frontend/src/components/TabsView.vue,frontend/src/components/ChangePasswordDialog.vue","gmt_create":"2026-06-30T14:05:00.059997+08:00","gmt_modified":"2026-06-30T14:19:27.855603+08:00","raw_data":"WikiEncrypted:mHLzoBKW/ak+KVdbda4A2f7qh44idx3e5sYOKq4y/WJWBVlKxvfsgrfR5kwEoK+5YZtxFpGvHzwX4IOH+DawEmhTwQMjQgMBCcPS53RmGaHOSgU0nKq03Su0/WZVgYDJfX5EkUz6h2rTPEOvq5PXUInOMgSH6UvRdohktfTAFkzFd7S1FTK58sVzdGQozq7wI1koDtSWO/SNpO4Ee8fMt6DTqQ90rTnMbEPKLcOrCDgBxPksoF4AwVmDiOWy6KkShCEKg5p6r82/HoJV2qfYNRVng+LVbIRQN/zKlyM4YEjleh+mVPfQG9melNixR3cJRG3orSswQpSogfZRK8Bo+TO29dCbmXI9Mg5k9sGaNAq2jbK1UKrydX+oZeXgh1B5BSCmOo6BWUzJqDsP9IX3WZ4YYVL08TTVYxPFyLEuNn34DiKMnez9L3SfJSnMIoqN7ClMC6kQ9CccZ6/1deguTXM4M/nzN1SSJuOFkMC4DjWRStbyZPfqHkfhcEG+DW7eaIurD4brX7qVwpAIDEp+HrF4YB/rpvFHpbpqob5nWRmQN6HzhmXSIBVTDNlvO7PuFOz5bARPKE7RKFrgOc2cFBVLCny0niJuaZXDcspCDEjkKMe/W6KijLPgVdFJ319wQi6WwIpUYQEwwRICmXrDU8UXRluSrnbmkI46ju45vwGnf4ZkUgPQhrtrxxqbDjr3wHgQtU9m0G4JzNonUKrVsTmom54Hx2VWzLxdXVlK1T8uszT0ZI2wtEAFmM+maRys0ZM/v6yzw7S4lK6LI76u9HmAWuPDpalJjO66kRoPPqFHGP12HnREYBCpiyzVDOsMKLP+nC9RJxVJyDqINcMIEQ/cvMqQYtNOCoV8uC4xqdOLLw69jWdiOw30qNnb3DwC64POHfTIjLTuZLWorchvBthVfmMzwqrolaR3VHUVgR/m5h9XEGlzXTqA6znkpkA1TjOTmf6YAAGAQ+Zt0IuWfA18ulyPt6eyriUUPdL4oJqBk5XXy45O8tb73hyaJ09bw6OBSdGlDdIsNotjVXwyfFkMEutcpmMT0v9MKTugGcSfEHSUwMnJkFKSB/PL+vn4zUky0vkjG6dUA1kerjwmjSaNZ7vkhCbbP8OFylL15gHQfCdOMb0AOCZTdEob06yof4MSnaXqMF6dufxLdbwOuqCfJUkhi2qwT7TxlBIB+CQ=","layer_level":1},{"id":"f96081f7-f508-41e2-bd45-a5b36a1ea114","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"环境配置","description":"environment-config","prompt":"创建环境配置文档,详细说明所有环境变量的作用和配置方法。包含数据库连接配置、JWT认证配置、Redis缓存配置、S3存储配置、Meilisearch搜索引擎配置等。提供不同环境(开发、测试、生产)的配置差异说明。文档化敏感信息的安全存储方式、配置文件的版本控制策略。包含配置验证方法、常见配置错误和解决办法。提供配置模板和示例文件说明。","parent_id":"a3ddc4e4-116f-4781-ba9f-17c85c85396e","order":1,"progress_status":"completed","dependent_files":"backend/src/config/env.js,backend/src/config/loadEnv.js,.env.example","gmt_create":"2026-06-30T14:05:12.313659+08:00","gmt_modified":"2026-06-30T14:21:11.825296+08:00","raw_data":"WikiEncrypted:mJFb0eo+82adP8NAeq7d4IIa0ji7BfhWd+tPu7r6OpR4X+XfqeclnD20MHCexQtgFzeY+udCFgwSLYPDydN5R8BNpcJBbveVhePMQWOVKGSx4DICe20Yr3Mg9nlLB9FGlGjUc9Y2pTff0xrwHFSfFG9wRb0k2bAg/j1gbq1g3pZxabmYCBYxTPF026U732n/Ksmolpy1y/q6x9P2vurlaRpr34CvTfVkEYogh6YTLfmAhzHfbr4sP+eShuvQDEHYmhRjzMwhYz18NBjgpMKUbE/pndwBftVShR24efIAv/BElGFzh4ocX9Ye4v5tKSBg10FekOLemFoJ8pOCG+BGhsRKs9n51fBFLOmmhXaTFC3SHhG9AITLshuN0sb92me0NMFI7NrhNuNKzc2UHDUgDyF4Vafg9YZgHju8PxlEwOs1BaPCOk0xYsp3DW0oVsG+AwBQvlvriYibLy7tghBmipp4c6l/pSiJCmGjW0JwUul9lVwbeyMAjsVBJp2ZXwzI9IKB/NXvEH/JyDft3X6uxO5VqdujNwKyJ8t8zvrApsSX4vMXO5+2SnxXAGudlLDTLmP6ozej4/197Za0ickFHWFjLPGNZDXv3dGVJfV+YiyL6wDXurvpHfhX09eVn4DP5NLwrzRsggp5XJR9ojLxzMggtxIbLdbx4xTBkRXRiJflCuRSm12Jrt6+U42gs8umQx0/uQSOJX44A0jxVep0MZK5QMIH7oq4jDqBV685QyNKxM4+IDM/E7zWDh9V8U92lhe3mOm4mqolgFJPfEzZaFsi9hOqp+9ZaAPAlXj3DJCXdSDfa8hNtfgjKJ4UgqP/2ESnAZhrUisYaQnfAMUBQKau+qwn+CnUsXOKcJkQNSoaXdvyBbAr18gNn3wK7A0viPPO1OCMf9E0Za9ghsyaTQ0q5kZuNukjWX1iQbG9QZ3TTkxZOzgSpuC9sndRmv6DY9AWL3TaupI10Ec52w4hOZe9TAcM1iN38mHBSSAf8r1qp1rGeo4bV3v8ONIokVkJP/lLXskyXy8PWwyNyN6yE1CfFAh5xxnrjnHNHYgYz9c=","layer_level":1},{"id":"92f94141-482e-499c-bbc3-6101e70206ff","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"品牌模型","description":"brand-model","prompt":"创建Brand模型的详细文档,包括字段定义、数据类型、验证规则和业务含义。说明品牌名称、描述、创建时间等字段的设计考虑。文档化品牌数据的增删改查操作和相关业务逻辑。提供品牌数据的示例和使用场景。解释品牌模型在系统中的作用和与其他模型的关系。","parent_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","order":1,"progress_status":"completed","dependent_files":"backend/src/models/Brand.js","gmt_create":"2026-06-30T14:05:22.62391+08:00","gmt_modified":"2026-06-30T14:21:29.097262+08:00","raw_data":"WikiEncrypted:MpYke5d2PXdqtxI+drCrLlbJ7FPFod4dQS4C2jIEy1Vi+RWBmbRp3cvvlClyElpjY248hN/8uxj/oZc1cBilbx0tRCgx4EXGhbWT0bKPV9CClQk3EyAIvWkjw2qBl1GwoIZaoQbh/lDf7iSv+CjumSc5MqVDv7FeDuoB4BYvqSFuX6/sw/v3wTqRwaKX6wLQyS1j8HSrt/0T9Q28vNhc5WBAPNUs3PzlHBfFfWZpG8H8gVCRsqX5tOhfgNie/doVHGT9Gl74pC4sOjSrm4gseL4GAP1i/34P2j8wpFWOK0PHIrEDdLFB/nl4AmiN3z3GOflyzR8heQlB3L74kyUKX3oVFyL8nei3KJoV9pUbYJJztTdKAUC4USkpOWF2LYTf166CAIIyLuvpGUJmRkxZ9T6fpTbIZ0tWkizC09RvdiaDW1+cjDQhj6Ij23KebNfpMuYYTUkiKJPqASQ9/+A7uNZ43ntzVnopgTzXzDun3QBC7j4m+iF5DLSWdqS3XyRpanF50CvdYz5Px9oLvusDbKohVWQ6zxGf+ZZTXOL5+eTO/qQ3TKNuJA3mkzSqU/zzIodqLG3oFObroU6JLMHgFwXp2OggflULj5njivqDgj90U47CQExGFS8JnCl0dPuxiblN18wZf2ANfUg0IvnU5rAmQ/gz+dtummkOEouqZxCglWdsNKdTIkRWEkDBecIe9oGWuMX8RiWHLnL/Y3EvgSPRu8DkD/n6hbQQPpIrGV7Jf7CIPfqWg8/6VZose+vNR+n9JFdOEU7Q6X9OK8lAsw==","layer_level":1},{"id":"1e3d40bc-a833-4f35-891c-9dd96f09a1a3","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"品牌管理","description":"brand-management","prompt":"为品牌管理功能创建详细内容,深入解释品牌CRUD操作、数据验证规则、缓存策略的实现细节。包含来自实际代码库的具体示例,展示品牌列表查询、新增编辑、删除操作等功能。文档化品牌验证器的配置选项、参数和返回值。解释与型号模型的关联关系、缓存存储的使用场景。解决常见的品牌管理问题如重复品牌、关联删除等。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。","parent_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","order":1,"progress_status":"completed","dependent_files":"backend/src/routes/brands.js,backend/src/validators/brand.js,backend/src/models/Brand.js,frontend/src/views/brand/index.vue,backend/src/services/eqCacheStorage.js","gmt_create":"2026-06-30T14:05:25.896897+08:00","gmt_modified":"2026-06-30T14:21:25.623188+08:00","raw_data":"WikiEncrypted:MpYke5d2PXdqtxI+drCrLid0YsRsuFzxrKFl1UH2EDILD+4NmryAJ+q2oYZ42eaiz44GIk6X8OFlUAZ3K10FBvMN69Ne06Y6iVCy+4xZdAsUGmydXuI9LOupHeDUaC3pvkOjqp3EZ4xOBXToKexD3sJwOHDJUYBWddck1pKB+BpUmpIGWGulvtKNd7rUuuNXGGexSoT2k/+fD8cfS96290Who+jupUypdef/VVLQ+SMm9fS7HoCYxsUJ9tvcR9HLpcihb2gc09v40WXl2RSPF2VOKqtBB6T3R/UTcCJV4p8ISn8geesslxEYyvMaCyHxZrZvjir3/r7oVAAh3KAOE+Nx4JTX1AQd1M8iUlzVaup2ZB8XvjcIj9/TKMdIL3PhNerpdIgsAQ8lwCNMPriXoMoZx0MzlaX5d0D7vEbujs1W/0zu4BgcnCjJtUdvCB+34DyEDjZVd5vEPpMDJyN4KZq0V2zz6XEIXr/SWlY7yRweOhgMAw/2UmV15PZmnHQQIsspcBtED/4LZY8sngC1o50KUM+1PQNQamViqAlGCHXBAR7Cj3E+QvjOBSfAVtc7OPeHToJFTO7XdM8xdMMjkRCdrmB8zJ6XSDish3MLo+tv5fNdSlOF8ZFqklGbV+DaphtWW1k3t13oFWP+IjkbW3xwsA8akuLoG+cXEctO4Uq0VFfoiwI8sfioOV/hJo6y06miVzTDvjdjk2vZ50V8j2qsw3eXt2N4bX4b2I/BjLZzItZdmHID3ExYBmo+VjPOmBXQGuZdhG3wTGSRtD7Phhsd0G6umdHsRVF74ih8xOWkjG4+8dj9F6mnmWm7nn84+bv+Es0fsCjoeqagYkgvIU63p9y/FEcjSTEEdHqZ/0qKXA8S1xyEHzPMmW4LjN8jwyNryVJPl2LOI75aXNvdeoMbfPs9qH5u6SeX8rw6TvD6XwAb28N8ehKfUVwJFEY7PkCn3ROnsjFquwaBd+DjPpH3CY7TdpGqGBuP5a+0z72JVUfnjXKn2oKTR35QRVAhdnXk/st1N3eu8SXBHgx2XHzEB4JAnu1nWqNOr0d5Mn9OVFDqOJ6GD37xh0oQvgefNcxCxgURt08010ZPDFx0TvUMLh2g+plGTyUqDgekPLtY93lC9TEtV4x92OjUub4JRNaGBlHVTUaC/pi2JUS/QYcfOPvjYMa7TgyxylESgrt7jf4+lZOJzAOmJSKScT22E+S1o0omg1Imd7YyAt5QFJwBS8Zm25xjGROuORqURPWRYfToJMKQYjB905rLMlW7JS8VHBVaqUp6R+S4827muvsDVj/opXiMkSLPllSH2AwfVfT8AASFSzz66kvjkmYy","layer_level":1},{"id":"727c25ac-db22-4b34-9486-6fd6946f64f3","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"标签页视图组件","description":"tabs-view-component","prompt":"创建标签页视图组件的综合文档。详细说明标签页的状态管理机制,包括激活状态、关闭操作和重新加载功能。解释标签页的数据结构设计,包括标题、路由信息和缓存策略。记录组件的事件处理系统,包括标签点击、右键菜单和拖拽重排序功能。提供标签页的生命周期管理,包括组件缓存、内存优化和性能监控。包含标签页主题定制、图标配置和动态内容渲染的最佳实践。解释与路由系统的集成方式和状态同步机制。","parent_id":"eb78ed75-b786-4b43-ba43-58a5ea8a23a6","order":1,"progress_status":"completed","dependent_files":"frontend/src/components/TabsView.vue","gmt_create":"2026-06-30T14:05:28.623089+08:00","gmt_modified":"2026-06-30T14:35:27.886573+08:00","raw_data":"WikiEncrypted:IBinykhefIyOgdnJDAiniV5kOUee0Xx6UXvrXwmKcQxxhEd32Oxf4/sXerzkozjdwLiRd78FiQyVCsTFnq2ZoJjCPvvphk/28Fyp6jERf6Sd62RGVBf+T/ddf1qyYMGlXTIT63FLUN8lGKH7HE33fo//zcEAInyKuCfcAnUKtGhK/6GYF5OQOK8iu3hTREMVLLGnL+nviHGzi/OieF9xzRK6Q7v1xKhCFPVw7G7pKGvEqIAXkIuI+gtduk+6amkK8DTLEeFc7kADsRYiiGxbnbCwDskX4qqKASfyrXfwkcH6erxtW03zOc0xXxRooa98xza6bb0a8AuGRLxpr39QpjXFHHSkoQOfBajABJjr8Dc2g4/Owp/iz3w2DmuHDD3n/B/iWYgr6mvt3RyCN7WugYmLcAHydpYFY03KrqgMoG6Z++VclV/+iLE/hhCWVXZwOvZExFa1/Nm3L/kQ+lvH/Ok4DwK2s2mjZIJfjmMEbvvPBDip57GwOAh/DEUOz8xDHSc/z3kHBhO8c2gfI+QxQTDodO1T3sDQNvDzNXnOsiGHEa8MFXwnRqOOJdjXpI/V0SeRqH+VF2QLUL0H0zkIRmUfKDToJpYdryAc+g8C/437bvmIINo0hk9dNxyk6OJDyil3WbGVKZty2trCmX+SSkvThP1sjhsXb3A4lCaln+NxaFM2pwSzOI2FrAI/3udagiuCFzkHXVAbL3kW/sByyca+mxh2x0XmZnIacn1rN3mzAbZQw0GomBv3D9BdLhokGDFcRbw0wBF8/CKZIQ2LXwJSliiHSUIxZBPFwOlfuDQLwPZwafFjFgx/iVezVLOrtprdilrMg1icikSwQ2uomd5k/4o4X2RhtHBwVEBnng/I2OnKpp7hx9jW6qnRgl73qL/weon9zfXHb5cIhwqTENIhOakxfLNkPuVZUK+yV5j8hhnf4TSFJur40kvfWrFH8ooRZjxZLVRGEqph6t49E53tpiLKAnc7PCkGqlVdBstHvud1Mi9WyXlP8CHOoDFinYsPol2IYws0Wz58mTUZesjH7Ovtl/r7VUGNRE+V5VOhW3H2ws00vNLRzrCQfstfuwZt7dDBHlJziXNvdgav+pfU3tAHaonl7W+6IJAygI7B1LZ7oTRxEV4fl7vl2G8suLJXZO7UsiezZ0gxqvkzvWkebI3amABggi6vI+xrlr0=","layer_level":2},{"id":"c8151791-2f8d-4e1e-8139-b0cf921ef002","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"登录页面","description":"login-page","prompt":"创建登录页面的详细文档。全面介绍用户身份验证的实现机制,包括登录表单设计、字段验证、提交处理和响应处理。详细说明JWT令牌的获取、存储和刷新机制,以及登录状态的持久化管理。记录登录页面的安全措施,包括密码加密传输、防暴力破解和会话管理。解释登录成功后的路由跳转、权限检查和用户信息初始化流程。提供登录页面的错误处理、用户体验优化和移动端适配的实现细节。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","order":1,"progress_status":"completed","dependent_files":"frontend/src/views/login/index.vue,frontend/src/api/auth.js,frontend/src/utils/auth.js","gmt_create":"2026-06-30T14:05:55.602587+08:00","gmt_modified":"2026-06-30T14:36:20.147272+08:00","raw_data":"WikiEncrypted:gVtFIob7WtU/DhLIhhPauHe+OU+v+Wmk6re9yMmllcXpiZ1pp7hfIQRNzw2djMi3kdxg1YOiyCoxBtvZze4FF6edaCgUjs2MTu+j6AA0Iy0cXORNHgcTdEiY29qq3iIiQbohHFi2yVwhY/RbmzBe7lwJOZe9tZJo+9aBXmZXSPQue+eGhVi8nfNwLBVZ8kr2w+IM0Le/0DzLcsNPWWHKW9gEnqOL9qJ2uRnJOeBfYIQm/RFJj6Arc9HTRD2rHKpLgeXT0/7uDlcrcVOeMQgI0MN4e5IsSMOS4i0V8i0QeaOnTMFe1e4ITmzsKBkTM3HbZ1l9Tud2Kc9vwBSxc71qfQSzN6PU2Lg3Aey6Hyu91q0cx/QlQLD9hjPLUl+/LeHHG0eHqrgL7KtiH7e32lisXRG1TYhCgOaOHWCL/heEb3WzujrCLosb3D7MsF/wENRWQGAQTgULpo9tmTHO5PQYppvv0bzI29cZtI53vlNiklobVJr7tvhTy/Ogd57XQ8bYMtnir8CxJnzDZcTSiyutWBKqV1X1lZOAyG+kC+aaRW/C7OYV4ek9b4dwf0XRsWvwr9GNgjIKC4IvOT+MYq8f+lbUllzOJdecNYg/6EvBmc3lESxNAVHxcKCYkpsfwV1pkQKTA8mk0s+6LysznP0NCo0/Wkd7s6eyrR5hNxhX1dI/D3SFOxC18N7Jb1XQTy2olb3oNn3HdurobkjeMAngSA7nxtsFpdVcdX3SqxyouWIMYKCNmLQjxKTUrx7OWx4ylXm4zZnlvaCsuj7hDBp/zdcCNQpVDN0sTMyI3rzj3Xnd9ULyRuTFS7dJzarbaHqSuN4ZVx3pRYSNWmOrrCKKAy2lG2ee8ojCkWtwcykJh9uC6Isdq+OzIY86g6fwtww3sF0b0tl7sLw81MfyakQfpqI09OHCiDHPtmwU1xVSJzriX6latrVG0pN2XqZ5MRWQy7nrzoCg8M6UHar+01QHp7FtE1F8IB7RTjIWNmVxfhgG5GBHk0+X39/mt+u9MCzS/DFWBVoXj2BXOJaos4NKYh8BDbTHC+HrYNlkD0wHs/yly/mlHyPrzMrv6n19GedMYDqebhvi0p2vS83tSPxoFf9tVJ3/0yZN3JuwAPQdGls=","layer_level":2},{"id":"70ba09ee-60a3-41f9-bdda-3cb904cb26de","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"系统架构","description":"architecture-design","prompt":"创建系统架构文档,描述高层设计和架构模式。详细说明前后端分离架构、MVC设计模式的应用、分层架构的实现。解释组件交互关系、数据流向和集成模式。文档化技术决策、权衡考虑和约束条件。包含基础设施需求、可扩展性考虑和部署拓扑。提供系统上下文图和组件分解图。解决横切关注点如安全性、监控和灾难恢复。记录技术栈、第三方依赖和版本兼容性。说明架构演进路线图和未来规划。","order":2,"progress_status":"completed","dependent_files":"backend/src/app.js,frontend/src/main.js,frontend/src/App.vue,backend/src/config/database.js,backend/src/config/redis.js","gmt_create":"2026-06-30T14:04:20.637577+08:00","gmt_modified":"2026-06-30T14:08:09.130141+08:00","raw_data":"WikiEncrypted:EPw1VhZSv2AMLpYzHbCG5QXmatSKh1iukhkKRz99kcWlEvnOwuqXvA4ZgQ6tN+ytovQp8yiqJicl84VZMQ0QFUpSuhdDKqqegwHVHT8m5Qe+hOlpJtwBJv6Gyfd5UzsnMpeYFRNXR8wbkeFBADir/QMuE5xA4w5GwYNyc4GbpnELQTPwTHgWWbWNxlgq3I5D9TCdlGhsRmZA6sOK//txRwki0pH+W5zMNr6nOdulmNq6y7jVc1uB2cnWdogeOMuaAeFHEES4nLloLAu6fZBcuZViwy6PppTyAmckkNr4DBsfUDF8AWA7Tc7/u9k2CUPbxxXn6EzWZLxfzJ8g2+MS5AGoHvdi1/l6Obw5LKcFw4fMrrziZ69qX8Y00Nb4OGTY7Ba9x8nTUpZR+ZQr8C2+b3ian2p5M/jX68T2veatBUXJdORnAdwyu+gsMTlFms2BIWpmJja/SPELEIIsiw02D+YpsgCBoWJwJytlJH/lNURd5C7p6eNTpZ8Ueot4a9kE3/6KkmeteZgfTGCtJVjgtLW3hCuAyhA5zfsNbKDGxNKwkAHaDmWR8R4jKKhAC0JCdk6GSYSbiXLYZG0yPMpDooJP8w3qo5IHgaintV0p4Y+wYwdLe0UJ74U9gCWnfTrlo2R93/rrWiZqe7Wwovt7bAEMnTmtbaWINVb+tXkN3kLfbyjbTHDxjIOc2AAOnFVRGIJpMt50+QEi5TYhA684wr1/vQOBZas07D/sUPjcvl/msZ4kjlgE+YwYMbKPSf9j302dqERpSJODBX9TN2I+B3pRvT8ziUFXF/xr6AsE4DXdyvCy/cCKvmIEp6gyrY78oSE+YwHefC0Cx0ltAwzDpm12AcAoA3YD0TwNDY8zH4cwXHu79zttcgTjZQaebPwhD8L8PbozbJ0lQWo8Tl5Onvbp8hOw6U57Z1U2W/ge1JupnAJt0tMnHek6EpKqkt0z/J2d4/Z5B1JNppZlK1nG+pnKNEfNY4h2m0ydoCRJCad5ccnFJYXhF9XP9vsx0RtqQoedeyfH7X8//4Iv3nVza2b7PZ184/TnYNqUmxItz3yos0ir0gAc+54SDzg0aJlzBs86JFQ9fSep6OJ44sUHkauivK0vBs8Wij0TSI8wUf43PFgjey+c54DZcvXNfsD1hh3PNHe0CRN/oMidSjGTPv6WOJIzp0KnAOn8GXb0kkhk7bpk8eYfe/8luyjlDyaA8QOxpZLfUtQWXtGv9+W4bxOtq8JG3gDpTI/PJ9UxhamLc3zHEgUg2FD0maAM+FBCVu51P66sXPu+fY+bIxalyw=="},{"id":"b47d7f83-5401-4a63-ade2-f087a2f61987","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"数据流设计","description":"data-flow-design","prompt":"创建数据流设计文档,详细说明系统中数据的流转过程和处理机制。解释从前端用户交互到后端数据持久化的完整数据路径。文档化API请求响应模式、数据验证流程和错误传播机制。说明缓存策略、数据同步和一致性保证方案。包含数据安全传输、加密存储和隐私保护措施。提供数据流监控、性能分析和故障排查指南。","parent_id":"70ba09ee-60a3-41f9-bdda-3cb904cb26de","order":2,"progress_status":"completed","dependent_files":"backend/src/models/index.js,frontend/src/api/auth.js,backend/src/services/measurementStorage.js","gmt_create":"2026-06-30T14:04:44.766251+08:00","gmt_modified":"2026-06-30T14:23:25.133463+08:00","raw_data":"WikiEncrypted:PGdHQOrMWxh6s6galmzx6wcoMdYGcfWJlB+MVcSBUNBNKtizTGYmn04CYqWTHq18bpIkVhxruGAwYTOr3jZ71eCHIhmHK7mDbe3H2F258BwPHLGOZJH4+7MFqH3W33roxV3A0mBu2oaH8IeI2N8avzXHaJJypIkSAx9hq3JuRVRCDIeKY3X4NKu/U9NptL74JQm6A7p7Li2mkZiBFKle+4PW/yzuWaITp6kplQfvEI/KpRhmnMRsG3jGv9iyUUFWAGQatGlcpMa3GH4QFw3sBvBajjhTtLtzUczf5Spz1O9WdUbgYOPCpDQ77+Bihsdcy9JfQp4lINGc9Qyfb5uB4DQlnqYiPlbr9a3dDGb/dU073dMLOTbly0p8fq9pG4W7N4v/Qh8PKhHj3MylSLdIGBJUnAVMl5qxvwzxjojm6CXeNAkwfimh+yqf454XGxOTZIAU9k2R2h8YV42MLqjA33Hx50dU7ywv/LpeoPO+YkHYLdJWVag51oeU0dV76GEofIYoyk36dpcxNf9tYMnzovlJz1d32pHkZiEtsRL0hfFpnpiBClN9Eb2M7eXf3h8covZFJVsAMVZ9mruy2FWZoE+Vy70yUrtgKhd+OG9WissVZfI/yqj0Yt2Wsrr1loH4IN2vTs2O8PRfGR+udMBY1TGPS+H1IyXIEa9Q8MGdAQ6PdO/m+9Mecxv3VDjgAPF0c6iiLgP6TWteu3Z/Q9X08FkR307C0YSiy1/W+edhxIveTqz9IG72msKc9KnHpMPW+i/DnIp8sMz0xDt1HKJeWnmP8rVDjGddCRuMdlYI1JTCfO4D+UnLhjf5mrmxD4Oto9HiMMdaM7vcYGorb90OikVE7+bXXS7QBK1eDyLElOaFNMH+fXRZY7dX05PCWloKC0wLxKcyNwDyheNdKuQfCQW/N9u3S+jQqInJWi+fLqqQk1kZ9a8UaYcnCudScV6lmAOswt3fe/4VQQn6BPnOBma0DHTIh046TrqUeM+vxlM=","layer_level":1},{"id":"94ec54d4-0aa0-4e58-8e63-5ad6ddb6edbe","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"型号管理API","description":"models-api","prompt":"为型号管理API创建详细的RESTful API文档。记录型号CRUD操作的HTTP方法、URL模式、请求/响应模式和数据验证规则。包含型号列表查询、型号详情获取、型号创建、更新和删除接口的详细说明。提供型号参数配置的数据结构和验证规则。文档化型号与OTA固件的一对多关联关系和级联操作。包含型号搜索、过滤和排序功能的实现指南。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","order":2,"progress_status":"completed","dependent_files":"backend/src/routes/models.js,backend/src/validators/model.js,backend/src/models/Model.js","gmt_create":"2026-06-30T14:04:55.155975+08:00","gmt_modified":"2026-06-30T14:23:05.599822+08:00","raw_data":"WikiEncrypted:bcjkcAe0RFiHL2SPRK7/uu85puYZIX+C2ex4+pzpdOn7cc1yaAAdUNe+7jLI7NvrHR5bm/2WUlZK6ZPtqzIQ5h0MnUhqrqNYJO2n9dYhyGDiNiCLvP7MtADJJoOS9141vtPVyHqN4otRLlyIifGGezJM1vWbuvIjzT3531HuZlQza3qam5PnHzCRxHpdpyS3eiqsaeCSEchsiEDJbUFvYr1KBaXa2ps4E3o7ic8vIuM/9QG22EqqaHhAY0z6biOMmr75iziBVtp1hd5dj+3s51Ve4h3Usic4VsaoBiWRXOdsvNvW/MOlXNkPJEW16bJHBbDpRUxnRtDnllNoDKyIQFv8JCEStTRG2IvVh2idTbw+IeD4K5s/j01K2awd6rxr+fctkw7X7fZhmmSgSrjT83he4gEUIomoKQeB3aFuNkb48nK2QwsvwuSOJ0hxMjItOlEALvBSS67btN8JKIx21hTuR7Mz1TKqrl4m0CuW9B+7j5Q4tjVckzV2Oe3SJkk35c9cay8fZMJyaia1kh3EzZYXlT/w5nSoPQTG0DCVTBHYEp1lzav7p3SLsENxTA8VO7WAwZNLCodOsbVRaxbZiys///S7wbk4U9Qu9CqxOnRaQnmzEgCcrtOtfPyGA5rgUFlnp8GNwGIpn+jn5KCwd/vNLDqxqpWWTPrirGgxvSfXcm8dT8PbNoJMLR0L+rzQGlTayzJq7FQcQBa8Dap8Jl04FxuJy7DupYAQKWdOd2Rh5LNLGErdQjv/vyVLIMsYvWYF+PtkNdSiES22Kx++X2TJyE28/tWA2ovQ/TV0iT3e0NK2YEyPEHpyobJAZo7XI3ItEM+ng22yzxz558FmLg3RTcVuI4OQ3b35JTeQtNU3Pg46YkBj1UWCHavm2CJPKcqi62KcsnHNWMb42y3EGVmaUdnFNOqZz/0JQvTftxV+pjzGj6CdxyaAneGCOUzKjMtvJJIRvc65DB4bOt5s62Aobzi4SlR4LUmmDeZky54cwkMcwrpNdCrvvGWdLoq+","layer_level":1},{"id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"页面组件","description":"page-components","prompt":"创建页面组件的详细文档,全面介绍各个功能页面的设计和实现。详细说明首页仪表板的数据展示、登录页面的身份验证、品牌管理页面的数据维护、型号管理页面的技术配置、OTA固件页面的版本控制、系统用户页面的权限管理、分享码日志页面的数据追踪等功能页面。记录每个页面的路由配置、数据获取方式、表单验证和用户交互流程。提供页面组件的状态管理、错误处理和加载状态的实现示例。解释页面间的导航关系和数据传递机制。","parent_id":"aa2583bf-2c6e-4792-b794-1563db547d08","order":2,"progress_status":"completed","dependent_files":"frontend/src/views/home/index.vue,frontend/src/views/login/index.vue,frontend/src/views/brand/index.vue,frontend/src/views/model/index.vue,frontend/src/views/ota/index.vue,frontend/src/views/system/users/index.vue,frontend/src/views/share-code/log.vue","gmt_create":"2026-06-30T14:05:00.060248+08:00","gmt_modified":"2026-06-30T14:24:27.142952+08:00","raw_data":"WikiEncrypted:olK3r0l78uP98ua79qDx7UWSmXb2E1v0sVKrAVzGYuIJHPAueEFJ7X5N2BSDrAuja5b8BTuELO8ubSNrSkgP/Z6rORQB8Z8doMfIZES0MEg18aBljdAOxOLzrDB089hOQpIseNeWKR8TXhStfC7+I83ha5LZRaJMoo3SuuqIzp3RkRQ7Do5v9wPCFg1iCbQYxnjwxm6zBRiSnHN3K9VmnziSCPrAqvYi0G80OkTVJZxFtRGsHzRduLx92WHhDfqsUqydlWWiPmv8K5I43pyYLMEgtXwCTysGp1UWrivekxLpUEkNAc506Rv8F3ZlL0VFyZUPT7bbz9ya0HADXvlAL2I0bLkJFkjPSUFTni2S4GtLHqH4cWROJC9y1Q9blmamNoYY1jJmJyU/NTSMC98Zqe86Efc6uTBDtHxQQX7u47icPzu9gG2J8JodxRFiQ+sVBNhbDm9gZUjKy+a9zXMBxeUGEi/CKi1o9KLgT7+q0gYw+vPb4NHgptzD95TSruRKHAi54z7oxcpJxKyvK170w75cV1bNR1nPVFvWJRzAVB/KKwlo3aLH5aXe4a27+tlLxjJ+pJyZxAv3WxfYqBc7yQQ1sROcMgpuAY+idES+OB+qeRzI2tSm39VjWsmEaq8xxLzlTEgOr7lyZnZ7jpasuYj/ZreCaq6541xuVsJoho8ADkSi8GB7Q/aWZl+UxNj0y4S/8MV8O68/sTSPREEN/QU6DMQsEYODNvz/U0qrzaIU+PBXXbfCJnxqAxYmvhELHwuy9/CUrSSaKC8ZciV+gtAlaV3Yvkfwx+855UxirdWJnEuk4lGX49tVCQG7VYE71gimwTKSsYviOMgmsyzZpUe+UN7UVNjGdW7ttWNYVtnaYua5cmOjtLBUGOrMwvlSeoxkJ5KRXf5Oa/COdfpa4d0fW0dVAtp1T0dTZWSbOk/lswh1YQUqgXj6DDw2qvpyIj2M3OzlFScFjbYizbh3JWD1vz9XxoQZ4C/G3nyi4PLVynnzu8hJrbBYcCb3Vsug5907YxaxmHr6zx+B2O+KaeiBw3vRa+EuQO4lJBH/diEjB1IKlCxZu8j3jcHMP+NLdTEKoAHodIpqhq9SOBjnvrWxzScLZDoU38ngtUQ2H7mSOif6BesJIxuGgMu8L/FRZr3+dLA6odcCvQLRAMXJAtmqmMPVEwJMQufl6WYvE4ZiIZ9sHvMxRAU7vS5cchHtzFte9/luCpsFv3X4xHw5hOmicjsJXCXIH2gXRoD32ZFbnorAo6WQ78LcrZU7jezn9PshnFoSmHH9FkYpd0Udn5J+uubjgRFNeF7inWmeH559LGe5OPLj1eZuQAcbWOy5WCMfC4GshplBJBu06rqv4nfGiMgtpER1L0lXIkxO06qqYWbcHRP4vaOSvprxHyh9iSL99YknTBb32b+dngtSCQ4Y+uxBZ2BOgLbu7KtS2wrf+611BYlSy3j9p7bpPZOxoZYQkvn4roAPOBpPa++5ezB6xMugHAWqPH2kkxrL+fc=","layer_level":1},{"id":"00a9d595-dc79-4ca4-8264-1c3f4a200a28","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"监控运维","description":"monitoring-operations","prompt":"创建监控运维文档,说明系统监控指标、日志管理和性能调优方法。包含Docker容器监控、服务健康检查、日志轮转配置和日志分析方法。提供性能监控指标定义、资源使用情况跟踪和异常告警设置。文档化服务重启、停止和重新部署的操作流程。包含备份策略、数据恢复方案和灾难恢复计划。提供运维脚本使用说明和自动化运维工具配置。","parent_id":"a3ddc4e4-116f-4781-ba9f-17c85c85396e","order":2,"progress_status":"completed","dependent_files":"backend/src/config/logger.js,backend/restart.sh,backend/stop.sh","gmt_create":"2026-06-30T14:05:12.313816+08:00","gmt_modified":"2026-06-30T14:25:08.613907+08:00","raw_data":"WikiEncrypted:HL3VqGjXq8A3aGeLxAjVPqmSWC8Q8z+JISjcpFTl3Rl0A9XVAWpupiaS7EM/Upd2tazZmC4eQGSkervuf1jbMC7w061CAmhFQqOU+czssHD24JzzCW/dzhPQh4OdveHL1lgCBXcR5/EbIuduJDuUmEwJx8aPYEp49Cq2bRpWZ2xXxQ9geEW929vQ0xrspQFu0M2MJkvVnbxR/C1ZA/D+1XfRFtbxiW0x31u8IH0d8nAhLDViHT9HOYnEHPGBjRiTyLhwVlOqUTDNsooW+CtVaXaVamj+Zsvm1Qzfw2XF6Iwkggg0GMA3YkqEB9DFwhzkplZ9FS408azxIS7d4fS0fFXf5diJya6pNlSuA8Iq6y7g4uAB2AiIZJvG94W2dwa7z5qIY979LwHB4DepnmSDztn7ZiE5nt52n+/HGNVea+cOJHee4MvbrnaM3omg7CWLoZG/dawr+mNCxykZ1vRzxrqBbNIvQRMJ+HpOfKUKEho5u+FPTs3ukPlfGiElxzlSrtsP1WAcQFFsET8OsCEk5x6IUkuh1g4u0mqPQxFDojZEl0/RjIoOigi3cHQ14MLApz44bkfadHqnpAuoznkln9hllqFREbHcGqNbIgHnQHRzz4Be2IM/7wIIJIiGbHebHoTXQV+aHxHOWNV8sCBn9aUZRBa8BvZ3UNFtcqEZD+wrKlf8XoKsc1fvfavpnUQ5viCSMfPMK7jwDTGIrqLhf6PL3ibkfDqDFVvIx/FNNdYFfkX/8Cxs8zF79FyeiYx98Yx3rItEZJit0mVmV0SQziiDqTyirtN07F7kZBFSUjWFi/WfFDBGMw+60Qn5WjMW9AipX0KdrVuf85oZIeT3udpIrRencXCwvchZRJU+NJpAqr/6K675EVQ7ybxH7XNUGXCYyCdxqP3nqDQkRqxHZxWsWginc3n4kvhE+zpfTUOp6m5HsO64XllZ+wohWPyjrqJSkEw26JhJIH+eAL29MliX6XBYjvlgT/Vl+dlQMn69VEgVXBBA3BXTV7KzWDUKEtEOMqP6WNKauLQTYqHt53vRnAZvBL+x4IQlA2rXWIk=","layer_level":1},{"id":"72a24a80-f221-49da-88a8-83c0f49f4e9d","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"型号模型","description":"model-model","prompt":"创建Model模型的详细文档,包括型号基本信息、技术规格、参数配置等字段定义。说明型号与品牌的关联关系和数据验证规则。文档化型号的完整生命周期管理,包括创建、更新、删除操作。提供型号数据结构示例和实际应用场景。解释型号模型在OTA升级和固件管理中的作用。","parent_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","order":2,"progress_status":"completed","dependent_files":"backend/src/models/Model.js","gmt_create":"2026-06-30T14:05:22.624097+08:00","gmt_modified":"2026-06-30T14:24:50.789071+08:00","raw_data":"WikiEncrypted:o5cr6Bo4m333A3G+lRdTTxRACU8j2qQjGF3ZvWCBRJVg4ygFbHKJwjRB8JHwTktUDQXcECHhFbmE4gRs0t+1cAwN3sdIm9MktHpIRSSYNyl8It7CS8c7Kbko+KOWDiia/4OYzPp1+Ghybtt7VK0zyBQN81qZaR1/UW5X18q6Nd78fsI04PQzw6oOqgto+wxHPnrvKDggDY8SsvvZmncwmrzbsOP2VtJJcNhQMXg1u+soPYJPOBoZxHDWrDPjf0okt1vMMWF5R0WFQv+iUbzBJ8PErbw3ZK+lbHsFncbKAvyI5B3bNirWYLw+0rZkmGJFY1RqV8iitjYAx76OS6oCAYwl4rX538I0xqWuH1+rXHMZIE5YXahUiRCB/5a1f4dUO4hJj4DEeogkMGOhOjR9xYWKVFWpSaTMS5Yu2gt/9XRhRwTypJiHS8yXXsr18QOa+8Z3GlwtXVkca7zVxoDQBL+zxQqUvgAwmCfI/W4+30Diu6dAy8DD1t9TipBisUO/u/LCDNc8k7jxtqnktibaTrSNLQ5aCiRVMFO3S9qwK2gARGh/+/G4ja0DMwD92UpaDcbdghx95nsPmFLkYUNLQCPdANbyN9Em639BakRdlQ4BSEJ5hNgAv246ePTEWXdfRdqUyT0m3gSZWa5Mq32ZA7AH9Go029LdBNBnzy4uJ5sSSoCfIRhPWpD2NHqQrjZEv3tfeWG5i/sx676ZFqNKV2NW2upQSmBHwYVyYDDDoQLCcYEH4WmrHvFqb7nXYmv5zeJu9YvYEf1kdEAmrfV2yg==","layer_level":1},{"id":"93c96675-6099-4ed5-8f40-6a47b3050712","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"型号管理","description":"model-management","prompt":"为型号管理功能创建详细内容,深入解释型号CRUD操作、技术规格管理、测量数据存储的实现细节。包含来自实际代码库的具体示例,展示型号列表查询、详情查看、参数配置等功能。文档化型号验证器的配置选项、参数和返回值。解释与品牌模型的一对一关联、测量存储的使用场景。解决常见的型号管理问题如参数验证、数据一致性等。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。","parent_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","order":2,"progress_status":"completed","dependent_files":"backend/src/routes/models.js,backend/src/validators/model.js,backend/src/models/Model.js,frontend/src/views/model/index.vue,backend/src/services/measurementStorage.js","gmt_create":"2026-06-30T14:05:25.897162+08:00","gmt_modified":"2026-06-30T14:26:44.046302+08:00","raw_data":"WikiEncrypted:o5cr6Bo4m333A3G+lRdTTxAyrO2oPW5FnBLfa9j0/NKm3J3s2Q3nFpNDceHQchIAJJY+Esm+kwKbYzPD7sJYvxwkqnm8241LNbU4VUDyMUdH7d6r03XfoF+3X6h0i/nYLsTYAwxBGsip7N4hLZ8pmSKbp3BnXji6UgQjF7/CgfgpNuHgBcS6Ttlr+r0mIQUQWfypIa7BMnm/b+kbCZ6KAxJE2lrnh/B54tDedeqh5AIcFVUgPEE1HfI+I2BKDbbUP6mr7xpRmRgRiKXp8Yu67KEi0BUQ+FZwLXrY1wGjxxfqx9SkDYvu86roCAryofG1eVaY0h4ewMz4SCGkf/SdMml462bXR/sV1zeIIVj1LYEgFOyzujC8mo24XFEyhSI/kPjejVr15vOSotQURQl0xlE2IFjLAFkHMaFQt2fOoF6BqtTfUng2T1ylI0/yJsicbJ9ClK7kiT5d07qaeITW47Lz+/vpzl4Z9SdPAz1tmpazg1IvId5r5npSaoHBeruslMdPktamlToVWKIFh8cao9LDql/Ac0A6n4bvp/Timq79TU8jI1ywBPc4iksAq/WvJllEhreDIo9ooiVo8TN9MarWoxp3sekBzpDLmM59ezqD5cSaL6NZ1GGoB2VInXcOD6FE5RVlRm8v95nL5c9dAh359XB0d2XQt0qL9kk2BTvzCvYluwMux4Q6uODwl4KOTA8wzsnduv4NBrs+0GVI0Lpe6Jzis4IhfbBlkw+qu4kA09IBnhW+VONArqmbMJdXC0ApM9coizPwpgT68V+vhd7yfAOKEdSVNdHU9vZq0CIyW6CNfpfS+jKHimw2Kzhaor0uLsTJi4cQQxXe7L7C4Yp0BcouZC/Ho+SuVmpF3lncKMdA8FsoA9mWEXfucDdM8kZXhQiOb5hDwuNrbj2WLnP6KdtzgeHwIDIaEItLgyf20R5Tczg4vLl/EpWHdC2xfURLEYcZQnSMyvicHCoWScmahBPG7V/Z7HAVdM7WVHJJ/Ie8TPLPx9jFbbPmFEhFLKlLIGFzlv+2FNk0dnPbSUE9JN1qXuzPPIZWqiKnaqMPNkBQF4ff2AZ8zr9rE1un4AAJyKw3CN/Bulad6OBAgA8tQ8OQauG4iPGQftBkGgmTrtpE4lAyxTxOlTgs6vAbglfBzjEp5MFc7o7BKyRcsp1dEZGj/ZhwMT0fyPYTjhoIfXV4r2YKMA23EhKXjVAsJmATLtBTrw5UDJ2Ge4PRxWFvsAT2G+8nsNh2NUvNG6TruybUm8Y5o8ifHmhHRgUDKUvjv5ksLTcv0TKEmwIWg8G37ovmuo0FAwOr1bvXK9utPucmZCGtPMxjLJPBmNpCDTAyc5AZONp3fMeWOU5cWG+DSiMlLU9llTtmGaseWrFc3JWp+lbkwzfLj4WmRElyxO8XHDw8f4TvpO/qeAqwig==","layer_level":1},{"id":"32dbace3-24e6-4a2d-9f87-83f2ec825b71","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"密码修改对话框","description":"change-password-dialog","prompt":"创建密码修改对话框的安全交互文档。详细说明密码强度验证规则,包括长度要求、字符类型和复杂度检查。解释表单验证流程,包括实时验证、错误提示和提交状态管理。记录密码修改的API调用流程,包括旧密码验证、新密码设置和错误处理机制。提供安全最佳实践,包括密码加密传输、防重放攻击和会话管理。包含用户体验优化,如密码可见性切换、自动完成和键盘导航支持。解释与认证系统的集成方式和权限验证机制。","parent_id":"eb78ed75-b786-4b43-ba43-58a5ea8a23a6","order":2,"progress_status":"completed","dependent_files":"frontend/src/components/ChangePasswordDialog.vue","gmt_create":"2026-06-30T14:05:28.623391+08:00","gmt_modified":"2026-06-30T14:36:50.062236+08:00","raw_data":"WikiEncrypted:MTGOV8yMPpR4TI1lgrJ8xG2DJaIBmdXRwPCl7oRCvXmCW21g6Vjoc2Fgt6nmmENvVQk6mZ+b48v5x7n1+0vaA7CHuGOaSKT1JpGPpRS/S04l+JJRC+zDXrImACBhSN+bAa09cBwSvWPWb3abEYtmKZTzRsib/uzjiZZSf1sPa82YEOr2t72Zm1OMMiqS8XA+qsZEzYiwLmiPLYFL+guO/3HaXe46Do0MMkKmltG7SdeWQpg0oka5yh6krSsT/W287f9JlYbkuaKE1DuvTnJQP+AnABLGN4UgZkrNvRu7pkJDAaUqmT59pSsjsT36NdrgsH/M1TPaMUk7joUnZc1IdIj085VEilPnS5PxTJEGHREbxVqxKR30C/5r6GnnzdXr/jrRhHs+UhBMOTdxtXGexuVx3aVzvCeBi3sRmGGNEzB7g7VsMJhc2HjCLYbeoIc2RP4XbivYLI4jkL908EQple4la3X3ggTZmmIRB8tzgdn2H/zDbaJ2ZCuI5cpzFamtwC2X6eLW2I90WLydSARo13ACzls4tu24apN25mQi0O/72z+V7bdoohJxqP+HlYsJ7MW2YFHCc18sKduLVLZsdqma8YQsXwV5EgYIhKAl3Mn0jCJvMHHA1q54m4MpedfXtyxUaV3Z/QbzKZiNGylMaUcTqeSxrwmB2Us4VdoHw89a2hUjp9fpAneq1lii4WlWygpjsZ/xGZPeEZNS2sLZLu2iV9btxVdJtjr14fDw8t817dq71safFgmrfgWmIwy4tBuQt+sUoYEHPBA/8RNuqyzxybwdhwFDxW8nUeyILFVyC0NFnS+jYQiYM4ffGs10mGWaO4Hw5gQWNFE0V2rXXTfx6xSF0eq/KXLoMuB8Pvey/AELPNiW8oveBlR903q+smsgrLd96oVR4kol5YN914XfzjM3kZBz/muAYVbsDBMKbEbczayPubwLm5zMFOuShES9MqJH/Jbzr9kcOugPx6sl3T8EMJGTuzlEnCi0Fc3Xukfm0wRx6j1iRYvbuyk51s+osNojspt1+OlIMIZDXtjf9XdL0wfoUql5ZRzDh3jNfbGv8VRxV6cKWIrlEiYphQre0T838CYjw4UVA3KOwWuvhCXU/fl0llYLZCCmfsyliuUVex+HGMwN4Djvkus4COjxzp4f2DByyquV0del9JCQZJ7XM1H0vW81c70BJuxUZjpLeZK0B46qiiAu1d+7","layer_level":2},{"id":"af7f747a-9be6-41c3-b091-4ee5901d8cc7","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"品牌管理页面","description":"brand-management","prompt":"创建品牌管理页面的详细文档。全面介绍品牌数据的增删改查功能实现,包括品牌列表展示、搜索过滤、分页处理和批量操作。详细说明品牌表单的验证规则、数据绑定和提交流程,以及图片上传和预览功能。记录品牌管理的权限控制、数据同步和缓存策略。解释品牌关联数据的处理方式、级联删除和数据完整性保证。提供品牌管理页面的性能优化、用户体验改进和错误处理的最佳实践。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","order":2,"progress_status":"completed","dependent_files":"frontend/src/views/brand/index.vue,frontend/src/api/brand.js","gmt_create":"2026-06-30T14:05:55.602772+08:00","gmt_modified":"2026-06-30T14:37:33.764923+08:00","raw_data":"WikiEncrypted:MpYke5d2PXdqtxI+drCrLid0YsRsuFzxrKFl1UH2EDILD+4NmryAJ+q2oYZ42eaiuwvs0ff3fJrcmeJphvg6shRr3y/1Z6QIqf0SdVu8YJToiL52I9yI/YQ9QmrCLTmSJK1Xn0gikJy/Ur1L6mQ4487hhJQ5ETrEyG74ClVaJFLbUcjoZnico/zSQru9m462u4XEGzLdVl3wBitgKCowMgtQp8iOkg6zYEOvq+vQd5ZMUpRGtPDuGd5LGl/sCyJboNraB5fpHqavDpi5YE7ArXMWdq74EgB0tuJXFndniw/KReaPlNuLs4cZb5MnMb/Zk/FpXzVwYB4qeCuD7TTz94PbPh5lQUUSV1nN7I2Nl7KrP7WCumRo51Bsp0EgDTJ6Lv1FBBouTAIk6SOJy7c7pHKI2bVjdbYhok8sqJoO1zP8R0kKkzlWVqR1eqx3c7vZlMT4qGOrIZltbmw3MS0LlfxkOwLOAeA1wiOuMsyxRh0rW05bslECO6N6C5nvuooj2pIx4UaPhTHmavcOt1kHG9pMEPh2Fb6VZOpYFKDG2zyCIfnU3fVAoD7n68yLyuJHSMnM+EsWqLHsaBCFBaVOUW1k8eMzltfozTQzFUlpASncW1hCZDkH9eAByXunfMzj3cRR5ij6yv+rlMx6Kc8OJtIHMXfY5Uug4RoC41bw1Q5ApjCy7rRFRC3MXbXBQKnufuVAvtk6ldQ64s34dZG6Fs7AuX3T1VWSDjReGTa3JKhARtr2k1xtruRq5ugRY0wrRTCkAiW7nE3grXMt4101VFK4QE1jqRxjkRPVCz8B5lL5TUqxK8KFltj2NZEC24YU36Zz74rntRYqZwbl/pRQk6uP5TGiH3pw7xActW1I6ySnBBrJsUONt01juQ4Tqr7+S/JJbR/vkryj65Kc00zCRsbkeH0dXxmKUKB59e915AlLc0aQRlXRhTlfKUr7/IMAd0n9HGSSaKcRr69ijbll3opHfyRpZF/uF0kmh03HjEredmCzrYx9fGQUTANJX2HqoONB4ms4Qm0j2am+UjAvbBHU++SpwlZBkP1aR9KuMN4uKpX4tUjL8tDJRGW7ZU7W","layer_level":2},{"id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"数据库设计","description":"database-schema","prompt":"创建全面的数据模型文档,详细说明实体关系、字段定义和数据类型。文档化主键/外键、索引和约束条件。解释数据验证规则和业务规则。包含数据库模式图和示例数据。文档化数据访问模式、缓存策略和性能考虑。指定数据生命周期、保留策略和归档规则。包含数据迁移路径和版本管理。解决数据安全、隐私要求和访问控制。详细说明Brand、Model、Ota、DashboardUser、ShareCodeLog等核心实体的设计理念和关系映射。","order":3,"progress_status":"completed","dependent_files":"backend/src/models/index.js,backend/src/models/Brand.js,backend/src/models/Model.js,backend/src/models/Ota.js,backend/src/models/DashboardUser.js,backend/src/models/ShareCodeLog.js","gmt_create":"2026-06-30T14:04:20.637975+08:00","gmt_modified":"2026-06-30T14:10:45.950286+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkKY19u2QVJ1rg3+MIy4jIV1T7LGtk0NNZTeyhAbQ+Kw6nKL19/84a+4Ky8TPQGUBAMv+/6dJGLjO+JY3ZnbVJix+JXTUe92A0fyeezyoI6zxn0BCAAx7GKkFkl72yB7LDQCZmuLQu265aq1IM9ARxC5hoRrKFrUfmial9RptFqCk8tXMOwlttvntP9DLL0Toiim2N8rxuTj3PZ3Sfi2OoqyGs9QmcT5sZkFv2MzdkRWxlRj+lggrQgwwCEi7PAKwJUu8fAL6D0HFdfQ/zGBjnr5HmJCLcdnczST1lLXFTpVqg2yA7ejV2oYI07mzPC8wxSIMZ3razM55hNHeD7TIu0h+AASYH/fMFx+BavsWSWVibAj0+GY3nVB1XGEdf8tKUxCt2tLkzmNC0ONaFrb1sH+u3/NACyBWp1XT485tAbYK8nfQIKYCsxMN3A/5DrVsuo/qHfopngN0j9+Ezecg/k9Tpmt1WNL6Q3XGKE+SH88eF9LePghhx2s0Cyeh8dtxlqwb3KvkFwy/T8YuSy4I5txe2e3KV4B+65RBbbnRPp9CU+X/MAW0EEPjUDUcpVTF1RrZp3uD2ugvmRoN4WNDuXqn+O+o02Vm53g6xy0ZAjX2BiUHbtGhP08k5nBf+6vc6Qw11ko3WnqZtpqJrpu2/pJm40NX/r3Gxcwc0lhxO3Q3EgDEQUNhM6kykwBc5roxz1NZn9gecFJ/vOtO/a9ekqeknKCjw+PYmE7nimMApPoaSzADSa7ZF41I10SWY3CWWqNFfZ8fs1kpjew0mcbEAcyHSEB6Lkt1zJclVbuowc/XC5n6bv4fqkK2/qfT4i/h1zQwLReqBxHagDNUFMA/qXsFwWWSsqOnBtOJV0SnMYqryPf8/tcUVYavxmkBnmXvABNj45AhkJX7xs9fc4CPoEHcxa3AyPkvXSy9v+LTqOitEoO4BOyQ+5o9KELKxVwWW6rA6wTuJK0VnDMTCO+sJoy15gNLfTN1KZORVVwPly7IRW7yO+mCCazqFfoXR477Kif4qeBnWPClMQFLaFJ+pEgvIJWYRUNfKcw4vc/EkyYYeA+Hd1FFr+O5DC0HXhUctk8lYt9MKtZH31RCBZFL95fvmg6+hlxpcnqGgPyYX3RhgESPLtQRADQH9MeBW9GkS7EJElfVnVsfTOAdmSos2AMVYslDP3x1z69CIk+639BSGgJNNyprE87PTRKUxY4eHCuVmALZYeo53/n0ryOP+Pm0RrLO2OoEdwDukBlzJqujjYntHapPf+BV9MDdrQJhuaaDPw+aEW6SkitZwp5cGi5x743nW5gBNH/3CtrEysupQXlFxxgAhYXnXVB7ruWNWK7EuH+8oIfmNMJ4080SwxT6REnUV87E1DChQd20pT7L"},{"id":"6cd96b12-bb94-4748-94a8-9ef9bf21aee0","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"集成模式","description":"integration-patterns","prompt":"创建集成模式文档,详细说明系统与外部服务和组件的集成策略。解释日志系统集成、文件上传服务和第三方API调用模式。文档化微服务间的通信协议、消息队列和事件驱动架构。说明缓存层集成、数据库连接池和资源管理策略。包含集成测试、监控告警和故障转移机制。提供集成点的配置管理、版本兼容性和升级策略。","parent_id":"70ba09ee-60a3-41f9-bdda-3cb904cb26de","order":3,"progress_status":"completed","dependent_files":"backend/src/config/logger.js,backend/src/services/curveClient.js,scripts/upload.sh","gmt_create":"2026-06-30T14:04:44.766596+08:00","gmt_modified":"2026-06-30T14:27:35.809057+08:00","raw_data":"WikiEncrypted:0j4RRfWJQdenLQLpT+DwLY9h0ctWLZwu8+2HoqcoTgcS/p644+VTtfXH7/YdC+18sAix7E/U+9fJqjMUaBv3jH3dXtuWslLxziQhE0mAM6KzXiDK+XHdsDX+pH5TGGreF1MypynKLMokPfyvDKXXvDb/K/htq5rDIK7wn4efMGrpYrHlk26HkWjVSHgXWa8mSvCzhzivdxiPFSzM+bFHKmAil3znEHtkwMtneqShT9/7CHzIwjUUkq4PtBv4zoyd87sLPzIHBxV584WgWr+H9HiHl/rgXIpGmmyxvut6aE6Mc2v5WhKYnBXayO803+sO3YHI6rRIuv/B17E6Q0lLwA+1x9YcSWrwXv0cmDijT/4f8uMl7RC7jSivX0mlv6dFtsZu7V/TF5vyEVrzfMMxsr4VQjceTo4zW+y7QufDdnvlGRr+S0DFgAlt8IpDnp49wmm2oomoTmIRf3OkwdMZEIGJxUmtNR0zcvCIdBh1KA4TQxHOKFZFOt0qaC9wAFXB2mUD/v6im0DNwlC9lxd0YSEHf0ZvG7AFzBTCSu0s4BrXMKjBlQmvbYHIztwKEe+eQLwn+egVBK3fWzCesFrLhQolEWHZge33dHIVt/jl/VAu8cuAjZerwX5ma+nYjVDSkJpDBLFeII5+/XG1QGVnFeHRw8iHrmbFjioXBvDGm3JGK35cJYmKDpCNswcTS4czKP4q6iapCga0KZHCA25UqbmW7fFBBJBnLXJSnap5wZL2/cXVzzrMHq0DwVin4TCmhatx25HzI6WSkier3jGKtRxCBPDJy1i6AaUNVTQNQmf5WXG/3+KTgWXojmRlUQcRPCxOO+jVRiuENVql2W2CFOHb4PNkmO2ybwjNkuLawNXMRTVnDlyGmKOj6/8+1qv7NkG2VU3x7q5QRh4EOn1Xx5OL8wK3ZIo6YDtZQMJ6fAt1a/Q1V1P+xtU7nXtJrP94p+lh+S8as938vJI0ks+Th12f9lM8x2O0q3crMtXpfTiY5KECIAVrHQBXIgP9mDzicaW90vw0PhTRJL3zNVMp1g==","layer_level":1},{"id":"41e8823b-fa7a-4a80-809d-cf21088bdba2","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"OTA固件API","description":"ota-api","prompt":"为OTA固件管理API创建完整的RESTful API文档。记录固件版本管理的HTTP方法、URL模式、请求/响应模式和文件上传处理。包含固件版本列表查询、固件详情获取、固件上传、更新和删除接口的详细说明。提供文件存储服务的配置和使用示例。文档化固件版本比较、强制更新策略和兼容性检查机制。包含固件下载、版本升级通知和错误处理的实现指南。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","order":3,"progress_status":"completed","dependent_files":"backend/src/routes/ota.js,backend/src/validators/ota.js,backend/src/services/otaStorage.js","gmt_create":"2026-06-30T14:04:55.156101+08:00","gmt_modified":"2026-06-30T14:26:52.749254+08:00","raw_data":"WikiEncrypted:E/YLj/vjaxHA5L3+/DbcM/RrsyTj+zs2iY0gxO9VwkrctdJ181Ln0L3ooRB4LTne4VfMGKZQ6wlTj5N/X2kXcEukZ9Fut02Bs5XkjPHI+2fVI4RjZN0XzwIQaHtBgl8tPykchP+BDkn7x21JPxM4faRabHD4SQ8f5w6ZTPuozmHMS8B+EHb2T7KjC4DoC1RunkTRgUzQ00ZOlbAQ417Nl5iSzdfmRxQ4xxXxBHxg7QRNmHyXXkYgUat/sYwewRJ7vWadFGMWhqvlypgVFw2ueYVxtwoTgfWRW3xSbHeuJMn7RF/FWundtS5a3WwlcFzvmkpGXhXanm6EBmi/g1nlkr1I62+iPGsBnn/mYzTCs9N0yzg8pjYlkjWLhoYnWzFCcwNjWuOis5TkACe4F3Enn5/lHPaUacKkjRUmCsmyIV+YCfcShFNlf15kqHmAJzFnwpzDTA7n2GDkXwAcTZVUsDiGIo9HcXj42Nj+gmNBocNtwCrq1apaus8+xrRBA1usRtf2XK+beNgVY8HakOY03Q88Yn6RceXtZURlft7w094WixUJXMU2VtwSJLIC/MnKfNzse1s3D/QatR22ivu1UxhLoQwKTdXiOCyrSysBf5CmHP+PJmWexDMBbgw2op1BNhxGV8ENxuFPoq/jJ6AciXYGnhe0HLsQZu3DGhtOKX6bhA/ylWSAqpKAn9MxTvI3s8M/gDD7dKZnrafvi3SyEI58q46R6EEAayRfg7w8pX3mpdDt+O0t2eN96w52Fhh3VFn9jdhnWBnEVhm8E4C2cUIrmVa1SYlBUaC+2Fuf171p3d2LjtzevaIzC3KDVOtX8VCAJVzeLbpOrxd7bo2He6Tj1qG1ElYp329PfO5BbMt+FDxZXT89pJQbxxz6faNUwaVjAWzvfB2RGDuugJFagSKpW/HMZJWgQwWRdG1GJnqI2xu7KnVfTb+VK+QPbH+TOkLtxvZ34sq+Fe9xRTH6ffAgL3GVhFx17Byd1mIyFtAcAr8SadVmB18dr4jmgbxbP2EptnohyUwoYMfihQqTaA==","layer_level":1},{"id":"02f97459-8352-4fff-9216-8fcabb128d77","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"故障排除","description":"troubleshooting-faq","prompt":"创建故障排除和FAQ文档,收集和整理常见问题及其解决方案。包含前端页面空白、API请求失败、后端构建失败等典型问题的诊断步骤和修复方法。提供Docker相关问题、网络连接问题、数据库连接问题的排查指南。文档化日志分析方法、错误代码含义和调试技巧。包含性能问题诊断、内存泄漏检测和系统瓶颈分析。提供紧急情况下的快速恢复流程和回滚策略。","parent_id":"a3ddc4e4-116f-4781-ba9f-17c85c85396e","order":3,"progress_status":"completed","dependent_files":"DEPLOY.md,backend/src/config/logger.js","gmt_create":"2026-06-30T14:05:12.313976+08:00","gmt_modified":"2026-06-30T14:28:16.989136+08:00","raw_data":"WikiEncrypted:CaKOW8OSSWs4aEYk06Hu0tuZET5JxbVXxA/4vFailoRiq8l6SCRMdp2PbHfZPheZsOCEHlBpUkVcsULRxIpKUNxtyrd+LvcQjieQsOib7J2aYZb0jdq6DIsuIi9OwAqdeUo2sZ7WFYO0MjrDHQbEi0Fshph1GHL9lpk4FW6QGVpOX6LlZSlzzcg12dQ/7lfGLDNbZmC+kujhPKYB8y+Qg9DI/RBQ2izmG4m7XYoA9vhnY3btZQDjWIgS571TStZN+2zXE5D5wxyq1xW8sfVZ5aoLYIpOUkLMXsZXRuxThU9QEIsRrWxkIjNZ+DYovCzw6LfTUmjulPUu6g1fGUvjvcoT/wPnkWfZ3G6dkEdl2FNK4YiCrP5dIB4B3Ce5xXB04QOtueqxEA0ky3S10aN1HSYiNKLbR870IYZ5PIh7MQS6IVZ/xNU59dvYs1yYgWQzaTkW6h/wP9Qn9DJK6QJ5DVvqn7nn7UX9cmZTZdcT+EZvg3leLG3nUxl+rMg5moRbt3A+XJT1dR13DsgLjPbPKZ4+nDWJghDjUIQZ99/91AZrw0kPKbFba8YYIeLw3/nhshLooOLS8HHpn1RIwSI5C4biKcdxCPRgDq7LZn0X1aDqrw96+lKqgEm6PjrwBIpvhmWlr49hWd9rom2ohJAa1vkvUioWyGjsohChizidHzag+5Yf0ktjenGomBjPQc0ENMHZVtWmb0PwqR/Aj9IYfdLU9XmIH5NXLlNKtnDGFvqJOmCkUY2CjoQ1zLqXwcQc5CIXmeV/dew+CZh+lzcp19HqYDyuRJJeUuBxtHHC1E2fNZWXAgpNogDVGUEEGAFCS75/yAGV+eZWApwi7P8EYbT8bEi+lkDzWOMRG3R7uHZ012uwytQCgcEAx89CPTQRdvwzuHQCehVV5of8lW29MsJcCKWqYEUbKm9xGdGHMMcALiJh3Iijn108J7RBXVDNLIpQWWYIP3jAufqY8lz7wi06ibX8LgPQdR69b+ZWDEJ9b7RGOf9xsem9kNHlcHExDfpPlIUeYCTnQ+UAvW3BnA==","layer_level":1},{"id":"92ff3472-40b9-4adf-82b2-faf5a4d4b158","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"OTA固件模型","description":"ota-model","prompt":"创建Ota模型的详细文档,包括固件版本号、文件路径、强制更新标志、发布状态等关键字段。说明OTA升级的版本管理和发布策略。文档化固件文件的存储和访问机制。解释强制更新、可选更新等不同升级类型的实现方式。提供OTA升级流程的示例和错误处理机制。","parent_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","order":3,"progress_status":"completed","dependent_files":"backend/src/models/Ota.js","gmt_create":"2026-06-30T14:05:22.6246+08:00","gmt_modified":"2026-06-30T14:28:22.050373+08:00","raw_data":"WikiEncrypted:M3g6T5zNL2wYgwI+v2g1k9TI04v1ugoF7zKt9xQvyuZqaGjJRFmBqKV8Wmwm/3SJ9Qv4rq4MrNZm9Mosti7r0obMj+m4wfrTq8co2+WGKMrYflsRbFhqYh3bwnRVAtBUG+oE0xiunIHCkbP/vnG9SBSl9YG0F5IlWVZTiJo4o240+pE9i40J+V8UwXtMXUWVIsQrA45pmgpTn3LfGupDTWIZ32ZD7WlYT4iTdOOe4azDCok4I1Yvh5kjTJYmR6+IggUUDFRxpFqxUyRHUCPAOM+CBB2O8JGPXOsn3M+0GhQ745lCytF2fTMIBwfB95CvsjNL+uIdYn68JkatRsH7lCOQBVWlNM3zJLvpllaYyA0NAYmiDZ9v48O25B6goFiZqSRDq+5ZFHPYhtmEGQvhr6vG3K6UKm1/8MM+Vhj2ys55M2serDCbPBieNvEsFp96ehe/Hg11TRDvaRr+b/cBcNmtD9NulFxM9jS5RmzGOpHtlF0RiurSmlao+eaveVPhKnTINLe0tTYSBtsYc4K2uriWVijJ8XYIvSE/5W9k7yhooovbDmKhWzS1eY1LMTR6uVCGXR6QPj60pNUVRKuuLQYtR5Kir4n5gJLT4VyoOPy5ZfSx2zGEKDHVGxrqdHKxP17z6R3L4wh/TNCj0rYBxmsjekn63MFHY9+xRbzKwuqYjsBjp7MogvotIrInX1awMAsoaZ56ODV1c6oNA+DtlKfy4CHExNfu0v5zbz2siffwiRcjzPcLH03x81xKluRNRjtmC7uzOo6qUnRwlYOHLg==","layer_level":1},{"id":"6dc54635-13f8-4ae3-b3a7-54c65dea2997","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"OTA固件管理","description":"ota-firmware-management","prompt":"为OTA固件管理功能创建详细内容,深入解释固件版本管理、文件上传下载、强制更新配置的实现细节。包含来自实际代码库的具体示例,展示固件版本列表、上传新版本、配置更新策略等功能。文档化OTA验证器的配置选项、参数和返回值。解释与型号模型的一对多关联、文件存储的使用场景。解决常见的OTA管理问题如版本冲突、文件完整性验证等。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。","parent_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","order":3,"progress_status":"completed","dependent_files":"backend/src/routes/ota.js,backend/src/validators/ota.js,backend/src/models/Ota.js,frontend/src/views/ota/index.vue,backend/src/services/otaStorage.js","gmt_create":"2026-06-30T14:05:25.897556+08:00","gmt_modified":"2026-06-30T14:29:32.817835+08:00","raw_data":"WikiEncrypted:Ac7eY6kMrW78UEdNaO97Gm1o3tPOqyEc4tsJCJi4h0OJ31qvlpJ6jlqnfQUDd7dUN71F3lGtbIeqZ/k7p+RNJ3eDkB8Htc7ZohZ1af6XH8auv0DBKjzWHeJJ1dB/17+jTLSLPNoBQMsdYlKl7ALHNahBhYhb6mEol7H1VUqhd+2+4kyf/xVY8MOhgHYBX+kiZRs5m/JHGVv2Wl3OwcYB9AYqiRIfvjyxAAydjdbTUJt54pCyZEpKB3Vgb11jxHoLm+LG4gGNLC3YbMmSNC4RChmM8iQjc0kwuL5qCmSFOqJCGV6fOgH2YkXjffq86bA3BzSVzJ4eUzDNyjI7tCm6aSpbHglaJZtFXYdmHHnWL3O2f/KplGBiwcFikwUNSvY4Yh/NFAbxWaMpg/9rvfxxl7gwmisRIXz48UZGDJ73D64P+B0i+ufqRki0V8nDoHFaHBLDlQaxU22+1zK7rZKyMQ6x/kqUYmHQT4oRfIhmNYqv68oloXGH/qQuE9aGvKfgoxLOr4t6q3wcggD3sn5452mlt3vRv046pWHQiTgdh4vqRmzReqMJ9G9Wp0oBo353dk23eWNrh99kJ2FuYswwnXUXXHizB90jsDxQXzV/oLHuaQC8e2Ct1Qf1vLkWfGDSl7j8T3IEostDzLZKxjFmzW1HAtJ6RayrxQ+3mY+uCfuaMvgyFZtdfQoY0iigfE0hobUU7WNn4EaN88o+ulikPq5BgmSqn0AS+IyliI6qlkZdgBfCcBmOmka9FpuGFxJGUhcoEsmGUVVCiSxygCOGTmimP/O1eVKoa/DE4oRJdBKntaT2hQlib9q/LiJZwZSZ8Q0cBeEEGh9sNtFRjh2CAuUdFE/nl8XG+7U+wnpI8vjFvpMb0qJM+P5ZAMzZAEvp6HVxQ/UlywUZ1HbUoi8uXk/RlWeGDc8jkd9XSAxXzpQ4heVRrQ+N8mwkwr8b2m78e93x29Uu9XT1CQ3JBhMcQphGFs/742C+BRtHNQvnv7CWHSQAz8oMkDdlGKwHAmfEt/9g3ZMMwLbIcZMj3I5CdoCt6sLaVAJdiE8yz/eE4J6vrYYOqEGM6ntY+Z2CJGA5hWs8ijOJbFHUMZxyHjSygI39w2JW1gZ8LEbjJJ4nMZeO2DRY5F7rWMClSIi8WHv62I8IrXsKifCXD1NAl/IYsO+gD7aUYii8F9KaXjQTqZ7nOfAYly7rzQ26ATdLxL4NIbbtDbQTFCfhjl4mWPL1t+sX9zn23ePeIrS/+aKjotNl3yCa4T+ls+ThZ6zQXZ+VNyoqouVVyyg+jtfYuOd122Zzf47UALOvFza6NqYuFoq2EPKntvJ8VRNs8V2G6RPEfqXW4TUpugSF4an8ProwPFPAndjCOCXp/5vm/ycSGAZKQzvJocOUnaksP25pPO0ziagn4PzRzAQNxJ1CZReKPg==","layer_level":1},{"id":"748c8db9-9197-4c3b-ae1d-a6e51d058342","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"型号管理页面","description":"model-management","prompt":"创建型号管理页面的详细文档。全面介绍耳机型号的技术参数管理功能,包括型号列表、详细信息展示、参数配置和品牌关联。详细说明型号表单的数据结构、字段验证和复杂表单处理。记录型号与品牌的关联关系、级联数据管理和外键约束处理。解释型号参数的动态配置、数据格式验证和存储优化。提供型号管理页面的搜索过滤、排序功能和批量操作的实现方案。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","order":3,"progress_status":"completed","dependent_files":"frontend/src/views/model/index.vue,frontend/src/api/model.js","gmt_create":"2026-06-30T14:05:55.602966+08:00","gmt_modified":"2026-06-30T14:38:54.075872+08:00","raw_data":"WikiEncrypted:o5cr6Bo4m333A3G+lRdTTxAyrO2oPW5FnBLfa9j0/NKm3J3s2Q3nFpNDceHQchIA7qn1xYiWgntWVEgz+AljimoZFfM3LVrNE3kMQpRlr2skTY6uMKWNkql4Ag3cC0UTnPNlQvkWJwYOEmU10Jn89d7l77rUg8Nwxyqzn2zoYbPoCpCLqpS8KxOTLbtRa2QLL8voH5tzFwVkGGH+5a+agk+PV3DL5DT+IAFNnknZsll3MPRW5gOtSgjc/uNcO9KnUZqA7DVC9jnEKxUlUMLTAA6jEn4/+ouQ3rC1ZG9Myu9b6C5HXybXVNf8hq8XWA+JEhitA+WW+GMX7Wsdwuha6x2PffjCctS+KLLThiy9R5cyhREhzW5QP3dj3wPa2CF9RpqxSDa7oto2W4XCr9a4zPrHL6z0HaFwjqvDmtC8FrJRfW8EEDJA/ZHv9hFD2dZLrqt+gwCJljcCEMGoVFxUB9oAxAkSn9URKXY4E7NUB4cMSpv/FwDDziT6+nl5ES8Sgvp6nasY6IDTdCzghLBLPhde/EfQAM0So8dNb8+qG7cwAtM/HgHnwVd9Oze1BXt8OD/Vx/Ejew+SzBNnhiyKBp8cStpfDtRH8Q3aoAzcORSMIquP3z0lTGPcwCXthaosYwARfgY2rchDag8FYVyfX19M9NMXAIN6asqgomUyQJYWCU7FFB4R2EYF4IBwFnBqb242GVwsiJS+tyNEaDZr/y/BdFm4dhND8qqHybXRKA1yHa/1gQwU54HejhF7CdUEE6z0mAbJ+Jaxc9jQiG7MLTLoQHMOWW4DrqWrTvN2vSlFAn7ZGBMV7MGPwFJjEdNSd7Sflql7/BA9UoJr3HUjthBTJdSqLmF6lJMII5X1IyH6VzHYU93xrnUFqHrwuHymszjb/RAE/pC0kHfuCVSozcEUmusUI/7f2u14x9pbL2phEYOlWC6vHlp/7bhURZAnNr7HGk8hNmSqYv282J4g+i9F2R67Z+c/O85cA70RIWoL1dojsAOun+2qVy90nbbujCeG9BPmjEXI6DKaUC10VQ==","layer_level":2},{"id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"后端API文档","description":"backend-api","prompt":"为RESTful API创建完整的API文档。对于每个API端点,记录HTTP方法、URL模式、请求/响应模式和认证方法。包含认证系统API、品牌管理API、型号管理API、OTA固件API、用户管理API和分享码日志API的详细说明。提供协议特定示例、错误处理策略、安全考虑、速率限制和版本信息。文档化常见用例、客户端实现指南和性能优化技巧。包含API调用示例、参数说明和返回值格式。提供调试工具和监控方法。包含已弃用功能的迁移指南和向后兼容性说明。","order":4,"progress_status":"completed","dependent_files":"backend/src/routes/index.js,backend/src/routes/auth.js,backend/src/routes/brands.js,backend/src/routes/models.js,backend/src/routes/ota.js,backend/src/routes/users.js,backend/src/routes/shareCodeLogs.js","gmt_create":"2026-06-30T14:04:20.638264+08:00","gmt_modified":"2026-06-30T14:10:41.230618+08:00","raw_data":"WikiEncrypted:N3UbzwGjCC3xD6BrTM0cq1j04iiCHEqviOrAoLLUfGDtCxYctzqR2At1GtmCrwAkNRcHgUzXC/oU+pquLUAJyJG4QbY4uH8HShHwsSaBVDFWOUg5Yt9aKSem2W6e8/XsvBH+yP21CSU0WyXIunvAbMDWN2E2tdW6Wzy85z2Q/R5uQyWZgy2mpBkGdGtFA8tnpiTWGrll3lHHu51hSPp8fubLI6JOYB7Pcw5m81DnxNYl30Rt/HNSOzY2hn6YlxZZe6LYmbGYTHJFaQ+1mi9pLEDLwyAsd2NXDHCvcH5PyODvHQQiWusTZ2CJRbKqnQ29hlTXhH7vxfD6JA4CJLUr1IQO4O+sNaKIJM2yqvq9AtsVFlDiSbBbx0hHeupPxyxoyJrkbQ0YEnJYE8vcEVwUMFYBaA73AgBMVIgg7EIO6aoO1qtVQOCj8O6WC/bpRRG0VsKJKCG0cWJF2x1R0da2454d/mYk0E3sNIdLAYefmKn5znpcSVxPYUmIasm7sRHIngjfBQy3oRnj8iMwUo4jJVzUnK7+SXmAFMGJnkGsPff2MYZK1ziPEV2jaUxxsuLG+ZJVOkkPArausPuO+h0DzRYrD5rtNlQHj/M+VdBjK/fZjUHU1VYdsOAE1Owe/XiTW736BtdVxEahqzEy4KjCuHnbdYOecFSzuuJBu8+IlaAIS12uC5MPrhIyhcgnimmvjDGib+IlTsmikIQS8yj/M1+iuWVwDonBYGcgL/M4fnP9tsUdLa0iICT02XF5rsFc0k3qg8BcCd1qTG1LzSDn0OGKkrowiNxsp7if26Sm14qjk/kMrLV35NzhCrv6AE1YQGMD/Dw9P+dhQT+6f+GNG7vvKDnkf14/8gSVoiZsVqvGFSRbn+uscXceS5KZOfRVqzG+beWC5lBGoBu9NDft5xzAlWLF3xkgw3v7JBOOs53KoXfRuWlF4MjpF/L9Pi0K8Zdy4N1kOcHDKfzZTX19J7qHEHGfaKEhLP+EJzuy2zgGMtSYa9GSR8ku/SMuX6kyUbmmBRECqXb4ohzFJZVKEysRjplQzr9b6kLmHq3DOFdeYpQjJVFbehRbFgziE66TVVVeSbE7EuqOl3E7mVe0w7GgLODvHmOCTJFVMvcc3Ci5Fe9jWyomiNykvjfxv5+iLlDrwAGoXHYeu0dvl32TPy2yen6q+hOAxVtrIQh2efNFU7L9NmApvpdARKuQC9oYmvDtTYb3ifOXMRtdWJNUVz8DQCf8jo9QF/5mlamAcnhWOR/muhUCtnB+WZbireNw26SGG5yt5NZLrMJRjNxWgM/mQ/K47LoKgPimdSfBDApR6MRTXyI/wKP5Lxg+UYUGLapLKqHrfamPFlWtyAMER1HR+wzMaIU/5E66GbWmR2s9oQgJpWfELjIUlODtmHh8trWp1yzOUXksZH/Kooshmmse4XmZ9upGxeADqhi9sY2ReO9DJZcGZzy04R570EuL/pWLoXP7E9b406rBlQ+pGAtw/Lj+/nK1LkZFclvYsH4="},{"id":"b4054b83-f0cb-4b7e-9b3d-effc904a5686","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"用户管理API","description":"users-api","prompt":"为系统用户管理API创建详细的RESTful API文档。记录用户CRUD操作的HTTP方法、URL模式、请求/响应模式和权限控制机制。包含用户列表查询、用户详情获取、用户创建、更新和删除接口的详细说明。提供用户权限验证、角色管理和状态控制的实现指南。文档化用户密码重置、账户激活和权限分配的功能。包含批量用户操作和导入导出的实现示例。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","order":4,"progress_status":"completed","dependent_files":"backend/src/routes/users.js,backend/src/models/DashboardUser.js,backend/src/services/userBootstrap.js","gmt_create":"2026-06-30T14:04:55.156387+08:00","gmt_modified":"2026-06-30T14:30:22.110712+08:00","raw_data":"WikiEncrypted:pOan1y/G3TzMEng6wi54Vc5wz1mwLua9oaQGTUm9cssalr5g1toTPIfYljFY5WaWYpIfvMfcOIPjVC5YrZe6T0ZeXnIn6qFUeNFA9VkQiOd+eP8PI9TknxwVIlnH8jIbIwUHH+P6UkkSNKkoEQ1Dgy4tQyZQ/BwhCdLqQABUIXBPU5meJ+X6w0MX1tiAe3bz/ckrWZcMva22ulspZnMMC1Wk3aVoZim2mC/orMFko2LdLZbXjVX8uNiFeB8UyaHHY0eGKN3MEHmSchfVJBXzLJAuJlUXl365b+bzfvnnzO1j6LwNYJMluGW/Bm8YNNXxv/nIBbzYwvWGjn/7eXoSDSP8c2D1QpN1Vtejf68ju2Xll64t71U4ToaQ6nUYw5uqsUgZDj9zsGfOjV52J2RWSeXnUQ7cUo+WLL/4N/5+3+KBlnUUuc5rvgZ/SdfIBzoYoyeDi+IU/K8j1B2CXPKNjSY7YV929LeSJGbcYxEdA7eH0c0zY7gNqyy/28oMx0Drkn/jYuCiMnKuQHF05L3581zmgFITJkAamXJV087BZCHex0iiYzrB2yS3QXrUCRMa5YfiO3mhv7u6C5A1bzqtY1b2pX30yhhKw71FwAuA172/tw63XUnOXjQ3M38mTt5hhxI+Z27ySXPk7jZs6OQosySBxga+SW59BdQWICrvO0/Jr8CqbIQ4usht8J3plxZpAOasjahz4ung4eJEzGEngpdQmNouctQvHBWOSXzbubhIGXplonmBfLNDPRk81plmJsV/vS9cNjIOPCmHJxQAXdEExTKuqASOCeD02Q7iDS3H8lUuIkNaF2mqaGwJXYsGwglkH2PtJIPpV7OLPmu7BT1QM3Vx/EK6EgWK4AkX8njheLaiGDxuJ1ZboRwInEgTcPY7PBX/x6jg4JI0TnG7jozxFYvNGlQR8xCJZ4SXSGF5mUM2MerylFlNh4SvGysXSDbMoo9tzYOFrwN7HD8ao7wuyTqK5EauHRjJiy7DQ1xhkAR+8xbFglSPmyzymu4KVhXnBy+ad2/UhT1vc3j5G2I+My/soGEHQUDr4q6/0Jk=","layer_level":1},{"id":"7a728623-5bd2-48eb-80d9-0f253bc74123","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"用户模型","description":"user-model","prompt":"创建DashboardUser模型的详细文档,包括用户名、密码哈希、角色权限、状态管理等字段定义。说明用户认证和授权机制的实现。文档化密码加密、JWT令牌管理和会话控制。解释超级管理员和普通用户的权限差异。提供用户管理的完整操作流程和安全考虑。","parent_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","order":4,"progress_status":"completed","dependent_files":"backend/src/models/DashboardUser.js","gmt_create":"2026-06-30T14:05:22.624965+08:00","gmt_modified":"2026-06-30T14:30:58.467643+08:00","raw_data":"WikiEncrypted:piKNT601qxwAxFbFc+bbNzJoKRWjVA24DZgSuXUMKeYDI+Vpob6SIDpceCgG+l/ARXk22LQbqNrJSpxaw3lYcwfCs/ysy8OCLL5SJdUHJVrbRwBO9VCr7EM1ykzkC72RNFstSYAcnBFNhGMXw+lvldpEXlEqZE9WwOHqS96NXNWqbxrN5aNChpOr2Rclp1ATRSAz2nUS+IeeSx64uQOVL3aSyP9BxlRPnARz3KagI4h5xFbrFRmGOu+2fHjVv4mfGuyBi2m7BOAvsQRAReO4aLFcrb4Q4d/YoU05hkkDJCsF+uw1h2wLNYqLbKVPnnQ+vXJsPReY5PN1qLbXnK4SYp2DGFm9mcWTWJYYzE3plH87IhZQUyYfFFWSWzNA+oWacGaaij336n0rQ1emfUynmp20c5H12gaAdeJnKNtilwuveESCgjV+cpQeQFNPuSBymzN2EYIYg9aAesv2HK1H3PBo1BRPR8jsYXLLErgqgfSevZLVZGasl1cVMkdzhHd3jXywieDpMk0OiXw2TzVbfD/R59mDLQ/8RFFCxIY4Seg7wwXx+w9Nk4zHDmIGcT2ciMFdmomMHsiK9TT5/bl0pCM8PpQi8V/abMOyhNZqK2NO8mgxpys8XDLzN2vunY5DWeD1FwI9Do09XWWByBmvOhSAQnZp5IvO+Yc1FEzRSo4NHjxKOXDmFE6f4WRlmoKnttDNUMGRnE0MXXnbj33ztpBqhSkH2IHqEDWAYGb03f12CEM2q4RcTHO1fbB3ZAECoyGOC3pmIqTyin9JECRtDQ==","layer_level":1},{"id":"4d08f4ca-84f9-4f9c-8d9a-0983f78a7005","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"用户权限管理","description":"user-permission-management","prompt":"为用户权限管理功能创建详细内容,深入解释系统用户管理、权限分配、状态控制的实现细节。包含来自实际代码库的具体示例,展示用户列表管理、权限分配、用户状态控制等功能。文档化用户模型的配置选项、参数和返回值。解释超级管理员权限验证、用户引导初始化的使用场景。解决常见的权限管理问题如权限继承、状态同步等。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。","parent_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","order":4,"progress_status":"completed","dependent_files":"backend/src/routes/users.js,backend/src/models/DashboardUser.js,backend/src/services/userBootstrap.js,frontend/src/views/system/users/index.vue","gmt_create":"2026-06-30T14:05:25.898001+08:00","gmt_modified":"2026-06-30T14:30:59.497744+08:00","raw_data":"WikiEncrypted:A2q6dsB1G5KaNgPAwP2ZpD/NNAqdMxLD500dNl3wstxRlsTO1UAX3pxjxaiFL3z0As1vXXbkbHu4vNUGPLAL5aQdvyDy/rpc97235R5NBNTdhWQsZBMstzLADK9pZc2FHGxl73wo/dEkASQtxoZ8c/HAPRkbzM7NeoD9dIYUm8IACZdB7XsWNk9eYgM1s+F7EamxXZeo9LRcbb/Y/YFKbxweyfSjWzXvXjvoJz8YZ3tGNPnZgwl5qgSc7Iqd/zEcwe9suFPVJyoHFnfJNUH/kaeWu8f/cHWsyJGasZNAaAwZBBs3yTizjbbGBQE3c3I9OoTx3e45q++1SKXw87o4e/05qmBvNeVZolDT9qztewrGf8fDjB1GqNNK4z78df0HVIaQFZhhhIFgSY47aR+4kMu5z6cAMD04SbGH/sGtdnmsA6r40hK+TgrjJ7YJEn5YDMV6ULhMS2AGgCAgoOoOaQAYdtp00rHL6DqxWP7Ayw/PrS1EGjonvJDwqy2YY4Wu06Ti9Sv/p3stKU6l6v600sAU/HYdfnDB8XXCaiCnr1aOXNMMzow2YRdFlIzdIuCnb20FmdM6scyabPlKwJ+Q0bqI1kP3t1AzsMWzBOu/hSduzKJtqJdugcKam/IQ9dK5dNWVHOLXVwDMONyaqpurXeP0qrftDRCgr7tfAe7T1F17lX6F8vAAFXSSGlwuyU3jsLTxYLSnIBOiSsa8RpX4QosLNkYfmULBdd3rabnHteIWLCeywBzzAZwJL9/1WtaxYZ6upIjMsLu6LvNaXz7d7tfg2XqQT5SckfhVnsfs7251aj+Xj1CmFmER0EUEKiMtS1VlphUcRYaWP3cwRjPgIItB7hTHnDqlj4l8pW6pQm9DFy4luQ83CJlsw/FEjW6lloK8XYhGAiGN0PR8dTYL0LzjOi7h9MbZ3uCqrW4Sus9kHxcVPN1Ubt6Pl3KOadbrS5pfUae8rpFVss4Dx4K00tLXLycXKmVHa5Ctl1Z5EhAHn6/G+a2oo9L9ymOTVHWuMrH7peksW83s4aykHZ+cX5kVMOf4+wmVmLlrnYNHZ/erqFhdMHJjX3WoWzfJ9JbFm6j3AL0Rr/+/gY0h2U5dGO/ioG+M11sSM0TnmIHFSvQ5BMA7LQKYm734RsnlDaNiR5GUtVCC4ZGa0Z8ijU4iHI2N9XnTa3R1UEQAqMMGE8eAg7Mhy+eieZyElZFJTkhPbbPE/T/rMkbtaGNqMan3KohQvlP8qX0Mtb4UOYnI8fd0RwahU3KVQYEEtwhMvf7LRH6zLOVlQjtT56TgSAPCkla0Co4fMEDZpLDuSPD972VDq5r4NnMIk0ZaPfNHWcTgD+pAIL7IDmO04KLJV0h9lEguVWpMWskakEkbQsD28FQ=","layer_level":1},{"id":"f23cd2ae-fcf4-445f-b8e9-b3382f277ae0","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"OTA固件管理页面","description":"ota-management","prompt":"创建OTA固件管理页面的详细文档。全面介绍固件版本管理功能,包括固件上传、版本控制、强制更新配置和发布状态管理。详细说明固件文件的上传流程、格式验证、大小限制和存储策略。记录OTA版本的兼容性检查、更新策略配置和用户通知机制。解释固件下载统计、版本历史和回滚功能的实现。提供OTA管理页面的进度监控、错误处理和用户体验优化方案。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","order":4,"progress_status":"completed","dependent_files":"frontend/src/views/ota/index.vue,frontend/src/api/ota.js","gmt_create":"2026-06-30T14:05:55.603184+08:00","gmt_modified":"2026-06-30T14:40:01.705802+08:00","raw_data":"WikiEncrypted:Bqe2/ExZLi+JPY3rrDJCu4ubXW3Wu2slfxMmRGTJQqMXOsjUivTF8gq55k/ZVOW+qZZHxg9zSQKIb8WiQsewLmXgIwuo3SupWcGnQ6xF8EUGFe30PQg5NQi4zZp00qKICGa403ukVqzU2XiwImrT/03199tKl57/lGzAsuxMqCbCvofh+Tw/qkW1OCtqga9ModmN5Dft+y3G669f4K2vjCerp4PVPrnXstFjtHtJiQ2CSbAfFwR35DhUHJZ2jHWPhH/Lk27TAymaQvjsi4Ogb8+GAGwfCWS1TSwC405U0aG7roHUnS8c7xt0X0krD6N3MlMpALYNuaTJ5vX7QfIFlvBA6+8wosL6w661TXbheeqMctU9cw4aU2yLEIYnEUInbkNj0zQqS+voyIOv95iDeSi1Ru5CRACjstDChsqpHkHriqoqCok0uSTARtI858U0DqqiosWFKEqQH6JjULYAYuO+zjO7CX/BnDUZlT81OoWgqviMBL6qIFaAB8ViFoU11gN4tjjrDXRDm+G8RyTyj0+ZoIWqqPSNvC9iD15/p5PHfW82PBYCNGj8eUu2HUrpdCbD7HWAz/YZ6LeSdPmCt7XPOAYLFJFdZL1W/3i4rRewmcEF9EKmMdF4CZI2g39O8kG2LylACAR0kxH4x/DPnqTF549pkQd9f1YBp35qFwRyAKR0JstDapveMFxUL1gV7hokfezFDXhFxs1EjNU03tYLxzC9fUzOBSZlMF+dK1kJOyiEOucLLB3fT8nlHTKH0vGle+AEfoTbysclDjRcd9NIQt9h4hvozLxVx35GmOx5+CLrGHAXVBMiGh2weSdXXbYknBYNChL0ADfk1cdItvBaGtR0qU6p6VDieA5ejNsyVua9xo0MY0eWgCMmwqbFXILJFNDq0nr1qnyfluFaYq/FyiLVNO9yN2GMFa82QITc/2xEBXJgv82OFOBZdqk20PqcmG5489ZEJJ+D8wDl9LtxqGFUka9lt5yTTFuu6QtnKMXHxEXoqAkmCAIwdj1Z","layer_level":2},{"id":"aa2583bf-2c6e-4792-b794-1563db547d08","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"前端组件","description":"frontend-components","prompt":"创建详细的UI组件文档,描述组件的视觉外观、行为和用户交互模式。记录props/属性、事件、插槽和自定义选项。包含使用示例和代码片段。提供响应式设计和无障碍访问合规性指南。记录组件状态、动画和过渡效果。包含样式自定义选项和主题支持。解决跨浏览器兼容性和性能优化。记录组件组合模式和与其他UI元素的集成。详细说明侧边栏Logo、标签页视图、布局组件和各个功能页面组件的设计和实现。","order":5,"progress_status":"completed","dependent_files":"frontend/src/components/SidebarLogo.vue,frontend/src/components/TabsView.vue,frontend/src/layout/index.vue,frontend/src/views/home/index.vue,frontend/src/views/login/index.vue,frontend/src/views/brand/index.vue,frontend/src/views/model/index.vue,frontend/src/views/ota/index.vue,frontend/src/views/system/users/index.vue,frontend/src/views/share-code/log.vue","gmt_create":"2026-06-30T14:04:20.638638+08:00","gmt_modified":"2026-06-30T14:11:17.430176+08:00","raw_data":"WikiEncrypted:rJ/rIw0gVau8jPGqKFBAsBQkxmdK9VEWEB6rlQ8V+1n3+8ehC1YI3uvDR9AKl6JkUxV+3U9CRiifnSLpQnnLCcDHafY0ujJqoG3mrKKLwcRefLIG97HCvpjj9xp4OJcObEYBvlH2pirjv5kfcD3coj+uej2+6It4OTgW2/0oKQer4Q7Jd3Xj3CROmzgzm1LeW9oHFyhqH7niUp8ounxYBAbQB6XdHwIaefNnUgBxo1FjRY5CB1LpLxEjRSkY9CBNS2Dfpl69BuhxVtiLlOBNsl22N9tUH0iPTEXk6TAQLd4Vb7QtJ8CCyPAtkpYnKU5QcfIO0Bcvp3MjVk52MPrRkpqhDzgLNq/58gj0RreavkJSyaecu5m5ingaM2ajsfwmWctlEFTbw7A7cpt15Z1RrVcJLo5T/4M0EFp2moBm1frk6hoO/SHg+ZmmZaSeN0CvbCvOu4VnNuh25cYO5dfRb5bD7aInrtFDRIEFVioUhtHbToaLmNbDxgYKC8jX0WO/lCgsNRyAqBMOVG9YywTcUyCao4ULaOYmT7bGHur1f7MHzT3Hcx7v+f5YDgtl7gIF3c37iMffA16fAhftd84iZA7DCWaR+x6ijSk6EVit7zN4bWFerdddsjBKgaNBH8WGTtsw4GmTfKcQ4lOr6kHuWwzvyJNbUAxVswCW7Kl7ofivxTaQwWtkjD8l6roq19h8uSRl7hqI2NFmLS/Mxuw5m9PNBlo3vptugDd5TAmLgLPkXnnPAHW5GBqe29HdNyEhU1vWTlQJu6TWrfVmeJrgLD7o4ciYSWBNzEJ0CMY19O60jiToNgpa2eBMrM6zgdhA9AdCdyk0sCCEGrNB18vMHFvtY96o/H+sVIVQsAsOoTx5sxOH0A2SJQX0NWZ270aO/huXZgV1r6rJV+iSPSpCAC4cXQ0EfI2bDDSzzWOSWezC2pwi8hfePFC64jC55cf1K03jW/4TH/MRixvP7PzBgDJ9WFTF5wLqV0IL6Rs/SDHnWnsbJ3+k2MGhSaMOncA89PGFNupdNbrk4x5luggzyTcc84zOUmn60WPhUrJZMAZfkkE4tKS1XRLUkHoxR/1WwL+VDZlaseEEFKZLWyNFBuGAscN09RzwicXS0WVW8CGZaAxZ8oMaydUMrZSqZMjVh7rFciLtXlbV2udQvIWE9dLuZVEGazVv+8BwkERKAXlPfl7VKo4Jpave0m0QS3JnRoK9RpQwsDXspauvY7XhvO4HvSwxXI1MFGjZBaqWEJCoEDzioluPgZ59mP+Zcf5AOw8qx+xLBLYVuJimxSmpplLeIcpRAD6GXIgXIpAQ0ZW629iB40UUtegO6jlZZMjEBNfW2h+7tArd5TmsR1GjBW04FHckaxFGn2sd8WOF1DbTN5g0lAkAKy/cGNjvEE1ZWKAKCGgv4IkAnme5huEBC2w9jqVDA6/cxoVNI1PqCHuZXtfmBqsygXhLj977b7lhgSMLm+ZyOl0F6tiopYxNMXhWjy1wCRXMPU7hHtqjeBok3Sb25XahZAuSPqzZ3MYjV4+PJHTejHONP9ch60/4uTU1ZmPSbYxlP3W91KjEOUHl4J79bUda7/K9+Fa84mMZvhiy1EOrsjAANGlQFE4+GAMHNdiLb69Zhc/CH0q2EaU="},{"id":"a6304333-66ad-4b0c-834f-a6a514069e3f","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"分享码日志API","description":"share-code-logs-api","prompt":"为分享码日志API创建完整的RESTful API文档。记录分享码使用记录查询的HTTP方法、URL模式、请求/响应模式和数据统计功能。包含日志列表查询、日志详情获取、日志筛选和统计分析接口的详细说明。提供时间范围查询、用户筛选和设备类型的过滤条件。文档化日志数据的存储格式、查询优化和大数据量处理方案。包含日志导出、报表生成和趋势分析的实现指南。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","order":5,"progress_status":"completed","dependent_files":"backend/src/routes/shareCodeLogs.js,backend/src/models/ShareCodeLog.js","gmt_create":"2026-06-30T14:04:55.156497+08:00","gmt_modified":"2026-06-30T14:32:04.002947+08:00","raw_data":"WikiEncrypted:Vv0H16AayoBzPxX7ZlaOUGyGBdIMK4cf0QP9R1E4ivY78WzOdR/wvtMHeKsZOPO0asW2W/MvDKc2jNyZQ+LHngb47F7NF4YJSkCgZxByRVJgj10T4wWac0DckADW5AH88CZpVx4BBCtuW5KRlakkySQXJ0Vhm+mv0KwUrtthQTb+hq/5FeNYbS+kOr5euCqYQ6wwEmLbt10MSZp1WKWdfCf7X9KcgY2Io011J6+JnBsJnbbWDcnhkvMDFUdGk4GwKyEMiedTBkgb+39rNaRYcnJAsprHfzqiWCLqNoVAWgXLhDwpQo+Rj9Bju4u0x7yWdcWAVxIhjtS1HTrpnn7SF1fT+zQ9CwvBC1jdBr6zPv2EEfd9aDeDmF9fusxmxrz6O9t8G8p8DZU+16l6SzrO24RGp0ljE2hnue5SjY7K50OQ+9U35K/w+G/qOjEOt/Xm9AhDSALYcylw0X+3TFn0Dw17GvH6f/i4Rkt7qMYvBGYUby2TfoOMz8t6dGm1c9yflUtfXDVmMEwmVvMHLCRtuD5TyA5dQ/ZMntXUjliHSeS+A6CWlqs3JxRZ1RzMhrWSMPoLaP7KkI0jtFbNfasJ0Og/s0lvoq5QfTYeaB3SPAVOrEJCTUAk1WJBefCXaJLQJWM5BL41nZaNCLL5xFdD7vrcFofJoqf8rJdD76QntawCuPNY82NOq776fFPBqp80R5e0OAsB0SDbQ8ij7hs892TDLCAZD/uQpah7kDXRz3wpPMv5Fvw1Vx5dqBUU1Ft8O6oV36Svb9q7kzHN4uEsXSGmQqxigR/bDvMFj9wUMlwgWUOgeKVG3mvewBOFOO553ePEGez98IygIUSyEQH9u0EEnfXlX8Ctc1L/advVhMuLFfDBj9GSPmfqkcpEekoG2IhmUo15MFwKOmoR6YpBqaOeGU3M+ulhTXCdC/XVY/mQ+Tbruxlx4wSxvEVLqggywoVkMab3NqXnh2yrndnibentA5ka4iDfLNAT2NAPvzDWenmrtjYrZNRTiDoH4ZjahTBysR+ESqmTOnYPQcmU9ilGcP7Kf8y8xEndb3tWlBE=","layer_level":1},{"id":"e1d1f354-edc2-4c91-8d91-63d256dced21","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"分享码日志模型","description":"share-code-log-model","prompt":"创建ShareCodeLog模型的详细文档,包括分享码生成、使用记录、时间戳、用户信息等字段设计。说明分享码的生成算法和唯一性保证。文档化日志记录的完整流程和数据追踪机制。解释分享码的生命周期管理和过期策略。提供日志查询和统计分析的功能说明。","parent_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","order":5,"progress_status":"completed","dependent_files":"backend/src/models/ShareCodeLog.js","gmt_create":"2026-06-30T14:05:22.625325+08:00","gmt_modified":"2026-06-30T14:32:46.410606+08:00","raw_data":"WikiEncrypted:Vv0H16AayoBzPxX7ZlaOUGlhYbZc4czqT8CWfnD/TT0eAt7tg/OAA6mgsocPcmsvG2PVtH5KfyjJ18P9rTMPxOEyjU1Gec605uXe0T2Yc9Mio8lwWTXlLiR9CHDgdmESC5j1t2aKR8fRd/OqASPFvLiR0grE99PCeoM7ob/y5BtcgxZWjzfCnfZNCwnjfkkosGhR45PqgoCyAC2Bvm0kMJCqP4lVPKf04wOTjSbr4eSl32wo9TqavhtHLUKJhoU1BhZbZ6uV7Gmzaq1mQWqsX71L36aDcvYYmopGt7DE2LJksbYCFrrNBgRhFv+N43uZbN5WL7wVhpvK8O4TVwd0FOwp+aZ7iAbUL7tgjCR8xtXJS5q57NTemsro4PJNWVbllR6P5VHcrSDBmtHsa6L1bXDOBei3zTdzkwRq37T3c3mujEECBZ/+Mz/9ujMM0yIhcbbPT/YGEGDAiU/BRLBAOMuV3WWC2MQhqRkoipHvCj8loLpu05az/NRT/cd/X5gfi0y7vJvNz1FLlIiiUEZfQro7D7k5gwTCP6/FBmDYgfPSOCN8xZdyb7gHNanf1+Cqj69JaEgpM8cJM/v7a47fURXAUR+wy+lsKH+YapUusdACBBPvzGrGTJGzBX9gZVLFdPZFt35TATN0bywZa5At1ySd8SIj2B3St+GopTloe/mXlC4w6a5oi4MsUi1aQNJUFynSnhmsvMHTFxp20vLRYRzH2gO2ReFyg+ErSFjXFKLsd7zrW/lMF0PFW90/eb7fGWQwoQT/GJ8bv50VRjO84z4xEz6cvM/y2o4LjMcbv2elQDtp6lJ6TC2Z9jG61tVu","layer_level":1},{"id":"c6207e0a-6059-40f8-a27d-367356363cbf","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"分享码日志管理","description":"share-code-log-management","prompt":"为分享码日志管理功能创建详细内容,深入解释分享码使用记录追踪、日志查询统计的实现细节。包含来自实际代码库的具体示例,展示日志列表查询、统计分析等功能。文档化分享码日志模型的配置选项、参数和返回值。解释日志记录的触发条件、查询过滤的使用场景。解决常见的日志管理问题如性能优化、数据清理等。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。","parent_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","order":5,"progress_status":"completed","dependent_files":"backend/src/routes/shareCodeLogs.js,backend/src/models/ShareCodeLog.js,frontend/src/views/share-code/log.vue","gmt_create":"2026-06-30T14:05:25.898159+08:00","gmt_modified":"2026-06-30T14:33:14.029388+08:00","raw_data":"WikiEncrypted:Vv0H16AayoBzPxX7ZlaOULG3Baig8xCTbO2Ahhfn4705w5gj8ZRYmh46RDQMtCZDcT2ci8E8rsm8C/ie07Z01SjriTUMDr+8A42/BBZb/vivf/I1Ur0WP4FZh/48LAYVnwRQ0GNifiKYZ6r/iL/jguQ3fWxzUE0M/+R6HIELC8yJAbp7rcQIITL2AxtPIlU2pCBK/DCcqQD+ZybcLujwZWxLN3sOZv7I9hqca2d8RAp0ZUgYqh+tSW9DGD0yS9XHY1QrXl7hsXfIgSTvVprJ8RT5HOeKTMeBxcM288vxkz1ghLqaMTAik+OQN0BzR56crsJmaCilWkrOAX9R2xm8hLfGTGTwdwv0P6fYaXu6VwOHBRDHoIHfGrImp4IIqNl/qAQnBVEIF90ZUdARF/K4lVsKi5QByQzHd4xlLllAAhTWwK9S7HsZZ7T9HP6og6LjL0bhFAv7f4lX1gq2+EcdF4EC/sLc6w4D+SdCSFgVU0xdT56IyK2HCqk+Oa3x3yOT6iwe5gfFarTyyXSrSV3RDHIGxTQjw5ZLgrseB4w/uQSPLjoDkZLP8d/jXwMcNr4bqp8w9PxWyrUNViTfQB/UvF0DUtxSE2j6+nUvqGdl8Ix1VA62otvJvJFAikk9gVFtOHg+3qSjX3bq++/RQqakUc0NNE5MChQJYL/ZUX+MsmET7zMf7f8n+x8AWQTkhv433TAIPxZDEO7EVVshX752wWI5rwX+6dwESN5VijNJl/emYmtP7TslKL6O12aJ/nVMD0zmRsBl2iHy0RZkN9eLWDa/pklLR/Oqz4Pm2r2Dd1lh8gU5sHdMMVYjz/g/hdk4KVkvOKz7kAFP0wHLPPzNiplQ18EUANo91+uz1Y5VdeODz9dktzaFqMjD1octmfT4pX5YAT/zhIQc9MsKjbHTAueD6bqZxj3x0qiZ9gh05gFbrskmk5q2ogQ/HzE3E4lrM6f2tYMv8KzXjP7yKEHcMOBJpO9dQZd5i7it8/RiUAHSb7Vti8AKU8Vw+TOV55DcDhFbK5P9y2qvuxqUldoMQK17B9wEx2nncwPjOJP5wXEELVSCNDm9Z29WK5LjvNExjGy7E61ilKE+rLRV8OMZoA5ighPPFXalAtu7mLH9y8P8lhjNfSKFoGWqPz0GeSGHgYiYIJ2uAMIsp8PabUEf93feQ4gaKPupXFYXWZQFV+XZOLHbet0vp6KH5TBD2X2fQHG4FVe4IHTI4T5kGOpx+ZDv3WPjRDrHHl+CCVCwlkaovZU1dGMSoUsss8uXaSH63mv5fUu9tAM01OquwkJLbg==","layer_level":1},{"id":"ff078afb-bb04-4600-b51d-5af48a6a6f06","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"系统用户管理页面","description":"system-users","prompt":"创建系统用户管理页面的详细文档。全面介绍用户权限管理功能,包括用户列表展示、角色分配、权限控制和状态管理。详细说明用户的增删改查操作、密码重置和权限验证机制。记录用户角色的定义、权限矩阵和访问控制策略。解释用户登录日志、活动监控和安全审计功能。提供用户管理页面的批量操作、搜索过滤和数据导出的实现方案。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","order":5,"progress_status":"completed","dependent_files":"frontend/src/views/system/users/index.vue,frontend/src/api/user.js","gmt_create":"2026-06-30T14:05:55.603342+08:00","gmt_modified":"2026-06-30T14:39:03.429018+08:00","raw_data":"WikiEncrypted:gWB8HBj+8+/15rQhXgtMjBvJUaTQCtYwqrk1rWKWMXJ2ByhuPeDEe4J4aaVwd0GgkvyTIoPxLy0LzUPY8r27d/l3kXaZv/WIKLhXGNj4yqu/L9TGNhQd7PzwpK1IySbUybplyf6amFlUaZuCaMERjNdevMyzFYtpxg6ayafgmP7QZecNCYUUM3UDhFO+jU77Y3eONzUMc7vXH/eCT/Dc8cixl5LBJezboIymPfUKgJeIdetGX7IbiD8pL9tqiP3VV20ENuC361bvx5BHKgEgEz8r0ZRf+9GIa42eaVqFk9oS/OowsTalFP/WZp8IvsoQDgbxWtLfVja9CdwkAVvNFFoL92QsKVmMWwH4lC52GOFGmDtwWsWbsAQ7SC3FGCM9JqnaqrBk9L4OpLg7pbEGasp9n9YM4uL0i51ofbrskfLA7c5Ic8YWcfSq+YpP2Jfq2SfzWhkv6/69JsVm+ZeGECDYz/0BGLtJxuOHkE/X64/lMwm31m7RCbzrAT8s4fv70FYcrJ/e8ZTbBJJZ3nT1xOeu7NNolSYaUNRMKjj1f5XkM/bMio6syjKv3/sgDYeom2Z7KNC6qSiTtHSnUhR42TA/gepnPqFc654KQYnEbgtAxassS1rRCPSzZImnQue+Fm/xTdC7aQoeH7W9EGQhx9d/VKgE3DtmwgFfod4b9BL2E8Y+tjinaohB3LFSs0ywB30qKQeXZ0P5O00PShkYvMrnbrMgSYl9v1ikd2ca0x7UQMeS/9tanT+Nifwq7peDxs+vuwD8itOpOhe9lmEGyaunK3mOmMNU2qUP/IsFh7AG+0RI+ia2YOGLXRp/DAbZQOeiJotMpzzCetWsU2C7tkh4up/34yJu+PlIernbNrohRmq012Vk43bJsJuE/ozXHeWh2abw++XRn0rdJUXv4oHuxv/x/ou4BNRGgqxxLsK2sH44gu1qYF38dnjvjwos07VT3aeLuJQHfsrl3acgM+AniQul0Xzht3gFgcf88x++sScG3dMcqdCzRdr2YrFR","layer_level":2},{"id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"核心功能模块","description":"core-features","prompt":"为核心功能模块创建详细内容,深入解释实现细节、调用关系、接口、领域模型和使用模式。包含来自实际代码库的具体示例。文档化配置选项、参数和返回值。解释与其他组件的关系。解决常见问题及其解决方案。使内容对初学者易于理解,同时为有经验的开发者提供足够的技术深度。详细说明用户认证系统、品牌管理、型号管理、OTA固件管理、用户权限管理和分享码日志管理等核心功能的实现原理和使用方法。","order":6,"progress_status":"completed","dependent_files":"backend/src/middleware/auth.js,backend/src/services/userBootstrap.js,backend/src/validators/brand.js,backend/src/validators/model.js,backend/src/validators/ota.js,backend/src/utils/jwt.js,backend/src/utils/password.js","gmt_create":"2026-06-30T14:04:20.638906+08:00","gmt_modified":"2026-06-30T14:13:04.758812+08:00","raw_data":"WikiEncrypted:luoNp8LvFa7zGThvIT9T4gfD6KbzJyTAydbcRfVv0b71O04CYqWd+mhwOAKx5JsjRdElm0elYpXWbl1GcuBvfF0k/N/rYqIOGrNDyuFsYrr3vrPVHqwKfwIO8ii5FyJ9G2/CDKYKxfMvL5/eI5LLiI4dLJtQQ/EdXK+jGK6/3zTIZqdWj6UWzEW0mzY+65TLZKIQZsNDvuMmW4V+typo30j85XSOUpwUwj+/2P69d0p3/7KOTGhpxkQJpKwSS+Ou5oR7kyDTwjuBkFTeJYqyV4VYROOqBypa7dwYKe6Knr1LT+azHmTqixb1zXUPJQ6p979figgTjll32+b/GM+0T95z9Ds7J33B5KOsO0LOJ2cNLWiB+C528YQV0AHDkFf1mTE6bKTBGolo1fT4KVvufyT4JAn0aYmpJDe7tiniUE6tbKy3fen2CQn9ieLIOKFMeUBmDsDefoy1030Wnd5JzFcKgRtb87NRHcsiF5I+V+X2E2TlZUoJoBh2+PIAZYkxWcpXMD8Zpcfv17FAZo34dTydLS3wYxVC1tKcqor5qPs+woQNYAnvSCdaK3H0Hd9zIb2V13Yw4TRtaGR93SOAPzmuaylTjsqmJkhkPpPdL9RfBPI0NWsglIj0e7zkEcku4zGa6Hs0rFAUnvrmhf0fWTCe2cSQGsKT/x/At4Bbv1VXx/iJB5IG9L92sH9auvd3zPQzrXgvmZtIf5veeHTENNsFXlRqyHIlznBprPM1GVkTnIUQw7mmC+4Q/6jSl1Fv7xI6EG/1udBu/KeaPO67Hp8A1YNTf1ZspoQoSGsV4deaNlmJgBEN8AIyClPwel1TmRAOmWv+F7NI9qVhpN4XyaOA5Z3wLMRdd1TAxRzRXgbQWvO74iEk524UaIecqPr3oFFsE3HHj52svrYNQ4mHfD37w2y52cOqC/kcS+4oPBgecVMRLNK8zQe6TeyZZHyFxLrnPE3yPqPlVq908l/SlqwcGa2igXYfFHCVeaXwT6cPl+MscEbagyBiX4x1QnH/S6eX2dvxx0XY+44nhTYGW1tTBXetozbFeMqqAtV0XePJizOGsP3Lj2vFRJAHZ0N4cgNkiQhJ3KlyCoakiATQXJ/Ff/3M4frqDjOKNgpcGoZJVi8mS1gxHRzr2RdQoq+7KSMhmyGjVSrCbNN1TYIcbahutqBg+nR3vJ99qFoP53jpWwT8PrBP9LqIgRxcpoRf37MTX5j/d86fQw49ZGESGNenE5At8gBSjU2xnAIjZ+F33NfP8+Gz0UQ55JvwG8CjDXbe2noRsLFhkX2mEpZZURkUCUwgViZJht+EkhmoJGdb20nl7nQcUCRyeyH6+kS2RDlqP0MbMuZC3N8E2Cb6QEXiCy8cJTjg8OWpIOvFGO7W1FPwPDXlYJsM09Oo/VhFPx5ImU84OMMy2ku3T1pdBwi8FjXr1WPwwNmRTK4aqj4wrLgLiW5u7UXyrUQBDbS8o3sc5W2z0P8oFWcBaUYRtKmdryx/ogHWLuINkyfSUHAgkWx/keTw6SlEAPYdQGXbal3G4vO3aEnA4oCPhflkrg=="},{"id":"7272429b-c7fb-4bd8-9bd1-0093025d68b4","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"仪表板API","description":"dashboard-api","prompt":"为仪表板API创建详细的RESTful API文档。记录系统统计数据查询的HTTP方法、URL模式、请求/响应模式和数据聚合功能。包含品牌数量统计、型号分布情况、OTA更新状态和用户活跃度等指标的查询接口。提供数据聚合查询、时间序列分析和图表数据格式的实现指南。文档化缓存策略、性能优化和实时数据更新机制。包含自定义统计维度和数据导出功能的使用示例。","parent_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","order":6,"progress_status":"completed","dependent_files":"backend/src/routes/dashboard.js","gmt_create":"2026-06-30T14:04:55.156596+08:00","gmt_modified":"2026-06-30T14:34:26.686007+08:00","raw_data":"WikiEncrypted:rL6JaAWnwczCsZW+uBgt2MaU2Sf5hn65RLINj/MhHZqs/HaL1M/vKzdpRke4FGDeaqlgIkX0Vsq6pgMDhS1PLtsNQBQbbup3R7hfDCWHR7czvQfTQrqQOghuXOCS5RshiZIhSV5UutgR3IhtdYwYuC1cGrxnqubBTLaiNlwSkSCBwNnKv5wnHnP/kSTtGschyyeMxsR0xgLm93y19LUJxzQ35x+o+JHgNt7L1clDn1f2Q/ndGER8N5G6D30Ca4ktQc/XzBkD73s6Y6ATaZU4fF9lJjkb7Xouo6VBeWM/AWnZDx7lOLLIfGHZwEixsbqfV3DPFQnQ5ouP8ITf9zPIvOLqXdiBK/eE4w9o+KnoarDckNX5GdOib9xHogvsjnppRV6HPQAkLwj79jVPVWMDFLLrOA7s4nnSkQ2unS6yWJOH41xes7IM36ZsyWIWGoF/ZfncMR2vb1d6KRd6jKE7U1rWCkhwBMRCtJWteXsXljdFTmntEBDtsnylR8gDBvxw3yX85/iRQE3fgUnx1bzG1Csq7hyeTpYLzKCJGgsoGmXQcuPQy3kvG53RM8x3PLEYSYlDCNn77yDInY9vGLH3AEhP8HfRR/ZpbZtEbTEenKBq3Lpp9JNVMypx8WTiGDNr7Uox6UrnQJn77vaDePXLU9RL2zqzb/ft4ghSWgWkGdxcVZuueg+R6jh5VidCS/2lM4RB6CLZx8B4fjDo0lPC5qjbZfKjw3oBNOXus90NdOMlDs9sK5B5bdAy+xI12Ku3TaX9pvbhun/UkHYHxw/izxoU5pEPmr5H4iOsOOjz723tH+aqaoOA3SfDR3E9vWvd1I8qWQrmf409xaZfuoDpga88y+qC2speLpfqP5XDm76K0m5hvzZI5F54vflZN5TXb6GFYN7/9nNbsPZ4oBgYfPy3GhtEe/eoit9VkApe/PFsqnJ/5EEdU8SvT1wjGsczIvpTY4dSR5q8YpQL6lNH2Q==","layer_level":1},{"id":"830433a7-7370-479c-aa05-c21ff47b059e","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"分享码日志页面","description":"share-code-log","prompt":"创建分享码日志页面的详细文档。全面介绍分享码使用记录的查询和分析功能,包括日志列表展示、时间筛选、用户搜索和统计分析。详细说明日志数据的格式化显示、分页加载和实时更新机制。记录分享码的生成规则、有效期管理和使用状态跟踪。解释日志查询的高级功能,包括条件筛选、数据导出和报表生成。提供分享码日志页面的性能优化、数据可视化和用户体验改进方案。","parent_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","order":6,"progress_status":"completed","dependent_files":"frontend/src/views/share-code/log.vue,frontend/src/api/shareCodeLog.js","gmt_create":"2026-06-30T14:05:55.603485+08:00","gmt_modified":"2026-06-30T14:40:47.220384+08:00","raw_data":"WikiEncrypted:Vv0H16AayoBzPxX7ZlaOUKj5ui7aJNjWR2KaITM+ncU6ladAgr1aX4O1zoYG4BKYxYSLSuvZ2LqnWBJ2QqydzLeyBat1iN9bTXVMqMkgeJtkcSlNEEEBOpwdoKxUJii0pBbTaTPljEgvGCJAdvtM6yaGorC0QzbypPecbpVh3DAjgPtWtUIfgnh/GYXu7HMfEOLjMMyQuJypBLnNAvdE2xXmS/QoHf10Z8jKuZHUEbhw3ognUK++ZjIED7IEMXsM2HoDIWWy2lZE539AcsA9nkIOFMRa34TlykOLVIWGhN+H7uZGRqff0XX8Lwt5hNvL1a/3ZPm/zZJtFJRzY1PmfxyaUjEbF7KQMiGdKNAX1ycQenLZ/ynZX1xiEakxuX4S5qxospfzPGG27gDX8bJKL+3QoqYMxU/6AdnQ3DIox9pP4fapR3p3RYlpJRtSqqFEeeU0AUWmUNHPyBCPgHccE+XNZpISolk2Hln2oVX4yMeI9psNaMz1DpxYj4xlswa92pmvtFEAcryIpMdytbdeAPC2p6O1fyHRkNXdSzu513mdblf+dxvTQs9AEKnzH5IISdpT3oqa0TxsQIonzIXjfyPDQ23xC74ZjI+olJBdCnklVb77alqfTKijeVHqhz8E/oBRslPIuRrBTmbr4MUfnnGv4ABxmqo/MJdG1aSWK+VLXi2S9P5Yi5E/Wwu8H8cYl86z0TdwDM5Hl0l+X0abPVyDJOcHyVvz80tpUlxcC6G9Xz4/vjCq0xfqYtDV4NM2ClDyMsuxq67I9S6UOCBAZbHH5N3WOzgPrZNyfbeFUpydMKmMOgBh5GjkQ3Pz2D+83z+wBDSk8PV0mzk0Re6AqwtuTJtZLBFtavN7E0GJp1Bq+B9fOhkW73CxJvwqIx6freEb2JUkKP8CUVULlLyar8uKaRA6QH9uFiT1SJZkH1fc9CMBH3H/RzAhtB21FP4KFAVk/ha2CsflO9bdZVM3OkChSKQ3qPNzib6+R66ZevkbT7skK19HcLJO3Rr1NOP9tTy0Hy9THr5msllCLl7NDMQi1yiK5GSaztoHJr7ZWuX4FV7iAHww5fyqzLeaVFXK","layer_level":2},{"id":"a3ddc4e4-116f-4781-ba9f-17c85c85396e","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"部署与运维","description":"deployment-operations","prompt":"创建部署与运维文档,详细说明Docker容器化部署、环境配置和生产部署流程。包含容器编排配置、服务依赖关系和网络设置。提供部署脚本的使用说明和自动化部署流程。文档化环境变量配置、数据库连接设置和缓存配置。包含监控指标、日志管理和性能调优建议。提供故障排除指南、备份恢复策略和灾难恢复计划。说明CI/CD流程、版本发布和回滚策略。包含安全配置、防火墙设置和访问控制。","order":7,"progress_status":"completed","dependent_files":"backend/Dockerfile,frontend/Dockerfile,scripts/upload.sh,backend/restart.sh,backend/stop.sh,DEPLOY.md","gmt_create":"2026-06-30T14:04:20.639263+08:00","gmt_modified":"2026-06-30T14:12:37.808551+08:00","raw_data":"WikiEncrypted:0IKfLNOWe9mZfG1jVts3w2XbjO+yyEmY3ONOjrL5GjA8+3c0QEcD9OcCVHu+1BW/N5NkoQV86wegqQ9ShX8iSQ2xYIaslcmoc/Kv5OAnUwWV3nuAw37SIDSnlfEVjxgdWIfKDpMe9ANqqSg43yyyS0j6a1ZNPv/lWSKJTBIXQlfQxEh97cKf/j/LT7ms4fDbTvmHrdkW/jEQefQD7MAtQ00jFlMbUkoCaGNftGOahpB8DxiKjvXF2XHkIBSB+ljy8IAN480duozYW3EHkn9BG5DRSK26AvZUAJe48qfnGYdQfTAGEglE/1Hn6EV/Nm/Lb8UvgmdnuBaKTUiZRNooEwAeDN9FVwpQ7worjnl8Wzo8Ngbl2o07Zf9fN+KcjkIURxsPmfGu9sD6V9l1RLWZ6dtbz4WoDiQPm5pDkI0VaVo0KZrYJVqQnyYHiGLgYtwhQ7nukY+LoRhX7Hvp89YdV9IhrLTE1jsDAeCRw579FnnAzgvBLN6zixDwRCyr3c/VerMICukg17xUZBvIhgXPW2oB8aKCvEWd1DoVOOwTTeSRGaBc3YL768bwg/fgb5nMcpkKKEG8oFTiD0WQgV1WrAWmdgqLUic6njl7DH/nPwtU4kvstO6ylEWrBJh8WjjnuFdwsNYNFOXm0yLRUDPlwltGbjmmrB5+TUJes5jh7PSvyD1XFtM0grPtQpYdIM5GZtNYa172rLsqEbW9ZLMORo0XYf0lxg0pNCmBI7/OgcsUnosbnfqoLleFwHsBwIR6IWox1cSj2a8ZP2DdIF1EkS1STU4kcntPhJg/MU6IAHZByl9NaNnPAT9fbjHNYrjgvAocunW1h/GGjsi8yIsr/MYBKQRMHt0Ebx6FyjCoTdVyEZBmj1Ln8n53VqlQUaTLOTlY/+PLW72ayeVV1dbw6nODIElixkXST6BfiyyzGX4NcPjHvrMEj0x7iuPn5XqyNW9cCnIYaLK1POgQXVHvC78pjRvPdQcV2ofQwNXhiUd3OqejjZKYOiXsozbPI2ZmCy/R1XmqKiDotFyd9coZZagRFDm+CP5hAAYjGnqmUIWlnx031QhinbQ19YgTQyPe91UfMnBMYE4piy3j0ar6hKLZHqUrpDdEZc5IhsPiIpVEuUWChMcy/y5JR+jvcKVuXqaFmjA9MVUhyp8t4AslTb+B3O4g1WLlMBmUN1HYwc9S1io68uObIzwvIOg0IF1WiR4jj+F6m4Pqw+Zd+Bvs8HEJ0br7bBtr39YNX1ya0Us="},{"id":"0545bd33-f65c-4e1f-b2cb-04bea825925d","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"开发指南","description":"development-guide","prompt":"创建开发指南,提供代码规范、开发流程和测试策略。包含项目结构说明、命名约定和编码标准。文档化开发环境配置、调试技巧和性能优化方法。提供Git工作流程、分支策略和代码审查指南。包含单元测试、集成测试和端到端测试的实施方法。说明依赖管理、版本控制和发布流程。提供常见开发问题的解决方案和最佳实践。包含团队协作规范和文档维护指南。","order":8,"progress_status":"completed","dependent_files":"frontend/vite.config.js,backend/src/config/env.js,backend/src/config/loadEnv.js,.gitignore,frontend/package.json,backend/package.json","gmt_create":"2026-06-30T14:04:20.639515+08:00","gmt_modified":"2026-06-30T14:13:05.375027+08:00","raw_data":"WikiEncrypted:F3QgleoEfoy16cQggYe9C/ucQxiwh0okVA48AmODs5RKNS8ZgNngqmnHSFcG/1UaJxx+3dUn+EkMTpYUsOg40oH68Nx1IqebKqiC8fCVx8Z5dT3AgUInNoQcVloeb4yQhs1Oufr9wTZo7fZfd2EizXXbLOV05/YLO/Bja3sQV4rbFZH21TOR2bzMC4+Bvh1azFozPC/ma5QkwfbGmawutVaO402XGO+5xnrsGCsVAQr2M8O409R1wh77/5lzca6ZD0OFo1iagqoMSEXyVx6XsW38aoy3TPa93+p8MSYGEXZKUGuo0U8H/GetcXMJ21wi60fPOQhiVg9ePRXxG8wnT9Q0YxxUIb7JWiGkDgtE0n5qcCo7xcA3FzYOZ2CH4OR+2LjRjmTWUU2SbXJ9jXKWnXP8HREN4oERnOXLRcGVAA7zHN3BIkCz7pscIxGQ+sNh+xZdhrgSBP4BqoZEnRQQlyDrqA29kJpJXZs60se4zqy3SRe8xpB8DiB6puJqsECj+osTyJFPENV14Gb/ixpNzHho1UY3Ohpt+Eabp6RG572PwSRkBaegUf5Y5MXeueFRfD4XghD+p9yS8u6aohyV378+hS80kvZnTWd2eiveVL7Q90v5DiOSQLApGbIV2G44IxEw2uIKsuWvffHT8JHO2RxJkitMMfOC+OSLMwph76bCPS+0hYM8kFgEl4xFyTGggt/JE3njsBxW49xeYZfnUYUDndPRxIWDFVT2WqUKup7aZQ4gUFcycaEH97G5lD1JgGQVGN5jGL2XjksL8EL2WrkZkj7Mkwlo03MFQYETI/wPTEqUdcsgFdXOCGMw34z5Pz2VlnNXn3faJcb/EmO700V9FtLl4sedrhQFfq8oyBIwwycQNtQGBdx2pfCJhjeLMKSeQ+BYoUxddVIpPoBdo0d4G4rrlK2BREXPCuyeH4dmB3rCPyTcWheDZtVLdid/MJwCujHV9jJVj3W5UTW5+pwkcBenKNyb/A0yYUqFDaylhA4Ff6dgxMUqeZiNfxGXORFKuNgQwd/4941XXqA/U0pX1uyPm8Z+ydGBmtScMw2cLtmWLFtUYA04OsqUWVaaX63Dvyr0OuohK8gSIX2m89KrHPV5hcCaH32WycKCi3zgSG+RfFLX9+I+LG0YQ2dcyRU5VVK4h1mkv4MRIqphyEjifJBweXHgmS8nP8kbRuPQfeM++y+1VPvUYwiTlHK48YW/H0Q/FLkXfQA6l3gVZA2jHJ5zPTJcbfY+3fRJr2g="}],"wiki_items":[{"catalog_id":"de69fb0c-330e-4831-813d-94fb958688da","title":"快速开始","description":"getting-started","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"817d80e4-81ba-4f8a-b0e2-85e99d8a73ef","gmt_create":"2026-06-30T14:07:37.609842+08:00","gmt_modified":"2026-06-30T14:07:37.615532+08:00"},{"catalog_id":"70ba09ee-60a3-41f9-bdda-3cb904cb26de","title":"系统架构","description":"architecture-design","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"2b5fd78d-2407-4ccc-8807-9bb05c0a687e","gmt_create":"2026-06-30T14:08:09.125669+08:00","gmt_modified":"2026-06-30T14:08:09.130252+08:00"},{"catalog_id":"dd61923f-65f8-4e98-85f4-0e0a0a649a27","title":"项目概述","description":"project-overview","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"190d3cad-a28e-4cf2-a8c7-64d953415cca","gmt_create":"2026-06-30T14:09:11.170718+08:00","gmt_modified":"2026-06-30T14:09:11.17433+08:00"},{"catalog_id":"7e9246a0-207e-47e8-bc26-b9d36ae6f2f8","title":"后端API文档","description":"backend-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"1f4b6f57-25c5-444e-a943-d162d896dc21","gmt_create":"2026-06-30T14:10:41.226897+08:00","gmt_modified":"2026-06-30T14:10:41.230722+08:00"},{"catalog_id":"0bb34dac-0e1a-4cce-b41d-0194eda77f79","title":"数据库设计","description":"database-schema","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"4553d9a4-e0e6-4bc3-b285-ecc6df9dc822","gmt_create":"2026-06-30T14:10:45.945099+08:00","gmt_modified":"2026-06-30T14:10:45.95039+08:00"},{"catalog_id":"aa2583bf-2c6e-4792-b794-1563db547d08","title":"前端组件","description":"frontend-components","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"ed153077-3827-4586-8838-812707189c14","gmt_create":"2026-06-30T14:11:17.426266+08:00","gmt_modified":"2026-06-30T14:11:17.430273+08:00"},{"catalog_id":"a3ddc4e4-116f-4781-ba9f-17c85c85396e","title":"部署与运维","description":"deployment-operations","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"c45b2f5f-49f8-4c8d-b489-44b4c6800e99","gmt_create":"2026-06-30T14:12:37.804986+08:00","gmt_modified":"2026-06-30T14:12:37.808728+08:00"},{"catalog_id":"08dd4c40-3fd3-476c-bcca-4c8687a8d863","title":"核心功能模块","description":"core-features","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"d4cb0c3c-97e9-449f-8918-f1c01e7e3561","gmt_create":"2026-06-30T14:13:04.754131+08:00","gmt_modified":"2026-06-30T14:13:04.758965+08:00"},{"catalog_id":"0545bd33-f65c-4e1f-b2cb-04bea825925d","title":"开发指南","description":"development-guide","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"d7d400d2-aa83-47a2-b61a-55a62369b426","gmt_create":"2026-06-30T14:13:05.373036+08:00","gmt_modified":"2026-06-30T14:13:05.375096+08:00"},{"catalog_id":"bcc45977-c058-4033-b0b1-9fd4cd7f4443","title":"前端架构","description":"frontend-architecture","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"6b28e060-0be3-411e-8a94-3777d165d10e","gmt_create":"2026-06-30T14:14:52.873609+08:00","gmt_modified":"2026-06-30T14:14:52.878043+08:00"},{"catalog_id":"0f657e8b-77cb-4604-81cd-d3e921d28e21","title":"布局组件","description":"layout-components","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"b6857b45-a960-4168-92dd-1edcf6567e47","gmt_create":"2026-06-30T14:15:24.293181+08:00","gmt_modified":"2026-06-30T14:15:24.2965+08:00"},{"catalog_id":"d34906db-4455-4481-9512-b29115655378","title":"认证系统API","description":"auth-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"7f894188-cf72-40a2-af95-f13ef3dd1f6e","gmt_create":"2026-06-30T14:15:47.975759+08:00","gmt_modified":"2026-06-30T14:15:47.98224+08:00"},{"catalog_id":"7f36202b-af69-4fc0-b62b-a57e415deb69","title":"部署指南","description":"deployment-guide","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"5ab55e3b-04bc-4e92-93f7-52bec7ad8dde","gmt_create":"2026-06-30T14:16:33.823992+08:00","gmt_modified":"2026-06-30T14:16:33.828188+08:00"},{"catalog_id":"1af0f0e8-0c53-41d7-a894-47d9cc19d4f9","title":"用户认证系统","description":"authentication-system","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"772c69b5-886e-48f6-bd11-faf8ca2155e8","gmt_create":"2026-06-30T14:17:38.562007+08:00","gmt_modified":"2026-06-30T14:17:38.563255+08:00"},{"catalog_id":"dbe5d77f-6f4d-476c-88cf-797b80a11a11","title":"实体关系设计","description":"entity-relationships","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"0efcac71-9db4-49c9-a660-690dcb97cd54","gmt_create":"2026-06-30T14:18:01.58459+08:00","gmt_modified":"2026-06-30T14:18:01.58743+08:00"},{"catalog_id":"5a3639b1-98bc-4bc7-a346-91ed56edd2af","title":"后端架构","description":"backend-architecture","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"941d72b1-8daa-4c53-bfeb-9a0b2aa0f43c","gmt_create":"2026-06-30T14:19:05.640846+08:00","gmt_modified":"2026-06-30T14:19:05.643035+08:00"},{"catalog_id":"779d6806-96dc-4c97-8cfb-15a3d7855bd1","title":"品牌管理API","description":"brands-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"b66da3f2-6889-45dc-a824-2591d2f5f0f3","gmt_create":"2026-06-30T14:19:07.598117+08:00","gmt_modified":"2026-06-30T14:19:07.600914+08:00"},{"catalog_id":"eb78ed75-b786-4b43-ba43-58a5ea8a23a6","title":"业务组件","description":"business-components","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"2971fa4f-335a-4294-9668-0967b9047d66","gmt_create":"2026-06-30T14:19:27.851755+08:00","gmt_modified":"2026-06-30T14:19:27.855695+08:00"},{"catalog_id":"f96081f7-f508-41e2-bd45-a5b36a1ea114","title":"环境配置","description":"environment-config","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"62bcda0f-7c78-4109-9649-58bbf9fd68ae","gmt_create":"2026-06-30T14:21:11.821343+08:00","gmt_modified":"2026-06-30T14:21:11.825384+08:00"},{"catalog_id":"1e3d40bc-a833-4f35-891c-9dd96f09a1a3","title":"品牌管理","description":"brand-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"babe3ec0-01cb-43c3-93db-7e59cdccce68","gmt_create":"2026-06-30T14:21:25.618321+08:00","gmt_modified":"2026-06-30T14:21:25.623289+08:00"},{"catalog_id":"92f94141-482e-499c-bbc3-6101e70206ff","title":"品牌模型","description":"brand-model","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"ef11f60f-47aa-41bf-8884-6d51bc9ae8ef","gmt_create":"2026-06-30T14:21:29.093976+08:00","gmt_modified":"2026-06-30T14:21:29.097382+08:00"},{"catalog_id":"94ec54d4-0aa0-4e58-8e63-5ad6ddb6edbe","title":"型号管理API","description":"models-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"799e02d2-8358-41a1-9f8e-114f8ac00eae","gmt_create":"2026-06-30T14:23:05.595716+08:00","gmt_modified":"2026-06-30T14:23:05.599954+08:00"},{"catalog_id":"b47d7f83-5401-4a63-ade2-f087a2f61987","title":"数据流设计","description":"data-flow-design","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"c6f2cb24-ff10-4ae7-87c2-b23b9bbee033","gmt_create":"2026-06-30T14:23:25.129255+08:00","gmt_modified":"2026-06-30T14:23:25.133578+08:00"},{"catalog_id":"f00798b7-c49f-4260-b9c1-d1ee413b030a","title":"页面组件","description":"page-components","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"f0978b42-6f98-470e-922f-22dec2fac24d","gmt_create":"2026-06-30T14:24:27.13852+08:00","gmt_modified":"2026-06-30T14:24:27.143035+08:00"},{"catalog_id":"72a24a80-f221-49da-88a8-83c0f49f4e9d","title":"型号模型","description":"model-model","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"edd1d813-70d4-49de-9f9e-e3ebf7a68678","gmt_create":"2026-06-30T14:24:50.785915+08:00","gmt_modified":"2026-06-30T14:24:50.78921+08:00"},{"catalog_id":"00a9d595-dc79-4ca4-8264-1c3f4a200a28","title":"监控运维","description":"monitoring-operations","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"86f882d7-9e64-4c38-85e7-4782fd55fed2","gmt_create":"2026-06-30T14:25:08.609638+08:00","gmt_modified":"2026-06-30T14:25:08.61406+08:00"},{"catalog_id":"93c96675-6099-4ed5-8f40-6a47b3050712","title":"型号管理","description":"model-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"8d4422fd-bd93-431d-a97c-70b75f370f82","gmt_create":"2026-06-30T14:26:44.041445+08:00","gmt_modified":"2026-06-30T14:26:44.046413+08:00"},{"catalog_id":"41e8823b-fa7a-4a80-809d-cf21088bdba2","title":"OTA固件API","description":"ota-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"be7e1733-8c9e-4849-99b0-bab40fdf271e","gmt_create":"2026-06-30T14:26:52.74545+08:00","gmt_modified":"2026-06-30T14:26:52.749367+08:00"},{"catalog_id":"6cd96b12-bb94-4748-94a8-9ef9bf21aee0","title":"集成模式","description":"integration-patterns","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"4619dc3e-419f-435b-ba7c-e600e188743a","gmt_create":"2026-06-30T14:27:35.804293+08:00","gmt_modified":"2026-06-30T14:27:35.809224+08:00"},{"catalog_id":"02f97459-8352-4fff-9216-8fcabb128d77","title":"故障排除","description":"troubleshooting-faq","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"ff04bd0e-99c4-481c-ac8c-3c1a6cae1fb5","gmt_create":"2026-06-30T14:28:16.984682+08:00","gmt_modified":"2026-06-30T14:28:16.989286+08:00"},{"catalog_id":"92ff3472-40b9-4adf-82b2-faf5a4d4b158","title":"OTA固件模型","description":"ota-model","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"b2376dbd-002b-4469-8e6e-71748e46e7c2","gmt_create":"2026-06-30T14:28:22.047078+08:00","gmt_modified":"2026-06-30T14:28:22.050489+08:00"},{"catalog_id":"6dc54635-13f8-4ae3-b3a7-54c65dea2997","title":"OTA固件管理","description":"ota-firmware-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"da7627b0-17b7-42c7-a029-e357bc889416","gmt_create":"2026-06-30T14:29:32.814324+08:00","gmt_modified":"2026-06-30T14:29:32.817942+08:00"},{"catalog_id":"b4054b83-f0cb-4b7e-9b3d-effc904a5686","title":"用户管理API","description":"users-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"8f464fc9-6537-45fa-a0dd-eacdf742b5a1","gmt_create":"2026-06-30T14:30:22.103174+08:00","gmt_modified":"2026-06-30T14:30:22.110852+08:00"},{"catalog_id":"7a728623-5bd2-48eb-80d9-0f253bc74123","title":"用户模型","description":"user-model","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"b5718a44-f452-496d-83c3-4e89b844c709","gmt_create":"2026-06-30T14:30:58.462691+08:00","gmt_modified":"2026-06-30T14:30:58.467737+08:00"},{"catalog_id":"4d08f4ca-84f9-4f9c-8d9a-0983f78a7005","title":"用户权限管理","description":"user-permission-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"100cbee2-f7a5-4cc9-83a3-900a4aacac7e","gmt_create":"2026-06-30T14:30:59.491588+08:00","gmt_modified":"2026-06-30T14:30:59.497862+08:00"},{"catalog_id":"a6304333-66ad-4b0c-834f-a6a514069e3f","title":"分享码日志API","description":"share-code-logs-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"77bc73e0-8709-4209-96e0-5522f9356b06","gmt_create":"2026-06-30T14:32:03.999307+08:00","gmt_modified":"2026-06-30T14:32:04.003175+08:00"},{"catalog_id":"e1d1f354-edc2-4c91-8d91-63d256dced21","title":"分享码日志模型","description":"share-code-log-model","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"539729a8-aa4b-40c6-bf3b-ec9f467f7717","gmt_create":"2026-06-30T14:32:46.405942+08:00","gmt_modified":"2026-06-30T14:32:46.410705+08:00"},{"catalog_id":"c6207e0a-6059-40f8-a27d-367356363cbf","title":"分享码日志管理","description":"share-code-log-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"cf1f3ceb-e3b1-4d5c-8353-f0ea4345414c","gmt_create":"2026-06-30T14:33:14.023031+08:00","gmt_modified":"2026-06-30T14:33:14.02952+08:00"},{"catalog_id":"8f0760f5-ef8b-43ef-8fd0-7c6d1f693193","title":"侧边栏Logo组件","description":"sidebar-logo-component","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"0e003133-7d1a-4708-8599-fc71707070d6","gmt_create":"2026-06-30T14:34:09.992825+08:00","gmt_modified":"2026-06-30T14:34:09.99631+08:00"},{"catalog_id":"7272429b-c7fb-4bd8-9bd1-0093025d68b4","title":"仪表板API","description":"dashboard-api","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"799ec9fc-088e-456c-8f93-72516adac3ac","gmt_create":"2026-06-30T14:34:26.68183+08:00","gmt_modified":"2026-06-30T14:34:26.686097+08:00"},{"catalog_id":"105cfe1d-aeeb-44c1-ac3b-6550f2c7a307","title":"首页仪表板","description":"home-page","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"ad988472-7d0b-4076-86c8-f14661c5923d","gmt_create":"2026-06-30T14:35:15.427082+08:00","gmt_modified":"2026-06-30T14:35:15.43438+08:00"},{"catalog_id":"727c25ac-db22-4b34-9486-6fd6946f64f3","title":"标签页视图组件","description":"tabs-view-component","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"4b6d6abc-bfd2-48a5-9c5e-de89f278f887","gmt_create":"2026-06-30T14:35:27.880644+08:00","gmt_modified":"2026-06-30T14:35:27.886677+08:00"},{"catalog_id":"c8151791-2f8d-4e1e-8139-b0cf921ef002","title":"登录页面","description":"login-page","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"7eee30c6-7725-456b-8b43-35b5e4df7e99","gmt_create":"2026-06-30T14:36:20.14068+08:00","gmt_modified":"2026-06-30T14:36:20.14737+08:00"},{"catalog_id":"32dbace3-24e6-4a2d-9f87-83f2ec825b71","title":"密码修改对话框","description":"change-password-dialog","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"5b84c784-85d8-46e0-8972-e7816f6bd687","gmt_create":"2026-06-30T14:36:50.047707+08:00","gmt_modified":"2026-06-30T14:36:50.062351+08:00"},{"catalog_id":"af7f747a-9be6-41c3-b091-4ee5901d8cc7","title":"品牌管理页面","description":"brand-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"791c01a2-dea1-407b-948d-3e2da8cbebed","gmt_create":"2026-06-30T14:37:33.758372+08:00","gmt_modified":"2026-06-30T14:37:33.76504+08:00"},{"catalog_id":"748c8db9-9197-4c3b-ae1d-a6e51d058342","title":"型号管理页面","description":"model-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"9f2c6c14-12ae-48cc-a1ee-fe703cd12a1a","gmt_create":"2026-06-30T14:38:54.071337+08:00","gmt_modified":"2026-06-30T14:38:54.075977+08:00"},{"catalog_id":"ff078afb-bb04-4600-b51d-5af48a6a6f06","title":"系统用户管理页面","description":"system-users","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"6003d293-f2aa-4c49-817a-c7fa652890ed","gmt_create":"2026-06-30T14:39:03.424765+08:00","gmt_modified":"2026-06-30T14:39:03.42914+08:00"},{"catalog_id":"f23cd2ae-fcf4-445f-b8e9-b3382f277ae0","title":"OTA固件管理页面","description":"ota-management","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"7d8f2ef6-290d-4952-b59c-a1d95af0d438","gmt_create":"2026-06-30T14:40:01.702004+08:00","gmt_modified":"2026-06-30T14:40:01.705908+08:00"},{"catalog_id":"830433a7-7370-479c-aa05-c21ff47b059e","title":"分享码日志页面","description":"share-code-log","extend":"{}","progress_status":"completed","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","reference_count":0,"id":"73336201-a22f-4329-afc6-40fb5f00f4f1","gmt_create":"2026-06-30T14:40:47.216934+08:00","gmt_modified":"2026-06-30T14:40:47.220483+08:00"}],"wiki_overview":{"content":"\u003cblog\u003e\n\n# 耳机品牌与型号管理平台项目概述\n\n## 1. 项目介绍\n\n### 项目目的\n这是一个基于Vue 3 + Express的耳机品牌与型号管理平台,旨在为音频设备制造商和经销商提供完整的品牌、型号、OTA固件更新以及用户权限管理功能。\n\n### 核心目标\n- 提供统一的品牌和型号数据管理界面\n- 支持OTA固件升级管理和版本控制\n- 实现多用户权限体系和访问控制\n- 提供分享码日志追踪功能\n- 构建现代化的前后端分离架构\n\n### 目标用户\n- 音频设备厂商管理员\n- 技术支持人员\n- 系统维护人员\n\n## 2. 技术架构\n\n### 整体架构设计\n\n```mermaid\ngraph TB\n subgraph \"前端层 (Frontend)\"\n FE_Vue[Vue 3 应用]\n FE_Router[Vue Router]\n FE_API[API 请求封装]\n FE_Components[组件库]\n end\n \n subgraph \"后端层 (Backend)\"\n BE_Express[Express 框架]\n BE_Routes[路由模块]\n BE_Middleware[中间件]\n BE_Services[业务服务]\n end\n \n subgraph \"数据层 (Data Layer)\"\n DB_MySQL[MySQL 数据库]\n DB_Sequelize[Sequelize ORM]\n Cache_Redis[Redis 缓存]\n end\n \n subgraph \"基础设施\"\n Docker[Docker 容器化]\n Nginx[Nginx 反向代理]\n Env[环境配置]\n end\n \n FE_Vue --\u003e FE_Router\n FE_Vue --\u003e FE_API\n FE_API --\u003e BE_Express\n BE_Express --\u003e BE_Routes\n BE_Express --\u003e BE_Middleware\n BE_Routes --\u003e BE_Services\n BE_Services --\u003e DB_Sequelize\n DB_Sequelize --\u003e DB_MySQL\n BE_Services --\u003e Cache_Redis\n BE_Express --\u003e Nginx\n Nginx --\u003e FE_Vue\n Docker --\u003e BE_Express\n Docker --\u003e FE_Vue\n```\n\n### 核心设计模式\n- **MVC架构**: 后端采用经典的模型-视图-控制器模式\n- **分层架构**: 清晰的业务逻辑分层,便于维护和扩展\n- **中间件模式**: 统一的请求处理流程\n- **依赖注入**: 通过模块化设计实现松耦合\n\n## 3. 关键实现\n\n### 主要入口点\n\n#### 后端入口\n- **入口文件**: `backend/src/app.js` - 应用程序主入口,配置中间件、路由和数据库连接\n- **配置文件**: `backend/src/config/database.js` - 数据库连接配置,支持环境变量\n- **路由聚合**: `backend/src/routes/index.js` - 所有路由模块的统一导入和导出\n\n#### 前端入口 \n- **应用入口**: `frontend/src/main.js` - Vue应用初始化,配置Element Plus和路由\n- **应用根组件**: `frontend/src/App.vue` - 根组件模板\n- **路由配置**: `frontend/src/router/index.js` - 路由定义和导航守卫\n\n### 核心模块\n\n#### 数据模型 (Models)\n```mermaid\nerDiagram\n BRAND ||--o{ MODEL : \"包含\"\n MODEL ||--o{ OTA : \"支持\"\n BRAND ||--|| DASHBOARD_USER : \"管理\"\n \n BRAND {\n int id PK\n string name\n }\n \n MODEL {\n int id PK\n int brand_id FK\n string name\n string description\n }\n \n OTA {\n int id PK\n int model_id FK\n string version\n string file_path\n datetime create_time\n }\n \n DASHBOARD_USER {\n int id PK\n string username\n string password_hash\n boolean is_super_admin\n int status\n }\n```\n\n#### API 路由结构\n```mermaid\ngraph TD\n Auth[认证路由] --\u003e Login[用户登录]\n Auth --\u003e Profile[用户信息]\n Auth --\u003e Password[修改密码]\n \n Brands[品牌路由] --\u003e BrandList[品牌列表]\n Brands --\u003e BrandCRUD[品牌增删改查]\n \n Models[型号路由] --\u003e ModelList[型号列表]\n Models --\u003e ModelCRUD[型号增删改查]\n \n OTA[OTA路由] --\u003e OTAList[OTA列表]\n OTA --\u003e OTACRUD[OTA增删改查]\n \n Users[用户路由] --\u003e UserList[用户列表]\n Users --\u003e UserCRUD[用户增删改查]\n \n Dashboard[仪表板路由] --\u003e Stats[统计信息]\n Dashboard --\u003e Reports[报表生成]\n```\n\n### 配置管理\n\n#### 环境配置\n- **Docker Compose**: `docker-compose.yml` - 容器化部署配置,包含前后端服务和网络设置\n- **开发配置**: `frontend/vite.config.js` - Vite构建工具配置,支持代理和别名\n- **包管理**: 使用pnpm作为包管理器,支持工作空间\n\n#### 数据库配置\n- **ORM配置**: `backend/src/config/database.js` - Sequelize ORM配置\n- **Redis缓存**: `backend/src/config/redis.js` - Redis连接配置\n- **日志系统**: `backend/src/config/logger.js` - Winston日志配置\n\n### 外部依赖\n\n#### 后端依赖\n```mermaid\ngraph LR\n Express[Express 4.21] --\u003e Middleware[中间件生态]\n Sequelize[Sequelize 6.37] --\u003e MySQL[MySQL2 3.11]\n JWT[jsonwebtoken 9.0] --\u003e Auth[认证系统]\n Axios[Axios 1.7] --\u003e HTTP[HTTP客户端]\n Zod[3.23] --\u003e Validation[数据验证]\n AWS[aws-sdk 3.650] --\u003e S3[对象存储]\n Redis[ioredis 5.6] --\u003e Cache[缓存系统]\n```\n\n#### 前端依赖\n```mermaid\ngraph LR\n Vue[Vu3 3.3.4] --\u003e Composition[组合式API]\n Router[Vue Router 4.2.4] --\u003e Navigation[路由导航]\n ElementPlus[Element Plus 2.3.14] --\u003e UI[UI组件库]\n Axios[Axios 1.5.0] --\u003e HTTP[HTTP通信]\n Icons[图标库] --\u003e Components[图标组件]\n```\n\n### 集成点\n\n#### API 接口设计\n```mermaid\nsequenceDiagram\n participant Client as 前端客户端\n participant Auth as 认证接口\n participant User as 用户接口\n participant Data as 数据接口\n \n Client-\u003e\u003e+Auth: POST /api/auth/login\n Auth--\u003e\u003e-Client: 返回JWT令牌\n \n Client-\u003e\u003e+User: GET /api/auth/me\n User--\u003e\u003e-Client: 返回用户信息\n \n Client-\u003e\u003e+Data: GET /api/brands\n Data--\u003e\u003e-Client: 返回品牌数据\n \n Client-\u003e\u003e+Data: POST /api/models\n Data--\u003e\u003e-Client: 返回创建结果\n```\n\n## 4. 核心功能\n\n### 功能概览\n\n#### 用户认证系统\n- **登录认证**: 基于JWT的无状态认证\n- **权限控制**: 支持超级管理员和普通用户的权限区分\n- **密码安全**: 密码哈希存储和验证\n\n#### 品牌管理系统\n- **品牌维护**: 品牌的增删改查操作\n- **品牌关联**: 与型号的多对一关系管理\n- **数据验证**: 基于Zod的输入验证\n\n#### 型号管理功能\n- **型号列表**: 支持分页和搜索\n- **型号详情**: 包含详细的技术规格\n- **OTA关联**: 与固件更新的关联管理\n\n#### OTA固件管理\n- **版本控制**: 固件版本管理和发布\n- **文件上传**: 支持固件文件的上传和存储\n- **更新推送**: 向设备推送固件更新\n\n### 功能架构图\n\n```mermaid\nstateDiagram-v2\n [*] --\u003e 未登录\n 未登录 --\u003e 登录中: 用户输入凭据\n 登录中 --\u003e 已登录: 认证成功\n 登录中 --\u003e 未登录: 认证失败\n \n 已登录 --\u003e 品牌管理: 管理员权限\n 已登录 --\u003e 型号管理: 普通用户权限\n 已登录 --\u003e OTA管理: 技术支持权限\n \n 品牌管理 --\u003e 数据库操作: CRUD操作\n 型号管理 --\u003e 数据库操作: CRUD操作\n OTA管理 --\u003e 文件上传: 固件上传\n \n 已登录 --\u003e 修改密码: 用户操作\n 修改密码 --\u003e 已登录: 更新成功\n \n 已登录 --\u003e 退出登录: 用户操作\n 退出登录 --\u003e 未登录: 清除会话\n```\n\n### 实现亮点\n\n#### 响应式设计\n- **组件化开发**: 基于Vue 3 Composition API的组件化架构\n- **状态管理**: 结合Vue Router实现的单页应用体验\n- **主题系统**: 支持暗色主题切换\n\n#### 开发体验\n- **热重载**: Vite提供的快速开发服务器\n- **TypeScript支持**: 良好的类型安全保障\n- **代码分割**: 按需加载优化性能\n\n#### 生产部署\n- **容器化**: Docker支持一键部署\n- **反向代理**: Nginx配置优化静态资源服务\n- **环境隔离**: 支持开发、测试、生产多环境配置\n\n## 5. 总结与建议\n\n### 项目优势\n1. **架构清晰**: 前后端分离,职责明确\n2. **技术栈现代**: Vue 3 + Express + MySQL的成熟技术组合\n3. **可扩展性强**: 模块化设计便于功能扩展\n4. **部署友好**: Docker化部署简化运维\n\n### 改进建议\n1. **增加单元测试**: 补充前端和后端的测试覆盖率\n2. **完善文档**: 添加详细的API文档和开发指南\n3. **监控告警**: 集成应用性能监控和错误追踪\n4. **安全加固**: 增强CSRF防护和API限流机制\n\n### 下一步计划\n1. 实现完整的用户权限管理\n2. 添加数据导入导出功能\n3. 优化移动端适配\n4. 集成自动化测试和CI/CD流水线\n\n---\n\n**Sources:**\n- [README.md](README.md)\n- [backend/package.json](backend/package.json)\n- [frontend/package.json](frontend/package.json)\n- [backend/src/app.js](backend/src/app.js)\n- [backend/src/config/database.js](backend/src/config/database.js)\n- [backend/src/models/index.js](backend/src/models/index.js)\n- [backend/src/routes/index.js](backend/src/routes/index.js)\n- [frontend/src/main.js](frontend/src/main.js)\n- [frontend/src/App.vue](frontend/src/App.vue)\n- [docker-compose.yml](docker-compose.yml)\n- [frontend/vite.config.js](frontend/vite.config.js)\n- [backend/src/models/Brand.js](backend/src/models/Brand.js)\n- [backend/src/routes/auth.js](backend/src/routes/auth.js)\n- [frontend/src/router/index.js](frontend/src/router/index.js)\n- [frontend/src/api/auth.js](frontend/src/api/auth.js)\n\n\u003c/blog\u003e","gmt_create":"2026-06-30T14:01:22.420851+08:00","gmt_modified":"2026-06-30T14:01:22.420851+08:00","id":"f0295b72-1b14-4146-868c-8a0c307045c3","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414"},"wiki_readme":{"content":"No readme file","gmt_create":"2026-06-30T13:59:47.635503+08:00","gmt_modified":"2026-06-30T13:59:47.635503+08:00","id":"60f4194d-74f4-49d9-ae65-220e9f5829cc","repo_id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414"},"wiki_repo":{"id":"8836b2d0-e4ff-4f3c-b5c9-e5b0659fd414","name":"dashboard","progress_status":"completed","wiki_present_status":"COMPLETED","optimized_catalog":"\".\\n├── .pnpm-store/v11/\\n│ ├── files/\\n│ │ ├── 00/\\n│ │ ├── 01/\\n│ │ ├── 02/\\n│ │ ├── 03/\\n│ │ ├── 04/\\n│ │ ├── 05/\\n│ │ ├── 06/\\n│ │ ├── 07/\\n│ │ ├── 08/\\n│ │ ├── 09/\\n│ │ ├── 0a/\\n│ │ ├── 0b/\\n│ │ ├── 0c/\\n│ │ ├── 0d/\\n│ │ ├── 0e/\\n│ │ ├── 0f/\\n│ │ ├── 10/\\n│ │ ├── 11/\\n│ │ ├── 12/\\n│ │ ├── 13/\\n│ │ ├── 14/\\n│ │ ├── 15/\\n│ │ ├── 16/\\n│ │ ├── 17/\\n│ │ ├── 18/\\n│ │ ├── 19/\\n│ │ ├── 1a/\\n│ │ ├── 1b/\\n│ │ ├── 1c/\\n│ │ ├── 1d/\\n│ │ ├── 1e/\\n│ │ ├── 1f/\\n│ │ ├── 20/\\n│ │ ├── 21/\\n│ │ ├── 22/\\n│ │ ├── 23/\\n│ │ ├── 24/\\n│ │ ├── 25/\\n│ │ ├── 26/\\n│ │ ├── 27/\\n│ │ ├── 28/\\n│ │ ├── 29/\\n│ │ ├── 2a/\\n│ │ ├── 2b/\\n│ │ ├── 2c/\\n│ │ ├── 2d/\\n│ │ ├── 2e/\\n│ │ ├── 2f/\\n│ │ ├── 30/\\n│ │ ├── 31/\\n│ │ ├── 32/\\n│ │ ├── 33/\\n│ │ ├── 34/\\n│ │ ├── 35/\\n│ │ ├── 36/\\n│ │ ├── 37/\\n│ │ ├── 38/\\n│ │ ├── 39/\\n│ │ ├── 3a/\\n│ │ ├── 3b/\\n│ │ ├── 3c/\\n│ │ ├── 3d/\\n│ │ ├── 3e/\\n│ │ ├── 3f/\\n│ │ ├── 40/\\n│ │ ├── 41/\\n│ │ ├── 42/\\n│ │ ├── 43/\\n│ │ ├── 44/\\n│ │ ├── 45/\\n│ │ ├── 46/\\n│ │ ├── 47/\\n│ │ ├── 48/\\n│ │ ├── 49/\\n│ │ ├── 4a/\\n│ │ ├── 4b/\\n│ │ ├── 4c/\\n│ │ ├── 4d/\\n│ │ ├── 4e/\\n│ │ ├── 4f/\\n│ │ ├── 50/\\n│ │ ├── 51/\\n│ │ ├── 52/\\n│ │ ├── 53/\\n│ │ ├── 54/\\n│ │ ├── 55/\\n│ │ ├── 56/\\n│ │ ├── 57/\\n│ │ ├── 58/\\n│ │ ├── 59/\\n│ │ ├── 5a/\\n│ │ ├── 5b/\\n│ │ ├── 5c/\\n│ │ ├── 5d/\\n│ │ ├── 5e/\\n│ │ ├── 5f/\\n│ │ ├── 60/\\n│ │ ├── 61/\\n│ │ ├── 62/\\n│ │ ├── 63/\\n│ │ ├── 64/\\n│ │ ├── 65/\\n│ │ ├── 66/\\n│ │ ├── 67/\\n│ │ ├── 68/\\n│ │ ├── 69/\\n│ │ ├── 6a/\\n│ │ ├── 6b/\\n│ │ ├── 6c/\\n│ │ ├── 6d/\\n│ │ ├── 6e/\\n│ │ ├── 6f/\\n│ │ ├── 70/\\n│ │ ├── 71/\\n│ │ ├── 72/\\n│ │ ├── 73/\\n│ │ ├── 74/\\n│ │ ├── 75/\\n│ │ ├── 76/\\n│ │ ├── 77/\\n│ │ ├── 78/\\n│ │ ├── 79/\\n│ │ ├── 7a/\\n│ │ ├── 7b/\\n│ │ ├── 7c/\\n│ │ ├── 7d/\\n│ │ ├── 7e/\\n│ │ ├── 7f/\\n│ │ ├── 80/\\n│ │ ├── 81/\\n│ │ ├── 82/\\n│ │ ├── 83/\\n│ │ ├── 84/\\n│ │ ├── 85/\\n│ │ ├── 86/\\n│ │ ├── 87/\\n│ │ ├── 88/\\n│ │ ├── 89/\\n│ │ ├── 8a/\\n│ │ ├── 8b/\\n│ │ ├── 8c/\\n│ │ ├── 8d/\\n│ │ ├── 8e/\\n│ │ ├── 8f/\\n│ │ ├── 90/\\n│ │ ├── 91/\\n│ │ ├── 92/\\n│ │ ├── 93/\\n│ │ ├── 94/\\n│ │ ├── 95/\\n│ │ ├── 96/\\n│ │ ├── 97/\\n│ │ ├── 98/\\n│ │ ├── 99/\\n│ │ ├── 9a/\\n│ │ ├── 9b/\\n│ │ ├── 9c/\\n│ │ ├── 9d/\\n│ │ ├── 9e/\\n│ │ ├── 9f/\\n│ │ ├── a0/\\n│ │ ├── a1/\\n│ │ ├── a2/\\n│ │ ├── a3/\\n│ │ ├── a4/\\n│ │ ├── a5/\\n│ │ ├── a6/\\n│ │ ├── a7/\\n│ │ ├── a8/\\n│ │ ├── a9/\\n│ │ ├── aa/\\n│ │ ├── ab/\\n│ │ ├── ac/\\n│ │ ├── ad/\\n│ │ ├── ae/\\n│ │ ├── af/\\n│ │ ├── b0/\\n│ │ ├── b1/\\n│ │ ├── b2/\\n│ │ ├── b3/\\n│ │ ├── b4/\\n│ │ ├── b5/\\n│ │ ├── b6/\\n│ │ ├── b7/\\n│ │ ├── b8/\\n│ │ ├── b9/\\n│ │ ├── ba/\\n│ │ ├── bb/\\n│ │ ├── bc/\\n│ │ ├── bd/\\n│ │ ├── be/\\n│ │ ├── bf/\\n│ │ ├── c0/\\n│ │ ├── c1/\\n│ │ ├── c2/\\n│ │ ├── c3/\\n│ │ ├── c4/\\n│ │ ├── c5/\\n│ │ ├── c6/\\n│ │ ├── c7/\\n│ │ ├── c8/\\n│ │ ├── c9/\\n│ │ ├── ca/\\n│ │ ├── cb/\\n│ │ ├── cc/\\n│ │ ├── cd/\\n│ │ ├── ce/\\n│ │ ├── cf/\\n│ │ ├── d0/\\n│ │ ├── d1/\\n│ │ ├── d2/\\n│ │ ├── d3/\\n│ │ ├── d4/\\n│ │ ├── d5/\\n│ │ ├── d6/\\n│ │ ├── d7/\\n│ │ ├── d8/\\n│ │ ├── d9/\\n│ │ ├── da/\\n│ │ ├── db/\\n│ │ ├── dc/\\n│ │ ├── dd/\\n│ │ ├── de/\\n│ │ ├── df/\\n│ │ ├── e0/\\n│ │ ├── e1/\\n│ │ ├── e2/\\n│ │ ├── e3/\\n│ │ ├── e4/\\n│ │ ├── e5/\\n│ │ ├── e6/\\n│ │ ├── e7/\\n│ │ ├── e8/\\n│ │ ├── e9/\\n│ │ ├── ea/\\n│ │ ├── eb/\\n│ │ ├── ec/\\n│ │ ├── ed/\\n│ │ ├── ee/\\n│ │ ├── ef/\\n│ │ ├── f0/\\n│ │ ├── f1/\\n│ │ ├── f2/\\n│ │ ├── f3/\\n│ │ ├── f4/\\n│ │ ├── f5/\\n│ │ ├── f6/\\n│ │ ├── f7/\\n│ │ ├── f8/\\n│ │ ├── f9/\\n│ │ ├── fa/\\n│ │ ├── fb/\\n│ │ ├── fc/\\n│ │ ├── fd/\\n│ │ ├── fe/\\n│ │ └── ff/\\n│ └── projects/7abbab685605e7ae627cb6fc4a2315b1/\\n│ └── package.json\\n├── backend/\\n│ ├── src/\\n│ │ ├── config/\\n│ │ │ ├── database.js\\n│ │ │ ├── env.js\\n│ │ │ ├── loadEnv.js\\n│ │ │ ├── logger.js\\n│ │ │ └── redis.js\\n│ │ ├── middleware/\\n│ │ │ ├── auth.js\\n│ │ │ └── bodyLimit.js\\n│ │ ├── models/\\n│ │ │ ├── Brand.js\\n│ │ │ ├── DashboardUser.js\\n│ │ │ ├── Model.js\\n│ │ │ ├── Ota.js\\n│ │ │ ├── ShareCodeLog.js\\n│ │ │ └── index.js\\n│ │ ├── routes/\\n│ │ │ ├── auth.js\\n│ │ │ ├── brands.js\\n│ │ │ ├── dashboard.js\\n│ │ │ ├── index.js\\n│ │ │ ├── models.js\\n│ │ │ ├── ota.js\\n│ │ │ ├── shareCodeLogs.js\\n│ │ │ └── users.js\\n│ │ ├── services/\\n│ │ │ ├── curveClient.js\\n│ │ │ ├── eqCacheStorage.js\\n│ │ │ ├── measurementStorage.js\\n│ │ │ ├── otaStorage.js\\n│ │ │ └── userBootstrap.js\\n│ │ ├── utils/\\n│ │ │ ├── jwt.js\\n│ │ │ ├── password.js\\n│ │ │ └── response.js\\n│ │ ├── validators/\\n│ │ │ ├── brand.js\\n│ │ │ ├── model.js\\n│ │ │ └── ota.js\\n│ │ └── app.js\\n│ ├── .gitignore\\n│ ├── Dockerfile\\n│ ├── README.md\\n│ ├── package.json\\n│ ├── pnpm-lock.yaml\\n│ ├── restart.sh\\n│ ├── start.sh\\n│ └── stop.sh\\n├── frontend/\\n│ ├── public/\\n│ ├── src/\\n│ │ ├── api/\\n│ │ │ ├── auth.js\\n│ │ │ ├── brand.js\\n│ │ │ ├── dashboard.js\\n│ │ │ ├── model.js\\n│ │ │ ├── ota.js\\n│ │ │ ├── shareCodeLog.js\\n│ │ │ └── user.js\\n│ │ ├── components/\\n│ │ │ ├── ChangePasswordDialog.vue\\n│ │ │ ├── SidebarLogo.vue\\n│ │ │ └── TabsView.vue\\n│ │ ├── layout/\\n│ │ │ └── index.vue\\n│ │ ├── router/\\n│ │ │ └── index.js\\n│ │ ├── styles/\\n│ │ │ └── lux-theme.css\\n│ │ ├── utils/\\n│ │ │ ├── auth.js\\n│ │ │ ├── request.js\\n│ │ │ └── tabs.js\\n│ │ ├── views/\\n│ │ │ ├── brand/\\n│ │ │ │ └── index.vue\\n│ │ │ ├── home/\\n│ │ │ │ └── index.vue\\n│ │ │ ├── login/\\n│ │ │ │ └── index.vue\\n│ │ │ ├── model/\\n│ │ │ │ └── index.vue\\n│ │ │ ├── ota/\\n│ │ │ │ └── index.vue\\n│ │ │ ├── share-code/\\n│ │ │ │ └── log.vue\\n│ │ │ └── system/users/\\n│ │ │ └── index.vue\\n│ │ ├── App.vue\\n│ │ └── main.js\\n│ ├── .gitignore\\n│ ├── Dockerfile\\n│ ├── README.md\\n│ ├── build-and-deploy.bat\\n│ ├── index.html\\n│ ├── install.bat\\n│ ├── nginx.conf\\n│ ├── package-lock.json\\n│ ├── package.json\\n│ ├── pnpm-lock.yaml\\n│ ├── pnpm-workspace.yaml\\n│ ├── start.bat\\n│ └── vite.config.js\\n├── scripts/\\n│ └── upload.sh\\n├── .gitignore\\n├── DEPLOY.md\\n├── README.md\\n└── docker-compose.yml\\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":"cac5bef5a72e08be6a05cd5e918ed34a7f12612a","last_commit_update":"2026-06-30T14:40:47.300586+08:00","gmt_create":"2026-06-02T14:43:54.575428+08:00","gmt_modified":"2026-06-30T14:40:47.300587+08:00","extend_info":"{\"language\":\"zh\",\"active\":true,\"branch\":\"main\",\"shareStatus\":\"\",\"server_error_code\":\"\",\"cosy_version\":\"1.4.0\"}"}} |