"gd" default mapping can't be remapped to anything

I tried kikstater.nvim, default empty config init.lua with only one local keymap = vim.api.nvim_set_keymap.set( "n", "gd", vim.lsp.buf.definition, { silent = true } )
or with

vim.cmd([[
    nnoremap gd :echo 'hello'<CR>

]]) 

If I change mapping to gm instead of gd - all this functions will work.
Also tried this on different nvim versions - 0.6, 0.9.4, 10 latest build

local keymap = vim.api.nvim_set_keymap.set( "n", "gd", vim.lsp.buf.definition, { silent = true } )

There isn’t vim.api.nvim_set_keymap.set function, you probably mean vim.api.nvim_set_keymap.
For LSP needs people usually use vim.api.nvim_buf_set_keymap in on_attach function to map only for buffers with attached LSP clients (vim.api.nvim_set_keymap sets a global mapping, you dont want a global mapping, because you will get an error in buffer with no attached LSP clients to it). And I prefer using vim.keymap.set. It is a replacement for nvim_set_keymap() (vim.keymap.set)

If I change mapping to gm instead of gd - all this functions will work.
Also tried this on different nvim versions - 0.6, 0.9.4, 10 latest build

Don’t know why

If I change mapping to gm instead of gd - all this functions will work

I ran into someone with the same odd behavior. The solution was to examine the maps. To do it, type :nmap gd (n - for normal mode). This will show you what mapping gd has. If it’s not yours, then something else is overriding it.

At first, I didn’t think of it, but it’s the first thing you should do when you’re trying out new keymaps and fixing problems when they happen. You can check other variations of htis command here.