Представим, что у нас есть некий сайтик httрs://kuvio, где работает модель. Этот сайт могут посещать люди. Они бывают трех типов:
1. Guest
Просто незалогиненный Прохожий. Он может читать публичные резюме (а также публичные файлы к ним) и итоговые оценки, поставленные Аудиторами. Ничего более он не может. Если он хочет поучаствовать в этой движухе, он логинится и превращается в Юзера или (и) Аудитора.
2. User
Чтобы стать Юзером, прохожий должен залогиниться. После этого он получает возможность создать свою Папку файлов (название условное). В свою Папку он может загружать Публичные или Непубличные сущности: Публичные будут видны любым guest, а непубличные — только Аудитором из списка, который он сам себе составил.
Юзер может подгружать свои файлы. Удалять их не может. Где файлы хранятся физически — этот вопрос сейчас нам не важен. Как минимум, один файл должен быть публичным, иначе аккаунт Юзера считается пустым и не отображается в списке Юзеров. Подгружая файлы, Юзер отмечает, делать их публичными или нет.
Какой из публичных файлов CV, а какой приложения и фотки к нему — давайте, хоть об этом у нас не будет голова болеть, пускай Прохожие и Аудиторы разберутся сами.
Файл может быть заменен на новый (мало ли, место работы добавилось в резюме), но тогда ему требуется заново оценка.
Создав Папку файлов (в общем случае 1 файл cv.pdf), Юзер может выбрать из общего списка Аудиторов. Им придет приглашение оценить этого Юзера. Если Аудитор не ответил, его можно удалить. Если ответил оценкой — эта оценка сохранится навсегда, привязанная к хэшу этой папки файлов в том составе, что был при оценке.
3. Auditor
Залогинившись, Прохожий может стать Аудитором (также он может одновременно быть Юзером со своим резюме, запрета нет).
Аудитор заполняет свою Систему оценки. Например:
Моя система оценки:Конфликтность: от -5 до 5
Знание Бейсика: в процентах
Честность: да или нет
Разложение в ряды Фурье: по 12-бальной шкале
Владение картами Таро: от 0 до 666 с шагом 100
Я бы применил ЧатГпт чтобы транслировать из свободной формы, но можно поросить пользователя заполнять это по жесткому формуляру. Главное, чтобы в итоге мы получили такой дизайн для инструмента оценки:
Конфликтность: от -5 до 5
-5Знание Бейсика: в процентах
0%Честность: да или нет
нетРазложение в ряды Фурье: по 12-бальной шкале
1Владение картами Таро: от 0 до 666 с шагом 100
0
Аудитор может поменять систему оценки. На этот случай у нас нет способа отследить, по старой или новой системе был оценен Вася Пупкин (только по дате оценки и дате изменения).
Эти оценки ставит Аудитор для каждого из Юзеров, который его о том попросил (у него очередь просителей). Эти оценки непубличны — они видны только Аудиотору и Юзеру. А отличие от Итоговой оценки.
Итоговая оценка любого Аудитора — число в диапазоне от 0 до 100. Как она берется — для меня пока загадка. Это может считаться автоматически — тупое сложение всех параметров, либо с учетом коэффициентов значимости каждого или еще по какой-то системе (НАДО ПОНЯТЬ). Либо — это просто окончательная оценка, которую ставит Аудитор (но тогда зачем нужны остальные?)
PS: Пион сказала, что у нас Web3, поэтому никакой лички и личной переписки на сайте быть не должно, ибо мы не храним данные. Пусть емайлом общаются. Удивлен, но принял.