eliaskohout and Claude Haiku 4.5
8ab2e4348d
fix: disable strip and check in Alpine package build
...
Build and Publish APK Package / build-apk (amd64, x86_64) (push) Failing after 49s
Build and Publish APK Package / build-apk (arm64, aarch64) (push) Failing after 41s
Build and Publish Arch Package / build-arch (amd64, x86_64) (push) Failing after 1m5s
Build and Push Docker Container / build-and-push (push) Has been cancelled
Build and Publish Arch Package / build-arch (arm64, aarch64) (push) Has been cancelled
Go binaries are already stripped via ldflags, and disable the check
warning since there's no test suite.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-04-02 04:32:04 +02:00
eliaskohout and Claude Opus 4.6
d55d423fea
fix: fix CI workflow failures for Arch and Alpine package builds
...
Build and Publish Arch Package / build-arch (amd64, x86_64) (push) Successful in 1m14s
Build and Publish Arch Package / build-arch (arm64, aarch64) (push) Successful in 1m7s
Build and Push Docker Container / build-and-push (push) Successful in 1m47s
Build and Publish APK Package / build-apk (amd64, x86_64) (push) Failing after 51s
Build and Publish APK Package / build-apk (arm64, aarch64) (push) Successful in 49s
Move checkout before setup-go in Arch workflow so src/go.mod exists,
and remove unsupported --platform container option from Alpine workflow.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-02 04:21:33 +02:00
eliaskohout and Claude Sonnet 4.6
f1f8cb5757
fix: build Arch packages without archlinux container
...
Build and Publish APK Package / build-apk (amd64, x86_64) (push) Failing after 0s
Build and Publish APK Package / build-apk (arm64, aarch64) (push) Failing after 0s
Build and Publish Arch Package / build-arch (amd64, x86_64) (push) Failing after 39s
Build and Publish Arch Package / build-arch (arm64, aarch64) (push) Failing after 24s
Build and Push Docker Container / build-and-push (push) Successful in 1m49s
The Gitea runner is ARM64 and archlinux:latest has no ARM64 image.
Drop the container entirely and build .pkg.tar.zst manually:
cross-compile with Go and assemble the package archive directly,
so no makepkg or Arch Linux toolchain is needed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 04:15:52 +02:00
eliaskohout and Claude Sonnet 4.6
a1104f199f
feat: build APK packages for x86_64 and aarch64
...
Uses a matrix strategy with Go cross-compilation (GOARCH + CARCH)
so both architectures build in the same amd64 container.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 04:13:53 +02:00
eliaskohout and Claude Sonnet 4.6
fa265a1ad1
feat: build Arch packages for x86_64 and aarch64
...
Build and Publish APK Package / build-apk (push) Failing after 42s
Build and Publish Arch Package / build-arch (amd64, x86_64) (push) Failing after 1s
Build and Publish Arch Package / build-arch (arm64, aarch64) (push) Failing after 1s
Build and Push Docker Container / build-and-push (push) Successful in 1m49s
Uses a matrix strategy with Go cross-compilation (GOARCH + CARCH)
so both architectures build in the same amd64 container.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 04:07:11 +02:00
eliaskohout and Claude Sonnet 4.6
76158b46f8
fix: force linux/amd64 platform for Arch container
...
archlinux:latest has no ARM64 image on Docker Hub.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 04:05:59 +02:00
eliaskohout and Claude Sonnet 4.6
bc798f7bf2
feat: add Arch Linux package and CI workflow
...
Build and Publish APK Package / build-apk (push) Failing after 42s
Build and Publish Arch Package / build-arch (push) Failing after 1s
Build and Push Docker Container / build-and-push (push) Successful in 1m48s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 04:00:51 +02:00
eliaskohout
63c33937ee
correct mail in alpine package
2026-04-02 03:46:02 +02:00
eliaskohout
f67526e64a
rename docker image in pipeline
2026-04-02 03:44:15 +02:00
eliaskohout and Claude Sonnet 4.6
9d29f4ad2b
fix: use correct curl flags for Gitea Alpine registry upload
...
Build and Publish APK Package / build-apk (push) Successful in 47s
Build and Push Docker Container / build-and-push (push) Successful in 1m49s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:26:39 +02:00
eliaskohout and Claude Sonnet 4.6
81c63ad05f
fix: run apk update and pre-install build-base before abuild
...
Build and Publish APK Package / build-apk (push) Failing after 46s
Build and Push Docker Container / build-and-push (push) Successful in 1m47s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:20:03 +02:00
eliaskohout and Claude Sonnet 4.6
1438e7b4b9
fix: install nodejs before checkout (required by actions/checkout)
...
Build and Publish APK Package / build-apk (push) Failing after 13s
Build and Push Docker Container / build-and-push (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:18:00 +02:00
eliaskohout and Claude Sonnet 4.6
c94e57d9ba
fix: clean up apk-publish workflow
...
Build and Publish APK Package / build-apk (push) Failing after 2s
Build and Push Docker Container / build-and-push (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:16:29 +02:00
eliaskohout and Claude Sonnet 4.6
53883c04f1
fix: correct Gitea Alpine package registry upload URL
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:15:08 +02:00
eliaskohout and Claude Sonnet 4.6
c12452fff1
fix: use abuild-keygen key for signing instead of mismatched openssl key
...
Build and Publish APK Package / build-apk (push) Successful in 45s
Build and Push Docker Container / build-and-push (push) Successful in 1m48s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:09:59 +02:00
eliaskohout and Claude Sonnet 4.6
4374befa42
refactor: remove AX_DB_PATH env var support from store layer
...
Build and Push Docker Container / build-and-push (push) Has been cancelled
Build and Publish APK Package / build-apk (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 03:07:42 +02:00
eliaskohout
595bb78599
Fix APKBUILD: use direct srcdir path in build function
Build and Publish APK Package / build-apk (push) Failing after 49s
Build and Push Docker Container / build-and-push (push) Successful in 1m49s
2026-04-02 03:03:06 +02:00
eliaskohout
e6a2e01d9d
Fix apk-publish: add build-base dep, net option, and apk update
Build and Publish APK Package / build-apk (push) Failing after 15s
Build and Push Docker Container / build-and-push (push) Successful in 1m48s
2026-04-02 02:58:34 +02:00
eliaskohout
1e6c58a0cb
Fix apk-publish workflow: place source tarball in APKBUILD directory
Build and Publish APK Package / build-apk (push) Failing after 15s
Build and Push Docker Container / build-and-push (push) Has been cancelled
2026-04-02 02:56:54 +02:00
eliaskohout
f11d1d0cac
Fix apk-publish workflow: add git safe.directory config
Build and Publish APK Package / build-apk (push) Failing after 17s
Build and Push Docker Container / build-and-push (push) Successful in 1m47s
2026-04-02 02:54:07 +02:00
eliaskohout
c17952e6ac
Fix apk-publish workflow: create source tarball from local git checkout
Build and Publish APK Package / build-apk (push) Failing after 14s
Build and Push Docker Container / build-and-push (push) Has been cancelled
2026-04-02 02:52:31 +02:00
eliaskohout
aa5f124b5f
Fix apk-publish workflow: run abuild as non-root user
Build and Publish APK Package / build-apk (push) Failing after 17s
Build and Push Docker Container / build-and-push (push) Has been cancelled
2026-04-02 02:50:33 +02:00
eliaskohout
58b8fef731
Fix apk-publish workflow: add nodejs dependency and use dynamic home path
Build and Publish APK Package / build-apk (push) Failing after 14s
Build and Push Docker Container / build-and-push (push) Successful in 1m47s
2026-04-02 02:46:43 +02:00
eliaskohout
cac3221bbf
Add Alpine APK packaging and update CI for versioned releases
Build and Publish APK Package / build-apk (push) Failing after 18s
Build and Push Docker Container / build-and-push (push) Successful in 1m48s
2026-04-02 02:41:47 +02:00
eliaskohout
64d4a9fe90
rename ax server docker file
Build and Push Docker Container / build-and-push (push) Successful in 1m47s
2026-04-02 02:36:54 +02:00
eliaskohout
4461c4fcff
add docker build pipeline
Build and Push Docker Container / build-and-push (push) Successful in 4m38s
2026-04-02 02:28:19 +02:00
eliaskohout
252503a572
refactor: move e2e tests into src/e2e directory
2026-04-02 02:23:00 +02:00
eliaskohout
6821112c8f
refactor: remove AX_DB_PATH env var, fix Dockerfile for src/ layout
2026-04-02 02:19:48 +02:00
eliaskohout and Claude Sonnet 4.6
921f4913f8
fix: correct GetProperty bug, init to use .ax/, add default aliases, split e2e tests, add due date tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 01:58:48 +02:00
eliaskohout and Claude Sonnet 4.6
5969a2591c
feat: reduce default node ID length to 3 and auto-grow when exhausted
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 01:21:00 +02:00
eliaskohout and Claude Sonnet 4.6
2a48ea046b
fix: invert FindAndOpenSQLiteStore existence check
...
The condition was backwards — it exited with "database already exists"
when the file was found, and tried to open it when it did not exist.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 01:09:38 +02:00
eliaskohout and Claude Sonnet 4.6
51341eeb84
refactor: remove service factory wrappers, call store init methods directly
...
Replace InitNodeService/GetNodeService/GetNodeServiceForUser with thin
NewLocalNodeService/NewRemoteNodeService constructors; move wiring logic
into cmd/root.go (getNodeService helper) and an inline closure in serve.go.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 00:56:45 +02:00
eliaskohout
03a896d23f
refactor: consolidate packages - move output to cmd, config/session to store, rename Store to GraphStore
2026-04-02 00:42:55 +02:00
eliaskohout
2bcc310c6d
move funcs from cmd/rel.go to cmd/root.go
2026-04-01 22:39:44 +02:00
eliaskohout
706baf81aa
add gitignore
2026-04-01 22:30:01 +02:00
eliaskohout
e42397cc7a
move src file to seperate direcotry
2026-04-01 22:29:20 +02:00
eliaskohout and Claude Sonnet 4.6
228cefb921
feat: replace namespace permissions with per-node graph permission model (can_read/can_create_rel/can_write/has_ownership)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-01 22:11:15 +02:00
eliaskohout
52a975b66d
feat: add OIDC authentication for server mode
2026-04-01 19:33:15 +02:00
eliaskohout
7bce56384f
add dockerfiler
2026-04-01 15:12:00 +02:00
eliaskohout and Claude Sonnet 4.6
7292751ef7
feat: add remote NodeService client backed by the HTTP API
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-01 13:18:31 +02:00
eliaskohout and Claude Sonnet 4.6
3dfc46c3ff
feat: add ax serve command with JSON API backed by NodeService
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-01 13:04:29 +02:00
eliaskohout and Claude Sonnet 4.6
9e5194893e
fix: bootstrap namespace self-ref and write access when created explicitly via --type namespace
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-01 12:55:21 +02:00
eliaskohout
6288879468
refactor: unify tags and edges into single rels table
2026-04-01 12:50:45 +02:00
eliaskohout
27c72db042
clean up node.go
2026-04-01 00:39:20 +02:00
eliaskohout
77d3205e12
refactor: simplify Node struct with public Tags/Relations fields
2026-04-01 00:13:43 +02:00
eliaskohout
4020e5dab3
feat: add namespace-based access control with read/write permissions
2026-03-31 23:52:24 +02:00
eliaskohout and Claude Sonnet 4.6
4a2e868150
refactor: bind NodeService to a user and expose User() on the interface
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 23:18:36 +02:00
eliaskohout and Claude Sonnet 4.6
cb16bda200
refactor: simplify service interface to use tags/rels for all node properties
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 23:10:56 +02:00
eliaskohout and Claude Sonnet 4.6
4404518f50
test: add e2e test suite and fix namespace/mention/assignee flags
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 22:36:49 +02:00
eliaskohout
8d831d131b
refactor: clean up NodeService interface; move all integrity logic behind it
2026-03-31 15:55:47 +02:00
eliaskohout
ed9117951f
refactor: introduce store.Store graph interface with SQLite implementation
2026-03-31 15:38:06 +02:00
eliaskohout
d569a4dea9
test: add e2e test suite and fix namespace/mention/assignee flags
2026-03-29 23:56:43 +02:00
eliaskohout
dadd3d9e13
refactor: add tag and relation methods to node to enforce integrity
2026-03-29 23:16:44 +02:00
eliaskohout
4ebcb88628
refactor: remove db package and move database logic to service layer
2026-03-29 21:28:27 +02:00
eliaskohout
6ff013dd2a
refactor: convert inbox command to default alias
2026-03-29 19:56:15 +02:00
eliaskohout
535626d198
feat: rename create and delete commands to add and del
2026-03-29 19:46:43 +02:00
eliaskohout
68f4b67283
fix: properties like type were not correctly replaced when updating a node
2026-03-29 19:27:18 +02:00
eliaskohout
55fd63be15
refactor: remove unused db relational methods
2026-03-29 19:24:06 +02:00
eliaskohout
a04750dd15
refactor: simplify db and cmd flags, reduce code duplication
...
- Abstract property flags into addPropertyFlags in cmd/root.go and apply to commands
- Remove unused GetUserByUsername from db.go (it's redundant with service.resolveUserIDByName)
- Use configured user in WithMentions directly in inbox command
- Refactor resolve methods in node_service_sqlite.go to reduce duplication
2026-03-29 19:22:44 +02:00
eliaskohout
05261522a0
fix: alias argument expansion with flags and spaces
...
Fixes an issue where alias arguments containing spaces or flags were being split incorrectly by using strings.Fields on the substituted command string. Instead, the command string is tokenized first and then substitution happens on each token.
Also disables Cobra flag parsing for aliases dynamically so that arguments and flags correctly cascade down to the target command instead of throwing unknown flag errors.
2026-03-29 19:09:06 +02:00
eliaskohout
13b4c4b651
Fix assignee filter bug in List
2026-03-29 18:58:34 +02:00
eliaskohout
9e8c37564f
switch mentions from _inbox tags to mentions relation
2026-03-29 15:51:46 +02:00
eliaskohout
f907657c6f
switch namespaces from tags to relations with auto-creation
2026-03-28 04:15:36 +01:00
eliaskohout
9b250c20f9
auto-create users on mention and resolve user refs in relationships
2026-03-27 18:11:13 +01:00
eliaskohout
74cc7c104a
use pointers for optional update fields to distinguish empty from unset
2026-03-27 02:42:34 +01:00
eliaskohout
81fb9af5e2
remove unused GetAllUsers function
2026-03-27 02:27:20 +01:00
eliaskohout
b2225cff7b
refactor: replace explicit fields with tag-based property system
2026-03-27 02:11:46 +01:00
eliaskohout
2d4cff717b
init
2026-03-26 12:48:47 +00:00