com.suibari.nagi.zenkatsu

suibari.com

Documentation

ゼンカツ!の提出。その日のお題に、手持ちの全肯定カード1〜3枚で答える。rkey は themeDate("2026-09-19")なので、repo 側でも1日1本に限られる。所持していない札・クールダウン中の札・当日以外の日付を書いても、AppView が取り込み時に照合して索引しない(ドローと違い、提出は既に所持している札を参照するだけなので照合先がある)。

main record

ゼンカツ!の提出。その日のお題に、手持ちの全肯定カード1〜3枚で答える。rkey は themeDate("2026-09-19")なので、repo 側でも1日1本に限られる。所持していない札・クールダウン中の札・当日以外の日付を書いても、AppView が取り込み時に照合して索引しない(ドローと違い、提出は既に所持している札を参照するだけなので照合先がある)。

Record Key any Any valid record key

Properties

cards array of ref #cardRef Required

出した札。並びは意味を持つ(botたんの総評も順に読む)。同じ札を2枚以上入れることはできない。

maxLength: 3 itemsminLength: 1 items
createdAt string datetime Required

An RFC 3339 formatted timestamp.

themeDate string Required

この提出が答えるお題の日付。JST 4:00 始まりの "YYYY-MM-DD"。rkey と一致していなければならない。

maxLength: 10 bytes
View raw schema
{
  "key": "any",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "themeDate",
      "cards",
      "createdAt"
    ],
    "properties": {
      "cards": {
        "type": "array",
        "items": {
          "ref": "#cardRef",
          "type": "ref"
        },
        "maxLength": 3,
        "minLength": 1,
        "description": "出した札。並びは意味を持つ(botたんの総評も順に読む)。同じ札を2枚以上入れることはできない。"
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      },
      "themeDate": {
        "type": "string",
        "maxLength": 10,
        "description": "この提出が答えるお題の日付。JST 4:00 始まりの \"YYYY-MM-DD\"。rkey と一致していなければならない。"
      }
    }
  },
  "description": "ゼンカツ!の提出。その日のお題に、手持ちの全肯定カード1〜3枚で答える。rkey は themeDate(\"2026-09-19\")なので、repo 側でも1日1本に限られる。所持していない札・クールダウン中の札・当日以外の日付を書いても、AppView が取り込み時に照合して索引しない(ドローと違い、提出は既に所持している札を参照するだけなので照合先がある)。"
}
cardRef object

カードの指定。定義本体は shared-configs の cards_v{volume}.json が真実源で、(volume, id) の組がカードの同一性そのもの。

Properties

id integer Required

段内の通し番号。記念日カードでは 西暦*100 + slot。

minimum: 1
volume integer Required

カード段。0 は記念日カードの段。

minimum: 0
View raw schema
{
  "type": "object",
  "required": [
    "volume",
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "段内の通し番号。記念日カードでは 西暦*100 + slot。"
    },
    "volume": {
      "type": "integer",
      "minimum": 0,
      "description": "カード段。0 は記念日カードの段。"
    }
  },
  "description": "カードの指定。定義本体は shared-configs の cards_v{volume}.json が真実源で、(volume, id) の組がカードの同一性そのもの。"
}

Lexicon Garden

@