Skip to content

Instantly share code, notes, and snippets.

View ivansglazunov's full-sized avatar

Ivan S Glazunov ivansglazunov

View GitHub Profile
@ivansglazunov
ivansglazunov / deep.json
Last active September 28, 2022 13:30
@deep-foundation/tsx
{"package":{"name":"@deep-foundation/tsx","version":"0.0.2"},"data":[{"package":{"dependencyId":0,"containValue":"Symbol"},"id":1},{"package":{"dependencyId":0,"containValue":"Type"},"id":2},{"package":{"dependencyId":0,"containValue":"SyncTextFile"},"id":3},{"package":{"dependencyId":0,"containValue":"Handler"},"id":4},{"package":{"dependencyId":0,"containValue":"dockerSupportsJs"},"id":5},{"package":{"dependencyId":0,"containValue":"HandleUpdate"},"id":6},{"package":{"dependencyId":0,"containValue":"HandleInsert"},"id":7},{"package":{"dependencyId":0,"containValue":"Value"},"id":8},{"package":{"dependencyId":0,"containValue":"String"},"id":9},{"id":"tsxSymbol","type":1,"from":"TSX","to":"TSX","value":{"value":"📑"}},{"id":"TSX","type":2,"value":{"value":"TSX"}},{"id":"compiler","type":3,"value":{"value":"\nasync ({ deep, require, gql, data: { newLink } }) => {\n const ts = require('typescript');\n const { data: [generatedFrom] } = await deep.select({\n type_id: await deep.id('@deep-foundation/core', 'Ge
@ivansglazunov
ivansglazunov / deep.json
Created August 23, 2022 17:57
@deep-foundation/messanger
{}
@ivansglazunov
ivansglazunov / deep.json
Last active November 29, 2022 19:24
@deep-foundation/deepcase
{"package":{"name":"@deep-foundation/deepcase","version":"0.0.0"},"data":[{"package":{"dependencyId":0,"containValue":"SyncTextFile"},"id":1},{"package":{"dependencyId":0,"containValue":"Handler"},"id":2},{"package":{"dependencyId":0,"containValue":"clientSupportsJs"},"id":3},{"package":{"dependencyId":0,"containValue":"HandleClient"},"id":4},{"package":{"dependencyId":1,"containValue":"TSX"},"id":5},{"package":{"dependencyId":0,"containValue":"GeneratedFrom"},"id":6},{"package":{"dependencyId":0,"containValue":"Type"},"id":7},{"package":{"dependencyId":0,"containValue":"Any"},"id":8},{"package":{"dependencyId":0,"containValue":"Query"},"id":9},{"package":{"dependencyId":0,"containValue":"Symbol"},"id":10},{"package":{"dependencyId":0,"containValue":"Join"},"id":11},{"package":{"dependencyId":0,"containValue":"Package"},"id":12},{"package":{"dependencyId":0,"containValue":"PackageQuery"},"id":13},{"package":{"dependencyId":0,"containValue":"Contain"},"id":14},{"id":"stringClientHandlerGenerated","type":1,"val
async ({ data: { newLink: replyLink, triggeredByLinkId }, deep, require }) => {
console.log({triggeredByLinkId})
const startTime = Date.now();
const PACKAGE_NAME = `@deep-foundation/chatgpt-azure`;
const axios = require('axios');
const { Configuration, OpenAIApi } = require('openai');
const chatGPTTypeLinkId = await deep.id(PACKAGE_NAME, 'ChatGPT');
const conversationTypeLinkId = await deep.id(PACKAGE_NAME, 'Conversation');
const apiKeyTypeLinkId = await deep.id('@deep-foundation/openai', 'ApiKey');

Эксперимент по обеспечению FIDE-совместимости Рокировки в Badma

1. Введение: Проблема совместимости с правилами ФИДЕ в chess.js

Изначально мы столкнулись с тем, что используемая библиотека chess.js, хотя и является мощным инструментом для работы с шахматной логикой, не всегда гарантировала стопроцентное следование официальным правилам ФИДЕ. Особенно это касалось сложного механизма рокировки.

Библиотека могла, в некоторых конфигурациях или по умолчанию, допускать рокировку в ситуациях, строго запрещенных правилами ФИДЕ:

  • Рокировка, при которой король начинал движение под шахом.
  • Рокировка, при которой король пересекал поле, находящееся под атакой фигуры противника.