feat: Update AI model, remove contribution documentation, and enhance DM channel naming and message data in the chat store.
This commit is contained in:
@@ -1,44 +0,0 @@
|
|||||||
# 🤝 Contributing to Plexus
|
|
||||||
|
|
||||||
We maintain high standards for code quality and documentation. Please follow this workflow for all contributions.
|
|
||||||
|
|
||||||
## 🔄 Development Workflow
|
|
||||||
|
|
||||||
### 1. Pick a Task
|
|
||||||
Before coding, ensure you are working on an assigned task.
|
|
||||||
- List tasks: `make task-list`
|
|
||||||
- Add a task: `make task-add title="Your Task"`
|
|
||||||
- Mark as in-progress: (Update manually in `tasks/tasks.duckdb` or via CLI if implemented).
|
|
||||||
|
|
||||||
### 2. Implementation
|
|
||||||
- Write clean, modular code.
|
|
||||||
- Follow the existing design patterns (Vue 3 Composition API, Pinia, Socket.io).
|
|
||||||
- Ensure UI changes are mobile-friendly and follow the Discord-inspired aesthetic.
|
|
||||||
|
|
||||||
### 3. Verification
|
|
||||||
Before committing, you **must** verify your changes:
|
|
||||||
- Run linting: `make lint`
|
|
||||||
- Run tests: `make test`
|
|
||||||
- Manual check: Verify the feature in the browser.
|
|
||||||
|
|
||||||
### 4. Commit
|
|
||||||
We use **Husky** and **lint-staged** to enforce quality.
|
|
||||||
- Your commit will fail if linting or tests do not pass.
|
|
||||||
- Use descriptive commit messages (e.g., `feat: add user profiles`, `fix: message alignment`).
|
|
||||||
|
|
||||||
### 5. Documentation
|
|
||||||
If your change affects the architecture, data model, or API:
|
|
||||||
- Update the relevant file in `docs/`.
|
|
||||||
- Ensure the root `README.md` is still accurate.
|
|
||||||
|
|
||||||
### 6. Finalize Task
|
|
||||||
Mark the task as done:
|
|
||||||
- `make task-done id=X`
|
|
||||||
|
|
||||||
## 🛠 Tooling
|
|
||||||
- **Linting**: ESLint for JS/Vue, Ruff for Python.
|
|
||||||
- **Testing**: Mocha for backend integration tests.
|
|
||||||
- **Automation**: Use the `Makefile` for all common operations.
|
|
||||||
|
|
||||||
---
|
|
||||||
Thank you for helping make Plexus better!
|
|
||||||
17
README.md
17
README.md
@@ -48,21 +48,4 @@ make install
|
|||||||
```bash
|
```bash
|
||||||
# Start the dev environment (Docker)
|
# Start the dev environment (Docker)
|
||||||
make dev
|
make dev
|
||||||
|
|
||||||
# Or run locally
|
|
||||||
cd server && npm run dev
|
|
||||||
cd client && npm run dev
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🤝 Contributing
|
|
||||||
|
|
||||||
We follow a strict development workflow. Please read [CONTRIBUTING.md](./CONTRIBUTING.md) before starting.
|
|
||||||
|
|
||||||
1. **Pick a Task**: Use `make task-list` to find something to work on.
|
|
||||||
2. **Code**: Implement your changes.
|
|
||||||
3. **Verify**: Run `make lint test` to ensure quality.
|
|
||||||
4. **Commit**: Pre-commit hooks will automatically run linting and tests.
|
|
||||||
5. **Document**: Update relevant docs if you add new features.
|
|
||||||
|
|
||||||
---
|
|
||||||
Built with ❤️ by the Plexus Team.
|
|
||||||
|
|||||||
@@ -313,11 +313,17 @@ export const useChatStore = defineStore('chat', () => {
|
|||||||
const [addr1, addr2] = [walletAddress.value, targetWallet].sort();
|
const [addr1, addr2] = [walletAddress.value, targetWallet].sort();
|
||||||
const dmChannelId = `dm:${addr1}:${addr2}`;
|
const dmChannelId = `dm:${addr1}:${addr2}`;
|
||||||
|
|
||||||
|
// Find the other user's name
|
||||||
|
const otherUser = users.value.find(u => u.wallet_address === targetWallet);
|
||||||
|
const otherName = otherUser?.username || targetWallet.slice(0, 6) + '...';
|
||||||
|
|
||||||
// Add to channels list if not exists
|
// Add to channels list if not exists
|
||||||
if (!channels.value.find(c => c.id === dmChannelId)) {
|
if (!channels.value.find(c => c.id === dmChannelId)) {
|
||||||
channels.value.push({
|
channels.value.push({
|
||||||
id: dmChannelId,
|
id: dmChannelId,
|
||||||
name: `DM: ${targetWallet.slice(0, 4)}...`
|
name: otherName,
|
||||||
|
isDM: true,
|
||||||
|
targetWallet
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -351,7 +357,9 @@ export const useChatStore = defineStore('chat', () => {
|
|||||||
// Map snake_case to camelCase and set status
|
// Map snake_case to camelCase and set status
|
||||||
messages.value[channelId] = data.map(m => ({
|
messages.value[channelId] = data.map(m => ({
|
||||||
...m,
|
...m,
|
||||||
|
walletAddress: m.wallet_address,
|
||||||
txId: m.tx_id,
|
txId: m.tx_id,
|
||||||
|
channelId: m.channel_id,
|
||||||
status: 'validated' // Messages from DB are confirmed
|
status: 'validated' // Messages from DB are confirmed
|
||||||
}));
|
}));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
|||||||
@@ -629,7 +629,7 @@ app.post('/api/summary', async (req, res) => {
|
|||||||
"X-Title": "Plexus Social"
|
"X-Title": "Plexus Social"
|
||||||
},
|
},
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
"model": "google/learnlm-1.5-pro-experimental:free",
|
"model": "xiaomi/mimo-v2-flash:free",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"role": "system",
|
"role": "system",
|
||||||
|
|||||||
Reference in New Issue
Block a user