Термины
Слова платформы и что каждое значит. Одно слово — одно понятие.
Введение
Каждый термин употребляется в документации только в установленном значении. Употребление термина в ином значении считается ошибкой документа и подлежит исправлению.
Термин «процесс» без уточнения означает рабочий процесс — личную программу человека. Программа, запущенная в операционной системе, называется OS-процессом. Методы ядра core.process.* работают с OS-процессами, методы функции графа process.* — с рабочими процессами.
1 Продукт
Таблица 1 — Продукт
| Термин | Определение |
|---|---|
| O.G.A.S., платформа | Ядро и функции платформы вместе: то, что запускает модули, передаёт данные и хранит документы |
| Экземпляр | Запущенная платформа со своей папкой данных. На одну папку данных приходится один экземпляр. Повторный запуск мастерской не создаёт второй экземпляр, а передаёт работающему экземпляру просьбу открыть окно |
| Папка данных | Папка, где экземпляр хранит процессы, настройки, прогоны и журналы; по умолчанию core/data, задаётся флагом --data-dir |
| Мастерская | Окно платформы в Windows. В ней добавляют модули, собирают процессы и пульты и пользуются ими. Так же называется раздел создания — левый бар: граф, пульт, модули, журнал программы |
| Раздел бара | Бар по краю мастерской как часть по смыслу: «Мастерская», «Программы», «Платформа». Наверху — логотип раздела, знак без действия (Мастерская, раздел 4) |
| Значок у часов | Значок O.G.A.S. в области уведомлений Windows, рядом с часами на панели задач. Закрытое окно уходит к нему, а платформа работает дальше; щелчок по значку возвращает окно, его меню — «Открыть» и «Выйти» (Мастерская, 2.1) |
| Личная программа | То, что человек собирает в O.G.A.S.: рабочий процесс вместе с его пультом |
| Аналог программы | Программа, собранная на платформе так, чтобы делать то же, что известная существующая программа. Мерило платформы: аналог собирают с наименьшим числом модулей, и место, где без модуля не обошлось, показывает недостающий примитив |
| Хозяин (владелец) | Единственная часть, которая записывает вещь и отвечает за её смысл: документ, настройку, значение, кнопку. Остальные части обращаются к хозяину |
2 Рабочий процесс
Таблица 2 — Рабочий процесс
| Термин | Определение |
|---|---|
| Рабочий процесс, процесс | Личная программа человека: граф, переменные, пульт, настройки процесса, версии модулей. Папка data/processes/<process_id>/ |
| Программа включена | Состояние процесса, в котором он ожидает событий, хранит переменные и держит запущенными модули-службы. Включённую программу не изменяют. Одновременно может быть включено несколько программ |
| Событие | Причина начала прогона: включение программы, элемент пульта, таймер, расписание, вызов из другого процесса, сообщение другой программы, выход модуля-службы. Узел event |
| Переменная | Именованное значение программы, которое сохраняется между прогонами. Переменная с отметкой «помнить» сохраняется и после выключения программы |
| Переменная прогона | Переменная с отметкой scope: "run": у каждого прогона своё значение, от начального, и с прогоном оно уходит; другие прогоны записанного не видят (Программа: граф и запуски, раздел 7) |
| Горячий и холодный вход | Вход, на который пакет приходит по обычному ребру, горячий: пакет запускает узел. Вход, соединённый с переменной или постоянной, холодный: узел его не ожидает и берёт текущее значение в момент выполнения |
| Рамка | Узел, внутри которого на холсте располагаются другие узлы: «Повторять» (repeat) и «Для каждого» (for_each) |
| Граф | Узлы и связи рабочего процесса |
| Узел | Шаг графа. Модульный узел (module) вызывает модуль; остальные — узлы платформы |
| Узел платформы | Узел без прикладного кода: событие (event), переменная (variable), постоянная (constant), запись (write), условие (condition), выбор (choice), переключатель (switch), слияние (merge), взять поле (take), рамки repeat и for_each, вопрос человеку (ask), пауза (wait), сигнал (signal), «Впервые?» (first_time), «Отправить» (send), «Показать» (show), отметка (stamp), отбор (pick), вызов процесса (process) и его результат (result) |
| Примитив | Вид узла, который невозможно собрать из остальных видов или которому нужна неделимость, недоступная составной конструкции. В платформу добавляют только такие виды; остальное собирают подграфом (Программа: граф и запуски, раздел 3, правило 8) |
| Узел отображения | Узел «Показать» (show): показывает человеку то, что пришло на его вход, — на холсте и, привязанный к интерфейсу, в интерфейсе — и пропускает пакет дальше. Часть программы, а не инструмент мастерской (Программа: граф и запуски, 24.3) |
| Уведомление | Зов к человеку: заголовок и текст, несколько секунд или до щелчка. Поверх окна — мастерской или лица программы, — когда человек в нём, а когда окно закрыто, свёрнуто или он в другой программе — в углу экрана. Его подаёт узел «Уведомить» (notify) или сама мастерская — о вопросе и о сбое запуска; оно не хранится (Программа: граф и запуски, 24.6; Мастерская, 2.2) |
| Сокращение | Вид узла, который не вводит нового смысла и оставлен ради читаемости холста: «Выбор», «Переключатель», «Постоянная», вызов процесса и его результат (Программа: граф и запуски, раздел 4) |
| Условие | Узел condition: направляет данные по ветке «да» или «нет» в зависимости от результата проверки из закрытого набора |
| Выбор | Узел choice: направляет данные в один из многих выходов по значению, а при отсутствии совпадения — в выход other |
| Переключатель | Узел switch: выбор, который проверяет не пакет, а переменную. Позволяет человеку одним значением на пульте направлять прогоны по нужной ветке |
| Субъект проверки | Значение, которое проверяют условие и выбор: по умолчанию пакет, а если у узла задана переменная, — её значение (Программа: граф и запуски, раздел 8) |
| Взять поле | Узел take: делает пакетом одно поле пришедшего пакета (Программа: граф и запуски, раздел 21) |
| Отметка | Узел stamp: время начала прогона и номер записи, который не повторяется, — холодный источник, как постоянная (Программа: граф и запуски, раздел 25) |
| Отбор | Узел pick: записи списка, которые проходят проверку, и их число; добавляет найденное к пакету (Программа: граф и запуски, раздел 26) |
| Время (узел) | Узел moment: момент по календарю — от даты пакета или начала прогона через столько-то дней, в такой-то час; добавляет его к пакету. Не часы: при продолжении прогона тот же (Программа: граф и запуски, раздел 27) |
| Шаблон | Узел template: текст, в который подставлены поля пакета, — «{count} дел не сделано»; подставляет, не считает (Программа: граф и запуски, раздел 28) |
| Запись по ключу | Способы put и remove узла «Запись»: заменить, дописать или убрать одну запись списка по значению её поля key (Программа: граф и запуски, раздел 7) |
| Сброс | Способ reset узла «Запись»: переменная получает начальное значение, как при включении программы, а пришедшее не читается; так переменную очищают (Программа: граф и запуски, раздел 7) |
| «Впервые?» | Узел first_time: проверяет, встречалось ли значение раньше, и запоминает его одним неделимым действием (Программа: граф и запуски, раздел 20) |
| Пауза | Узел wait: приостанавливает свою ветку на заданное время по стенным часам; остальные ветки продолжают работу (Программа: граф и запуски, раздел 19) |
| Сигнал | Внешнее сообщение для ожидающей ветки: узел signal ожидает сигнал с заданным именем и, при необходимости, ключом; сигнал посылают модуль — своей программе, другая программа — узлом «Отправить», человек — методом process.signal.send (Программа: граф и запуски, раздел 22) |
| Сообщение программе | Данные, которые одна программа отправляет другой — или себе — узлом «Отправить» (send) под именем: они начинают прогон каждого события получателя source: "message" с этим именем, по его правилу наложения. В отличие от вызова, отправитель не ждёт работы получателя, и получатель работает своей программой (Программа: граф и запуски, раздел 23) |
| Отправить | Узел send: передаёт данные другой программе сообщением или сигналом; выход sent — принято, unsent — не принято, с причиной (Программа: граф и запуски, раздел 23) |
| Вызов процесса | Узел process: другой процесс в роли узла. До прогона разворачивается в граф вызванного процесса; результат вызванного процесса задаёт его узел «Результат» (result) (Программа: граф и запуски, раздел 18) |
| Порт | Именованный вход или выход узла |
| Ребро, связь | Соединение выхода одного узла со входом другого |
| Точка на связи | Место на холсте, через которое связь ведут в обход; смысла не добавляет, данные идут по связи, как без неё (Мастерская, 5.1) |
| Заметка | Текст, который человек пишет на холсте графа к своей программе; ничего не делает и в прогоне не участвует. Вид-сокращение note без портов (Мастерская, 5.1) |
| Группа | Именованный набор узлов, который запускают и останавливают отдельно. Не вид узла, а надстройка над узлами (Программа: граф и запуски, раздел 17). Термин документов и формата: на экране мастерской группа называется собранным узлом, а там, где ясно, о чём речь, — узлом (Мастерская, 5.3) |
| Собранный узел | Название группы на экране мастерской: узел, собранный из других узлов |
| Свёрнутая группа | Группа, нарисованная одним узлом; её содержимое спрятано. Группы вкладываются друг в друга без предела; в прогоне свёртка ничего не меняет (Программа: граф и запуски, 17.1) |
| Лицо группы | Порты и переменные свёрнутой группы, отмеченные человеком у узлов внутри неё. Лицо группы объявляется явно, а не выводится |
| Отметка заранее | Отметка глазом в строке узла или свёрнутой группы верхнего уровня — на лицо группы, которую из них соберут. Собранная группа показывает отмеченное на лице |
| Метка вложения | Знак на ярлычке узла, внутри которого что-то лежит, — группы и рамки с телом (Программа: граф и запуски, раздел 17) |
| Название узла | Слова на шапке узла: свои, данные человеком, или по умолчанию — вид словами, у узла-модуля название модуля. Идентификатором узла не служит (Программа: граф и запуски, раздел 4) |
| Описание узла | Слова человека о том, что узел или группа делает и зачем нужна: обычный текст в несколько строк, поле description. На прогон не влияет; его пишут и читают в панели выбранного, на вкладке «Общая информация», и видят в подсказке шапки (Программа: граф и запуски, раздел 4) |
| Пакет | Порция данных, передаваемая по ребру: JSON и ссылки на файлы результатов. В коде — packet |
| Артефакт | Файл, который модуль создал во время прогона. В пакете передаётся ссылкой artifact_handle, а не содержимым |
| Вид данных | То, чем данные являются для человека: текст, число, да/нет, список, картинка, звук, видео, файл, что угодно. Перечень один на порты, переменные, пульт и холст; отдельный вид — то, что человеку показывают по-своему (Программа: граф и запуски, 24.1) |
| Разветвление (fan-out) | Соединение одного выхода с несколькими входами; все получатели получают один и тот же пакет |
| Слияние (fan-in) | Схождение нескольких источников на одном входе. Выполняется только по явно выбранному правилу слияния |
| Сквозной объект | Объект графа, доступный пульту: событие, переменная, состояние работы, вопрос человеку, включение программы. Объект принадлежит графу; пульт его отображает, изменяет и приводит в действие |
| Пульт | Графический интерфейс рабочего процесса из элементов, прикреплённых к сквозным объектам: разделы, в каждом — лист с элементами. Документ workspace.json |
| Граф интерфейса | Что программа отдаёт интерфейсу и чем это показано, на своём холсте: отражения, графические узлы и строение из них — окна, вкладки, группы, подгруппы. Отдельный граф, который ссылается на рабочий только отражениями (Мастерская, 6.8) |
| Графический узел | Узел графа интерфейса: элемент — кнопка, поле, индикатор и другие из набора элементов пульта — или вместилище: вкладка, группа, подгруппа, окно. У элемента строка на каждую привязку его вида; связь тянут от точки строки к строке отражения (Мастерская, 6.8) |
| Пустой элемент | Графический узел без вида: его сначала привязывают к строке отражения, потом выбирают, каким элементом ему быть, — из видов, возможных для этого объекта (Мастерская, 6.8) |
| Отражение | То, что рабочий граф отдаёт интерфейсу, на графе интерфейса: узел, строки которого — сквозные объекты — узла целиком, входа, выхода, параметра, переменной, лица собранного узла. Берут в интерфейс только нужное, действием «В интерфейс» (Мастерская, 6.4) |
| Не размещённый элемент | Элемент интерфейса, у которого нет места на листе: он есть в графе интерфейса со всеми привязками и видом, на лице программы не виден, а ждёт в колонке шага «Вид» (Мастерская, 6.3) |
| Привязка к краю | То, как элемент держится в окне больше нарисованного листа: слева, справа, по середине или тянется, сверху, снизу, по середине или тянется; строка «Когда окно больше» в панели элемента (Мастерская, 6.3) |
| Шаги программы | Три шага окна графа: «Граф» — рабочий граф, «Граф интерфейса» — свой холст с отражениями и графическими узлами, «Вид» — лист интерфейса; знак шага меняет то, что показывает окно, на месте (Мастерская, 5.4) |
| Вместилище | Узел графа интерфейса, в который складывают элементы и другие вместилища: одна группа на разных уровнях. Показывает то, что в нём лежит, всё сразу — группа и подгруппа — или по одному, с переключателем: у вкладок окна; окно — вместилище верхнего уровня (Мастерская, 6.8; Форматы файлов, раздел 7) |
| Заготовка интерфейса | Вместилище графа интерфейса со всем, что в нём лежит, сохранённое в библиотеке, чтобы поставить его в другую программу. Связей с рабочим графом своей программы не уносит: в другой их тянут заново; поставленная — собственная часть той программы (Мастерская, 6.8) |
| Рабочий граф | Граф рабочего процесса — то, что выполняет прогон. Так его называют рядом с графом интерфейса |
| Элемент пульта | Составная часть пульта из закрытого набора платформы: кнопка, поле, индикатор и другие. Что элемент показывает, принимает и отправляет, задаёт набор; вид элемента заменяем. Элементы делятся на четыре рода: показа, ввода, действия и украшения |
| Лист пульта | Поле вместилища, расставленного рукой, заданных ширины и высоты, на котором у элемента есть место и размер; в описании пульта — лист. Окно показывает лист целиком, увеличивая или уменьшая его. Единица листа — мера места и размера на листе: одна точка окна, когда лист показан в полный размер. Шаг листа — число единиц, на которое встаёт элемент при расстановке и по которому функция пульта ищет ему место (Мастерская, 6.3) |
| Вид элемента | То, как элемент пульта нарисован: встроенный вид набора или свой — из рисунков человека по состояниям элемента. Вид — папка с описанием look.json и рисунками; данные, а не код (Мастерская, 6.5; Форматы файлов, 7.2) |
| Состояние элемента | То, в чём элемент пульта сейчас находится и для чего вид может иметь свой рисунок: кнопка нажата, выключатель включён, запуск идёт. Состояния каждого вида элемента называет набор |
| Тема пульта | Палитра, шрифт, высота букв и скругления одного пульта: закрытый перечень ключей. Ключ, которого пульт не задал, берётся из настроек — раздел «Вид пульта по умолчанию». С оформлением мастерской не смешивается (Мастерская, 6.5) |
| Подложка | Цвет или рисунок под листом раздела пульта |
| Украшение | Элемент пульта, который ничего не показывает и не принимает, а оформляет лист: надпись, рамка, рисунок. К объекту графа не прикреплён |
| Рисунок пульта | Файл изображения в папке процесса, pulpit/images/: его называют подложка раздела и элемент «рисунок». Хозяин — функция пульта (Форматы файлов, 7.2) |
| Лицо программы | Пульт рабочего процесса во всё окно платформы, без каркаса мастерской: так программой пользуются, не открывая мастерскую. Открывается ярлыком программы или действием мастерской (Мастерская, 6.6) |
| Окружение процесса | Одно виртуальное окружение Python (.venv) на все модули рабочего процесса |
| Экспорт процесса | Папка data/exports/<process_id>/ с документами процесса и файлами его модулей, содержащая всё необходимое для переноса процесса в другой экземпляр |
| Поколение документов | Номер согласованного набора файлов процесса. После сбоя принимается только полное поколение |
3 Выполнение
Таблица 3 — Выполнение
| Термин | Определение |
|---|---|
| Прогон (run) | Работа, которую вызвало одно событие: от события до последнего шага, который оно повлекло, run_id. В интерфейсе — «запуск» |
| Правило наложения | Правило, определяющее действие при поступлении события до завершения его предыдущего прогона: постановка в очередь, замена или параллельное выполнение |
| Попытка (attempt) | Часть прогона от запуска или продолжения до остановки. При продолжении после сбоя run_id сохраняется, а attempt_id назначается новый |
| Выполнение (execution) | Один вызов модуля, execution_id. Повтор создаёт новое выполнение |
| Операция | Логический шаг узла в прогоне, operation_id. При повторе шага операция сохраняется |
| Контрольная точка (checkpoint) | Сохранённое состояние прогона: очереди, выполненные шаги, результаты, итог |
| Повтор (retry) | Повторное выполнение шага, завершившегося отказом |
| Продолжение (resume) | Возобновление прогона с контрольной точки после остановки или сбоя |
| Идемпотентный шаг | Шаг, повторное выполнение которого не меняет результата и не создаёт дублей. Отправка письма, как правило, не идемпотентна |
| Выгрузка | Завершение OS-процесса модуля, который в данный момент не работает: после прогона, при выключении программы или когда его ресурс, например видеокарта, нужен другому модулю. Модуль, поддерживающий сохранение, перед выгрузкой сохраняет промежуточное состояние |
| Уборка прогонов | Удаление старых прогонов по настройке graph.runs_keep. Прогон с отметкой «Хранить» при уборке не удаляется |
4 Модули
Таблица 4 — Модули
| Термин | Определение |
|---|---|
| Модуль | Отдельная программа с манифестом. Получает пакеты на вход, отдаёт на выход. Папка modules/<module_id>/ |
| Манифест | Описание модуля в manifest.json: идентификатор, версия, входы, выходы, параметры узла, допустимость повтора, предел времени |
Шаговый модуль (step) |
Модуль, OS-процесс которого существует в течение одного вызова |
Долгий модуль (long) |
Модуль, OS-процесс которого сохраняет состояние между вызовами в пределах прогона |
Модуль-служба (service) |
Модуль, OS-процесс которого запускается при включении программы и работает до её выключения. При каждом поднятии узнаёт узлы своего модуля с их параметрами (configure). Может сам выдавать пакеты — для всех своих узлов или для названного — и тем самым служить источником событий |
| Память узла | Папка state/<имя>/ процесса, куда модуль узла сохраняет промежуточное состояние перед выгрузкой и откуда продолжает после. Принадлежит узлу, а не модулю: у узла своя память, названная его идентификатором, или общая с другими узлами того же модуля, названная полем memory узла. Живёт, пока её называет хотя бы один узел |
| Общая память | Память, которую называют несколько узлов одного модуля полем memory, — например роль «рисование», разнесённая по узлам разных рамок. Названа явно и видна у каждого узла, который её называет |
| Отметка о сохранённом состоянии | Документ рядом с папкой памяти: функция модулей пишет его, когда модуль подтвердил, что сохранил память, и называет в нём модуль, его версию и отпечаток. Узел, чью память поднял модуль с теми же версией и отпечатком, продолжает с сохранённого места |
| Отпечаток модуля | Контрольная сумма sha256 содержимого модуля без окружения, кэшей и ссылок. Позволяет обнаружить изменение файлов модуля |
| Нейросеть | Нейросеть или другие большие данные, которыми пользуются модули разных программ. Лежит одним экземпляром — файлом или папкой в подпапке своего вида в папке нейросетей, или ссылкой на них; модуль берёт нейросеть параметром типа model, а какую — выбирает узел (Модули, раздел 11) |
| Вид нейросети | Подпапка папки нейросетей, названная модулем: checkpoints, loras, voices. Параметр модуля типа model берёт нейросеть одного вида, и узел выбирает среди нейросетей этого вида (Модули, раздел 11) |
| Папка нейросетей | Папка, где лежат нейросети, по подпапке на вид: по умолчанию models/ в папке установки, или другая, названная настройкой modules.models_dir (Модули, раздел 11) |
| OGAS SDK | Набор средств для авторов модулей и функций: обмен по протоколу, чтение шага, ответ, отказ с признаком повтора, слова для человека, память узла, проверка модуля без платформы; договор модуля — его манифест, SDK его выполняет и не порождает. Есть для Python — sdk/python — и для Rust — пакет ogas-module в sdk/rust; функции пользуются ogas-protocol. Руководство — OGAS SDK |
| Подсветка | Настройка поведения текстовой сети: добавка к выходам её слоёв на каждом токене, найденная по написанным человеком образцам ответов. Веса сети не меняются, в разговоре нет ни слова о ней; подбирается под одну сеть и лежит файлом в папке сетей |
5 Устройство
Таблица 5 — Устройство
| Термин | Определение |
|---|---|
| Ядро | Долгоживущий OS-процесс на Rust: замок экземпляра, сокет, пересылка сообщений, запуск OS-процессов, запись документов, журналы ядра. Сведений о предметной области и о других частях не содержит (Правила разработки, 2.6) |
| Функция платформы, функция | OS-процесс платформы, выполняющий одну задачу. Перечень функций — Устройство платформы, таблица 2 |
| Реестр функций | Документ data/functions.json, в котором экземпляр задаёт для своих функций расположение программы, включение и выданные права |
| Описание функции | Документ functions/<id>/function.json в папке самой функции: потребности функции, договор, по которому она обменивается сообщениями, работа вместе с окном и перезапуск. Это свойства функции, а не решение экземпляра, поэтому описание хранится при ней (Правила разработки, 2.10) |
| Необязательная зависимость | Функция из requires описания функции, которая названа также в optional: её договором функция пользуется, пока та доступна, а без неё продолжает работу и сообщает, чего не хватает. Запуск её не ожидает, отказ её не останавливает (Устройство платформы, 3.4.1) |
| Проверка среды | Проверка машины, которую функция объявляет в своём описании (поле checks), а ogas-core doctor выполняет, не зная её смысла: наличие файла или программа с кодом возврата. Смысл итога функция сообщает в своём словаре (Форматы файлов, раздел 3) |
| Handshake | Первое сообщение функции ядру: её идентификатор, возможности и запрашиваемые права. Термин оставлен без перевода, как в коде |
| Право (capability) | Разрешение функции на особые методы ядра. Право process — запуск OS-процессов модулей — есть только у функции модулей |
| Команда, запрос, событие | Команда изменяет состояние, запрос только читает, событие сообщает о том, что уже произошло |
| Договор | Описанный способ общения частей: методы, события, форматы документов (Обмен с ядром, Форматы файлов) |
| Константа договора | Значение, которое части должны понимать одинаково: версия протокола, имя формата, код ошибки, имя метода. В настройки не выносится; объявляется один раз по имени |
| Настраиваемая величина | Значение, которое человек может изменить без правки кода: предел, таймаут, размер, путь, цвет. Хранится в настройках и описывается схемой |
| Фоновая работа | Работа функции, ответа на которую никто не ожидает: выгрузка модулей после прогона, уборка старых прогонов, запись контрольной точки, срабатывание таймера. О сбое фоновой работы функция сообщает событием function.work_failed |
| Проблема | Сгруппированный отказ, требующий внимания человека. Повтор того же отказа увеличивает счётчик, а не создаёт новую запись |
| Уровень настроек | Слой, из которого берётся значение настройки: от умолчания схемы до текущей сессии |
6 Мастерская
Таблица 6 — Мастерская
| Термин | Определение |
|---|---|
| Каркас | Постоянная часть мастерской: марка в левом верхнем углу, полоса сверху, бары по краям и хост |
| Бар | Панель на краю мастерской. Бывает свёрнутой, развёрнутой и с подписями. В словах для человека — «панель» |
| Панель программ | Бар правого края мастерской: категория, которую человек сделал и назвал сам, со значками программ, которые он на неё поставил; щелчок по значку открывает программу. Платформа на панель ничего не ставит (Мастерская, 5.6) |
| Библиотека | Окно мастерской в баре «Платформа»: всё, что у человека есть, — программы, модули, нейросети, заготовки интерфейса, — с созданием, приёмом, передачей и удалением, и где каждое видно: на каких панелях программ, в колонке графа. Она же — набор собранных узлов: собранный узел — программа библиотеки (Мастерская, 5.6) |
| Источник | Место в сети, откуда библиотека находит и скачивает программы, модули и нейросети по команде человека: витрина O.G.A.S. — по умолчанию ogas.space, — Hugging Face или Civitai. Источник — не хранилище платформы: скачанное принимают так же, как принесённое папкой |
| Витрина | Каталог источника O.G.A.S.: документ ogas.catalog/1, где перечислены программы, модули и нейросети с их файлами, размерами и контрольными суммами. Витрину может держать любой сайт; по умолчанию — ogas.space, и её витрина подписана ключом сайта |
| Бар холста | Бар поверх холста окна графа. Их два: бар управления у левого края — команды программы, бар инструментов у правого — инструменты графа и подсветка (Мастерская, 5.4) |
| Хост | Центральная область мастерской, в которой открываются окна |
| Окно на хосте | Окно внутри мастерской: процесс, граф, пульт, настройки, модули, журнал. В верхней части окна находится вкладка с названием и кнопками |
| Колонка слева | Левая часть тела окна на хосте: категории и подкатегории окна |
| Нижний бар | Ряд капсул поверх нижнего края хоста, соответствующих окнам, свёрнутым кнопкой «свернуть». Щелчок по капсуле возвращает окно на хост |
| Панель выбранного | Панель поверх нижней части рабочего поля окна или там, куда её перенёс человек: вкладки о выбранном элементе и крестик «закрыть». Появляется, когда элемент выбран; её переносят за полосу вкладок и растягивают за край (Мастерская, 5.1) |
| Капсула | Скруглённая форма, общая для баров и вкладок окон |
| Журнал программы | Окно на хосте: запуски выбранной программы — каким событием начат, чем кончился, у сбоя причина — и события каждого запуска |
| Журнал платформы | Окно на хосте: события самой платформы — функции, модули, настройки — и проблемы |
| Вид сессии | Состояние мастерской, которое хранится только до её закрытия: свёртка баров и подписи |
7 Профиль и сайт
Таблица 7 — Профиль и сайт
| Термин | Определение |
|---|---|
| Профиль | Человек на сайте платформы ogas.space, каким его знает платформа: имя, о себе, картинка, ссылки на свои места в других сетях. Профилем подписано всё, что платформа отправляет на сайт. На платформе один профиль (Защита, раздел 8) |
| Главный ключ | Секрет профиля. Нужен, только чтобы создать профиль, подключить или отозвать компьютер, изменить или удалить профиль. Платформа его не хранит: он записан кодом восстановления и файлом ключа у человека |
| Код восстановления | Главный ключ, записанный 55 буквами и цифрами группами по пять, чтобы переписать его на бумагу. Тот же ключ, что в файле ключа: потерян файл — вводят код, и профиль тот же |
| Файл ключа | Документ ogas.key/1 с кодом восстановления, по желанию человека — под паролем. Хранится там, где решил человек, а не в папке данных |
| Ключ компьютера | Ключ, которым платформа подписывает посылки. За него поручился главный ключ, и главный ключ назвал его в карточке профиля — без этого его подпись сайт не принимает; «Отозвать все компьютеры, кроме этого» оставляет один, и профиль остаётся |
| Ключ писем | Ключ, которым платформа открывает письма профилю. Выводится из главного ключа, поэтому одинаков на всех компьютерах профиля |
| Посылка | То, что платформа отправляет на ogas.space по команде человека: документ ogas.parcel/1, подписанный профилем, — отзыв, обращение, «Беру», предложенная вещь, сообщение об ошибке, слово автора к ошибке, ответ автора на отзыв, отзыв своей посылки, карточка профиля |
| Отправки | Посылки профиля и что с каждой стало на сайте: ждёт взгляда, на сайте, принята, отклонена |
| Письмо | Запечатанное сообщение, которое сайт держит для одной платформы: ответ на сообщение об ошибке, ошибка в своей вещи целиком, новый отзыв о своей вещи. Открыть его может только ключ писем получателя |
| Ключ сайта | Ключ, которым автор сайта подписывает всё, что платформа читает с ogas.space. Его открытая часть — в платформе; файл, подпись которого не сходится, платформа не принимает |
| Задачка на счёт | Вычисление, которое платформа делает перед отправкой посылки: секунды на одной посылке, дорого на тысячах. Так сайт защищён от потока посылок без регистрации |
| Обращение | Просьба собрать программу на доске обращений ogas.space: что она должна делать, что на входе и на выходе. За обращение берутся отметкой «Беру», сделанное присылают на витрину с его номером |
| Ответ автора | Слово автора вещи витрины под отзывом о ней: его пишет только автор этой вещи из своей платформы, и он стоит под отзывом на сайте после взгляда автора сайта |
| Известная ошибка | Ошибка вещи витрины, которую автор сайта поставил под вещь: что выходит и в какой версии, со словом автора вещи. Решённая показывает версию, где она исправлена |
| Инкогнито | Посылка, на которой сайт не показывает имени профиля. Автор сайта видит, чей это профиль |